Met nieuwe specificatie, voer één applicatie uit op verschillende apparaten

Ruwe paardenkracht is altijd een belangrijke maatstaf geweest voor de prestaties van mobiele apparaten en pc's, maar het is ook belangrijk om te bepalen of applicaties zijn geschreven om alle beschikbare hardwarefuncties te benutten.

Door een nieuwe specificatie die maandag is aangekondigd, wil de Heterogeneous Architecture Architecture (HSA) Foundation een gemeenschappelijk raamwerk bieden waarmee ontwikkelaars een applicatie één keer kunnen schrijven en deze vervolgens kunnen uitvoeren op servers, mobiele apparaten, gameconsoles, apparaten en pc's die op verschillende processors draaien.

De HSA 1.0-specificatie biedt onderliggende richtlijnen, zodat toepassingen ook effectief gebruik kunnen maken van de gezamenlijke rekenkracht van verwerkingseenheden die beschikbaar zijn in computerapparatuur. Het is de eerste specificatie die door de HSA Foundation is uitgebracht sinds de oprichting in 2012.

Het doel van HSA 1.0 is niet alleen ervoor te zorgen dat programma's sneller worden uitgevoerd, maar ook energiezuiniger. Sommige applicaties, zoals grafische software, kunnen veel stroom verbruiken, en een evenwichtige verwerking tussen GPU's, CPU's en gespecialiseerde chips kan de levensduur van de batterij op apparaten helpen verlengen.

Het voordeel is beperkt tot die programma's die zijn geschreven met de HSA 1.0-specificatie en tot de hardware die dit ondersteunt. Het is ook aan de leveranciers van het besturingssysteem om de specificatie te ondersteunen en stuurprogramma's in te bouwen, zodat gecompileerde programma's de hardwarefuncties kunnen benutten.

Hardware op mobiele apparaten en pc's wordt steeds complexer en het wordt voor programmeurs een steeds grotere uitdaging om applicaties voor meerdere apparaten te schrijven. De nieuwe specificatie zou ontwikkelaars in staat stellen applicaties te schrijven die architectuuronafhankelijk zijn, wat betekent dat een enkel programma zal werken op x86- en ARM-CPU's.

Multicore-programmering is ook een uitdaging sinds de dagen van Windows, waarbij de meeste verwerking op of via de CPU plaatsvindt. Maar GPU's worden steeds belangrijker bij het verwerken van video en digitale signaalprocessors voeren taken uit zoals spraakherkenning, audio verwerken en oproepen beantwoorden. De HSA 1.0-specificatie wijst taken automatisch toe aan relevante kernen, waardoor de ontwikkelaars van programmeren voor taakuitvoeringstaken op specifieke kernen worden ontlast.

Er zijn andere open parallelle programmeerstandaarden zoals OpenCL die hetzelfde probleem proberen op te lossen, maar ze worden meestal gebruikt bij supercomputing. Enkele van 's werelds snelste supercomputers maken gebruik van de gezamenlijke rekenkracht van CPU's, GPU's en versnellers voor wetenschappelijke en wiskundige berekeningen. HSA Foundation heeft de wens geuit om OpenCL op te volgen met ondersteuning voor een breder scala aan apparaten.

Enkele grote namen die de nieuwe standaard ondersteunen, zijn AMD, Qualcomm, ARM, Imagination Technologies, MediaTek en Samsung. AMD ontwerpt zijn chips om compatibel te zijn met HSA-standaarden door de wurggreep op CPU's, die doorgaans een grote rol hebben gespeeld bij het plannen van de uitvoering van programma's, te doorbreken en directe toegang te bieden tot geheugen en andere verwerkingskernen. Door het HSA-chipontwerp wil AMD in het bijzonder dat CPU's en GPU's gelijke spelers zijn bij de uitvoering van programma's, met name met meer belang bij afbeeldingen op pc's, mobiele apparaten en supercomputers.

Maar belangrijke bedrijven zoals Intel en Nvidia zijn geen deelnemers aan HSA, wat de adoptie van de specificatie zou kunnen belemmeren. Nvidia's gepatenteerde CUDA-standaard is ontworpen voor zijn Tesla supercomputing grafische chips en Tegra mobiele chips, en Intel levert zijn eigen parallelle programmeersuite voor gebruik met zijn chips. De bedrijven draaien veel op hun eigen programmeerstandaarden, die de verkoop van chips kunnen helpen verbeteren.

HSA 1.0 ondersteunt in eerste instantie populaire programmeertalen zoals Java, C ++, OpenMP, Python en andere. Bedrijven zullen er ook voor moeten zorgen dat hun hardware compatibel is met specificaties. Qualcomm, een van 's werelds grootste leveranciers van mobiele chips, heeft gezegd dat de aangepaste CPU's, Adreno GPU's en digitale signaalprocessors HSA-compatibel zullen zijn. Imagination Technologies, MediaTek en chipontwerper ARM zeiden ook dat ze in de toekomst HSA-compatibiliteit op chips en processorontwerpen zullen brengen.

Andere belangrijke leden van de HSA Foundation zijn Oracle, Sony, LG Electronics, Marvell, Toshiba, Broadcom en Texas Instruments.

Word lid van de Network World-gemeenschappen op Facebook en LinkedIn om commentaar te geven op onderwerpen die voorop staan.