První obrázek reprezentuje současnou situaci. Veškeré výpočty pro grafické jádro jdou skrz službu operačního systému a ovladač, což do běhu programu vnáší latenci. Aplikace běžící na GPU nemůže sama sobě zadat novou práci, nebo zadat práci procesoru – ten je vždy nadřízený a všechna režie jde skrz něj.
A takto vypadá budoucnost. CPU a GPU jsou rovnocenné výpočetní jednotky, aplikace mohou zadávat výpočty oběma a přecházet mezi nimi bez přidané latence. Kromě klasické fronty příkazů pro procesor má totiž každý program k dispozici i frontu příkazů pro grafické jádro. Paměť pro frontu příkazů alokuje procesor a její délka je pevně nastavená (z výkonnostních důvodů). Aplikace mohou do fronty přidávat pakety s fixní délkou 64 bajtů, přičemž některé bajty specifikace nechává rezervované, takže v budoucnu by mohly být použity třeba pro prioritizaci – podobně jako QoS u paketů v protokolu TCP/IP.
Heterogenní fronty staví na tom, že procesor a grafické jádro v APU mají přístup ke sdílené paměti s jedním adresním prostorem. Teoreticky není důvod, proč by to nemohlo fungovat i se samostatnou kartou připojenou přes PCI Express. Latence ale v takovém případě budou neporovnatelně vyšší, takže prakticky asi nebude důvod hQ takto používat.
Bude zajisté trvat léta, než se aplikace využívající heterogenní architektury rozšíří. Proti AMD hraje i skutečnost, že řešení vyžaduje podporu ze stranu operačního systému a zpočátku bude fungování omezeno na Windows. AMD se určitě bude snažit standardizovat hUMA a hQ v rámci HSA Foundation, v níž se angažuje řada významných hráčů – mezi zakládajícími členy jsou ARM Holdings, Imagination Technologies (koupila MIPS), Qualcomm a Mediatek – neméně významní Intel a Nvidia ale nadaci vytrvale bojkotují.
Zdroj: SemiAccurate, The Tech Report