Windows

Consortium neemt maatregelen om multicore-programmeerbarrières te doorbreken

6. Multicore Programming

6. Multicore Programming
Anonim

Programmeren voor multicore-systemen kan complex zijn, dus heeft een brancheconsortium onder leiding van Advanced Micro Devices een stap voorwaarts gezet in zijn doel om ontwikkeling te elimineren uitdagingen zodat toepassingen draagbaar zijn op verschillende apparaten, architecturen en besturingssystemen

De HSA (Heterogeneous System Architecture) Foundation op dinsdag zal naar verwachting een nieuwe uniforme geheugenarchitectuur introduceren genaamd HUMA die verschillende geheugentypes in een systeem toegankelijk maakt voor alle processors. Door barrières te doorbreken die verschillende geheugentypes van elkaar scheiden, hebben ontwikkelaars toegang tot een grotere pool gedeeld geheugen waarin code kan worden uitgevoerd.

De specificatie maakt deel uit van de open-hardwarestandaard van HSA, zodat de uitvoering van programma's gemakkelijk kan worden gedistribueerd naar verwerkingsbronnen op servers, pc's en mobiele apparaten. Het doel van HSA is om een ​​basisinterface te maken rond industriestandaard parallelle programmeertools, zodat code eenmaal voor meerdere apparaten kan worden geschreven en gecompileerd.

Computers en mobiele apparaten combineren tegenwoordig CPU's met veel co-processors om computertaken te versnellen. Sommige van de co-processors bevatten GPU's (grafische verwerkingseenheden), DSP's (digitale signaalprocessors), netwerkprocessors, FPGA's (veldprogrammeerbare poortarrays) en gespecialiseerde ASIC's (toepassingsspecifieke geïntegreerde schakelingen). Sommige van 's werelds snelste computers maken gebruik van de gemeenschappelijke rekenkracht van GPU's en CPU's voor complexe wiskundige berekeningen, terwijl mobiele apparaten meerdere processoren hebben voor grafische afbeeldingen en beveiliging.

Efficiënte verwerking leidt tot betere prestaties van smartphones en tablets en een langere levensduur van de batterij, zei Phil Rogers, corporate fellow bij AMD, tijdens een conference call om de nieuwe specificatie te bespreken.

AMD zal later dit jaar naar verwachting laptop- en desktopprocessors met de codenaam Kaveri vrijgeven, waarin CPU's en grafische processors geheugen kunnen delen. De doelstellingen van de HSA Foundation zijn losjes verbonden met de chipstrategie van AMD, waarin het bedrijf intellectueel eigendom van derden integreert, zodat chips kunnen worden aangepast aan de behoeften van de klant. AMD maakt bijvoorbeeld een aangepaste chip voor de aankomende PlayStation 4-gameconsole van Sony.

HSA wil ook de ontwikkelingskosten verlagen en de noodzaak verminderen om code opnieuw te compileren naar apparaten of chiparchitecturen. Sommige kenmerken van HUMA omvatten dynamische geheugentoewijzing en snelle GPU-toegang tot het systeemgeheugen.

"Elke rekeneenheid … heeft dezelfde prioriteit en gaat allemaal naar hetzelfde geheugen kijken", zegt Jim McGregor, hoofdanalist bij Tirias Research.

HUMA zorgt ervoor dat elke hardware-eenheid toegang heeft tot dezelfde gegevens, dus de informatie hoeft niet te worden gekopieerd naar verschillende geheugentypes. GPU's en CPU's hebben tegenwoordig toegang tot verschillende cache- en geheugentypen en de specificatie zou de traditionele vorm breken waarin CPU's geheugen toewijzen voor code-uitvoering, maar de informatie wordt gekopieerd naar het GPU-geheugen voor uitvoering door de grafische processor.

"De andere een onderdeel is dat het de hardware en ook de software-architectuur verenigt. Als je in C ++ schrijft, kun je zeggen dat ik wil dat de GPU het uitvoert, "zei McGregor.

De specificatie vermindert ook de noodzaak om gegevens tussen het geheugen over te dragen, en dat verlicht knelpuntproblemen, zei McGregor.

AMD's Rogers zei dat de specificatie meerdere opslag- en netwerkinterconnecties herkent, maar niet zegt of het niet-vluchtige opslageenheden aanpakt die geheugen nabootsen. Veel serverinstallaties hebben solid-state schijven als een vorm van cache waarin gegevens worden gekopieerd en tijdelijk worden opgeslagen terwijl een taak wordt uitgevoerd. Facebook heeft het idee geopperd om SSD's te gebruiken als vervanging voor DRAM.

Tot de ondersteuners van HSA Foundation behoren ook ARM, Sony, MediaTek, Qualcomm, Samsung, Texas Instruments, LG Electronics, Imagination Technologies en ST Ericsson. Intel is geen lid van de HSA Foundation en gebruikt zijn eigen co-processors, compilers en programmeerhulpmiddelen om zijn chips te begeleiden.

Het idee van gedeelde geheugenbronnen wordt ook achtervolgd door AMD-rivaal Nvidia, die geen lid is van de HSA Foundation. Nvidia is van plan om volgend jaar een grafische processor te introduceren op basis van de Maxwell-architectuur, die GPU en CPU-geheugen zal verenigen. De GPU's kunnen CPU-geheugen adresseren en vice versa, en toepassingen zullen eenvoudiger kunnen worden geschreven met unified memory-bronnen. Smartphones en tablets kunnen een geïntegreerd geheugen krijgen met Nvidia's aankomende Tegra 5-processor met de codenaam Logan, die een grafische processor heeft die is gebouwd op de Maxwell-architectuur en die ook CUDA ondersteunt, wat Nvidia's eigen set hulpprogramma's voor parallelle programmering is.

HUMA is compatibel met populaire programmeertalen zoals C, C ++ en Python en meerdere besturingssystemen, zei AMD.