AMD a subliniat capacitățile HSA
Ce oferă HSA?
AMD a găzduit încă o dată Fusion Developer Summit, care are loc în prezent la Washington. Evenimentul din acest an, spre deosebire de anul trecut, nu se referă la conturarea planurilor, ci la acțiuni. În ultimul an, AMD a visat interfața Fusion System Architecture (FSA), care poate facilita foarte mult dezvoltarea de software pentru sistemele eterogene programabile; de atunci, sistemului i s-a dat un nou nume, deci anul acesta a fost denumit Arhitectura sistemelor heterogene (HSA). Acest lucru a fost necesar din cauza partenerilor, întrucât toată lumea asociază deja numele Fusion cu AMD, ceea ce ar fi nefavorabil pentru companiile orientate spre marketing în ceea ce privește marketingul.
Evenimentul din acest an a început imediat cu un mare anunț, și anume că AMD a terminat cu specificațiile HSA 1.0, ceea ce înseamnă că sistemul trebuie doar finalizat. Din acest motiv, a fost înființată Fundația HSA, care va supraveghea oficial dezvoltarea ulterioară. Phil Rogers a declarat că AMD a dezvoltat deja proiectul de specificații cu partenerii, astfel încât toți cei implicați sunt mulțumiți de elementele de bază, ceea ce înseamnă că nu există perspective de schimbări majore. Fundația HSA, pe de altă parte, va prelua controlul asupra AMD și va dezvolta în continuare sistemul sub forma unui consorțiu.
Phil Rogers a anunțat, de asemenea, că partenerii AMM și primii sponsori ai Fundației HSA includ ARM, Imagination Technologies, MediaTek și Texas Instruments. Desigur, companiile implicate așteaptă mai mulți solicitanți, iar aceasta include nu numai companiile care proiectează procesoare, GPU-uri sau alte componente hardware, ci și companiile de software care doresc să creeze noi biblioteci sau noi instrumente și pachete de dezvoltare. AMD a pus bazele software-ului, așa că, pe lângă Aparapi și APP, a fost introdus BOLT, o bibliotecă de șabloane standard C ++.
Bineînțeles, se pune întrebarea de ce piața și companiile menționate mai sus au nevoie de HSA. Tom Malloy, inginer software senior la Adobe, a încercat să răspundă la aceasta într-o prezentare nu atât de scurtă. Mulți dezvoltatori abordează probleme care vor fi rezolvate de hardware mai rapid, ceea ce este practic adevărat, dar este posibil să nu fie în forma pe care o așteaptă un programator. În zilele noastre, a ieșit în evidență faptul că dezvoltarea hardware-ului este afectată de limitări fizice din ce în ce mai grave, astfel încât pentru a scala performanța procesoarelor, structura acestora trebuie schimbată. Majoritatea programatorilor, pe de altă parte, preferă comoditatea, deci nu mulți ajung să cunoască hardware complex.
Dezvoltatorii se încadrează astăzi în două categorii principale, conform studiilor de piață de la IDC. Cei mai mulți dintre ei scriu cod doar pe CPU și se nasc multe aplicații. Sunt mai puțini cei care se dezvoltă și la GPU-uri, iar pentru a folosi unele argouri, au fost numiți „programatori ninja” la spectacol, făcând aluzie la dexteritatea lor. Numărul lor este de aproximativ o sută de mii; aproximativ 200 dintre aplicațiile care utilizează puterea GPU sunt disponibile în prezent. Tom Malloy spune că dificultatea este că OpenCL și CUDA, care sunt frecvente în programarea GPU, pot fi considerate o interfață destul de scăzută, iar majorității programatorilor nu le place acest teren. Acest lucru nu se datorează în primul rând faptului că OpenCL și CUDA nu sunt mature sau aplicațiile nu pot fi portate; în OpenCL, de exemplu, acest lucru este foarte bine rezolvat, dar ceea ce este deja o mare problemă este portabilitatea performanței. Aici intervine slăbiciunea OpenCL, deoarece fiecare componentă hardware necesită multă optimizare suplimentară pentru a face programul rapid peste tot. Acesta este unul dintre motivele pentru care compresia accelerată a WinZip 16.5 și calitatea extra a imaginii celei mai recente versiuni de VLC funcționează numai cu driverul AMD OpenCL și numai pe controlerele grafice Radeon.
Concediere
Așadar, OpenCL este o alternativă valoroasă pentru „programatorii ninja”, dar trebuie să vă gândiți la majoritate. Aici vine HSA, care sa născut cu scopul de a face APU la fel de ușor de programat ca CPU. Potrivit lui Tom Malloy, cea mai importantă capacitate din punctul de vedere al programatorilor ar fi un spațiu de adrese unificat, care ar facilita foarte mult portabilitatea performanței și munca dezvoltatorilor.
Avantajele și funcționarea HSA
HSA este bun pentru multe domenii, deoarece face mai ușor să profite de produse care pot fi programate într-un mod eterogen. Pe de o parte, AMD se bazează pe aceasta din punctul de vedere al Aparapi, astfel încât compania are o foaie de parcurs specifică pentru utilizarea HSA și, de fapt, ca punct final, HSA ar face parte în mod specific din Java Virtual Machine (JVM).
În ceea ce privește modelul logic, sistemul este situat între OpenCL, C ++ AMP sau altă interfață și GPU. Se compune din mediul de execuție HSA, în spatele căruia se află așa-numitul finalizator și driverul kernel. Este important să se clarifice faptul că elementele de bază sunt furnizate de un ISA virtual (Instruction Set Architecture) sau arhitectură de instrucțiuni virtuale în limba maghiară, care include un compilator JIT (Just-In-Time). Din codul programului, acesta din urmă generează codul HSAIL, care este în esență o arhitectură de instrucțiuni virtuale. Aceasta se adaugă finalizatorului, care este un compilator secundar care compilează codul de program rezultat în arhitectura de instrucțiuni a hardware-ului fizic, făcând programul executabil.
Avantajele sunt tangibile, ceea ce înseamnă că lucrurile vor fi mai ușoare pentru dezvoltatori. Paralelizarea se face practic de nivelul mediu, iar modelul de memorie este proiectat de AMD pentru a suporta C ++, Java și .NET. Deoarece este o arhitectură de instrucțiuni virtuale, în esență hardware-ul fizic este interschimbabil dedesubt. Cu titlu de exemplu, operația teoretică este foarte asemănătoare cu codul de byt Java, doar AMD a proiectat HSAIL în mod specific centrat pe performanță.
Pentru companiile de asistență, sistemul este, de asemenea, foarte simplu, în practică trebuie doar să furnizați un finalizator adaptat propriului hardware și un driver de kernel, se poate spune că celelalte elemente ale HSA sunt universale.
HSA este, desigur, extensibil, astfel încât membrii fundației pot adăuga extensii specifice care evidențiază beneficiile unei anumite piese hardware. AMD lucrează deja la o serie de extensii, iar dintre acestea, driverul HSA MMU (Memory Management Unit) este deja în curs de finalizare ca parte a recent introdusului APU Trinity. Acest lucru face ca întreaga memorie de sistem să fie disponibilă pentru CPU și IGP.
Phil Rogers a subliniat că lansarea cu adevărat mare va veni doar anul viitor, atunci când un IGP bazat pe arhitectura GCN se mută în APU Kaveri. Aceasta afișează un spațiu de adrese unificat, astfel încât IGP gestionează aceleași indicii pe care CPU și controlerul grafic vor putea accesa spațiul de adrese virtuale al procesorului, evitând copierea consumatoare de timp a datelor. În plus, CPU și IGP partajează memorie complet coerentă. AMD va merge și mai departe în timp, iar într-o dezvoltare ulterioară, IGP va dobândi capabilități multitasking preventive, despre care compania spune că este extrem de importantă, deoarece pe viitor se vor construi mai multe aplicații pe puterea controlerului grafic decât pe nucleele procesorului., deci manevrați bine cu întârziere redusă. În consecință, este introdus și QoS (Quality of Service), care oferă acces neîntrerupt la resursele controlerului grafic pentru aplicațiile care rulează în paralel și pentru cererile utilizatorilor primite în paralel.
Beneficiile practice ale HSA au fost, de asemenea, măsurate de AMD în diferite sarcini. APU-ul mobil A10-4600M Trinity a folosit un algoritm de recunoaștere a feței scris în OpenCL cu HSA care rulează de două ori și jumătate mai rapid și a necesitat de două ori și jumătate mai puțină putere pe cadru. Procedând astfel, compania încearcă să atragă atenția asupra faptului că HSA nu numai că poate fi benefic din punct de vedere al performanței, ci are și un impact pozitiv asupra consumului.
Situația a fost analizată și din punct de vedere al programării. AMD a scris același cod pe mai multe interfețe, astfel încât a fost posibil să se compare câte linii să introducă în fiecare caz. Prima imagine arată că situația este ușoară pe un fir, dar cu mai multe fire, există mai mult de lucru. OpenCL nu este foarte bun în această privință, deși OpenCL 1.2 îmbunătățește oarecum situația, dar C ++ AMP este mai acceptabil. HSA pare a fi cel mai ușor, dar cel puțin foarte asemănător cu munca investită într-un singur fir.
A doua imagine arată performanța, ceea ce arată că OpenCL este cel mai bun din acest punct de vedere, dar dacă ne uităm la rezultat în ceea ce privește munca investită, HSA câștigă competiția cu o.
Deocamdată, HSA poate fi negociat doar din perspectiva AMD, deoarece ceilalți participanți la fundație nu și-au prezentat încă viziunea. Desigur, nu este greu să ne dăm seama de ce vor să profite ARM și Imagination Technologies, deoarece consumul este esențial pe piața produselor ultramobile, iar IGP-urile îndeplinesc sarcini foarte paralelizate într-un mod extrem de eficient din punct de vedere energetic. Texas Instruments este, de asemenea, interesat de această piață și, în plus, platformele OMAP folosesc blocuri hardware proprietare, iar HSA este probabil un avantaj și aici. MediaTek este al doilea cel mai mare jucător de pe piața TV și poate conduce piața cu HSA, iar compania a subliniat deja că va viza în curând și segmentul smartphone-urilor.
Mai târziu, imaginea va fi probabil mai clară și, având cunoștințe despre sistem, există șansa ca mai multe companii să intre, deoarece problemele vor afecta pe toată lumea în mod uniform. NVIDIA este capabilă să dezvolte CUDA în direcția corectă pentru Tegra, dar alți jucători ARM au nevoie de propria lor interfață, care, dacă nu au început să se dezvolte înainte, este singura opțiune evaluabilă pentru a se alătura Fundației HSA, câștigând astfel dreptul la To utilizați HSA.
- Acer Iconia Tab A510 - patru nuclee la prețul a două - Test tableta Mobilarena - Versiune pentru imprimare
- ASUS TUF Gaming RTX 3080 OC a sosit pentru Ampere - PROHARDWARE! Testul plăcii video
- Amazfit Stratos - longevitatea alergătorului pe distanțe lungi - Test accesorii Mobilarena - Versiune pentru imprimare
- Cele patru fețe ale Lenovo ThinkPad T430 - PROHARDWARE! Test de caiet
- Cele patru fețe ale Lenovo ThinkPad T430 - PROHARDWARE! Test de caiet