Graphics Core Next
ハードウェアに実装されているいくつかのHSA固有機能はオペレーティングシステムのカーネルおよび特定のデバイスドライバのサポートを必要とする。例えば、2014年7月にAMDは安定版Linuxカーネル 3.17用にGraphics Core NextベースのRadeonグラフィックスカードをサポートする83個のパッチを公開した。このドライバは "HSAカーネルドライバ" と名付けられ、DRMグラフィックスデバイスドライバが/drivers/gpu/drmに配置されたように/driver/gpu/hsaに配置され、Radeonカード用のDRMドライバを改良したものであった。この初期の実装は "Kaveri" APUまたは "Berlin" APU への対応に重点を置き、すでにあるRadeonカーネルグラフィックスドライバ (kgd) との組み合わせで動作した。
Vega 20を除くすべてのGCN第5世代GPUの倍精度浮動小数点(FP64)性能は、FP32性能の1/16である。Vega 20ではFP32の1/2となっている。すべてのGCN第5世代GPUは、FP32の2倍の性能を持つ半精度浮動小数点(FP16)計算をサポートしている。
Southern Islands系GPU、Radeon HD 7000/HD 8000/Rx 200/Rx 300/Rx 400シリーズでサポート。
CPUおよびGPUの統合型アドレス空間で64ビットアドレス割り当て(x86-64アドレス空間)をサポート PCI-E 3.0をサポート GPUはページフォールトといった様々なイベントでCPUに対して割り込み要求を送る
Partially Resident Texturesをサポート、DirectXおよびOpenGL拡張機能によって仮想メモリのサポートが有効になる
AMD PowerTune(英語版)サポート、特定のTDPの範囲内で動的にパフォーマンスを調整する
Mantle (API)をサポート
Graphics Core Nextマイクロアーキテクチャは4基のTMUと1基のROPからなる64基のシェーダープロセッサをコンピュートユニット (CU) に統合している。計算処理およびディスパッチを制御する非同期コンピュートエンジン (Asynchronous Compute Engine; ACE) がある。
「シェーダー」はグラフィックス処理を行なう小さなプログラムであり、また「カーネル」はGPGPU処理を行なう小さなプログラムである。前者は通例GLSL/HLSLで記述されるが、後者はOpenCL C言語もしくはGLSL/HLSL(コンピュートシェーダー)で記述できる。これらのプロセスはレジスタをあまり必要とせず、システムまたはグラフィックスメモリからのデータの読み込みを必要とする。この操作は大きく遅延が生じる。AMDとNVIDIAは複数のスレッドをグループ化するという方法でこの不可避な遅延を隠蔽するという、よく似たアプローチを選択している。AMDはこのグループをウェーブフロント、NVIDIAはワープと呼んでいる。スレッドのグループは遅延を隠蔽する仕組みを実装するGPUスケジューリングの最も基本的なユニットであり、SIMDスタイルで処理されるデータの最小サイズ、コードの最小実行可能ユニット、同時に全てのスレッドを単一の命令で処理する手段である。
全てのGCN-GPUではウェーブフロントは64スレッドで構成され、全てのNVIDIA GPUではwarpは32スレッドで構成される。