AMD und PathScale treten OpenACC Standards Group bei

Im Rah짯men der gera짯de in New Orleans statt짯fin짯den짯den Super짯com짯pu짯ting Con짯fe짯rence 2014 (SC14) haben AMD und der Com짯pi짯ler-Spe짯zia짯list PathSca짯le ihren Bei짯tritt zur Open짯ACC Stan짯dards Group bekannt짯ge짯ge짯ben. Open짯ACC ist eine im HPC-Umfeld sehr belieb짯te API zur Pro짯gram짯mie짯rung von Clus짯tern und Super짯com짯pu짯tern, die 채hn짯lich wie OpenMP auf Direk짯ti짯ven basiert und urspr체ng짯lich 2011 von CAPS, Cray, NVIDIA und PGI spe짯zi짯ell f체r den Ein짯satz von Beschleu짯ni짯ger짯kar짯ten erschaf짯fen wur짯de. Seit짯her mau짯ser짯te sich die Open짯ACC-API auch durch den Bei짯tritt von immer mehr For짯schungs짯ein짯rich짯tun짯gen und Uni짯ver짯si짯t채짯ten zu einem wich짯ti짯gen Stan짯dard f체r die Pro짯gram짯mie짯rung von H철chst짯leis짯tungs짯rech짯nern. Ent짯wick짯ler k철n짯nen mit Hil짯fe der Direk짯ti짯ven par짯al짯le짯li짯sier짯ba짯re Tei짯le des Quell짯codes f체r den Com짯pi짯ler mar짯kie짯ren, die f체r die Aus짯la짯ge짯rung auf die Beschleu짯ni짯ger geeig짯net sind. Hier짯zu geh철짯ren vor allem Schlei짯fen, bei deren Mar짯kie짯rung auch wei짯te짯re Details defi짯niert wer짯den k철n짯nen, damit die Aus짯f체h짯rung auf spe짯zi짯fi짯schen Beschleu짯ni짯gern wirk짯lich effek짯tiv erfolgt. Ent짯wick짯ler k철n짯nen sich somit auf die Algo짯rith짯men und deren Imple짯men짯tie짯rung in die im HPC-Umfeld gebr채uch짯li짯chen Pro짯gram짯mier짯spra짯chen For짯tran, C und C++ kon짯zen짯trie짯ren, w채h짯rend der Com짯pi짯ler die eigent짯li짯che Par짯al짯le짯li짯sie짯rung ent짯spre짯chend der Ziel짯hard짯ware vornimmt.

AMD hat짯te bereits 2012 die Bedeu짯tung von Open짯ACC erkannt und gab Ende Okto짯ber 2012 eine Zusam짯men짯ar짯beit mit The Port짯land Group (PGI) bekannt, damit deren Open짯ACC-Com짯pi짯ler auch Code f체r AMDs APUs und dedi짯zier짯te Gra짯fik짯kar짯ten erzeu짯gen kann. Aller짯dings wur짯de die짯se Initia짯ti짯ve durch den Auf짯kauf von PGI durch NVIDIA kon짯ter짯ka짯riert. Den짯noch ran짯gen sich die Unter짯neh짯men dazu durch, das begon짯ne짯ne Pro짯jekt zu einem erfolg짯rei짯chen Ende zu f체h짯ren. Im Febru짯ar 2014 erschien dann die ers짯te sta짯bi짯le Ver짯si짯on des Open짯ACC-Com짯pi짯lers von PGI, die Unter짯st체t짯zung f체r AMD-GPUs bie짯tet. Hier짯zu erzeugt der Open짯ACC-Com짯pi짯ler basie짯rend auf den Direk짯ti짯ven Open짯CL-Code, der dann 체ber AMDs Open짯CL-Lauf짯zeit짯um짯ge짯bung aus짯ge짯f체hrt wird. Zwi짯schen짯zeit짯lich trieb AMD in Koope짯ra짯ti짯on mit SUSE und der Open-Source-Gemein짯de die Inte짯gra짯ti짯on eines HSA-Back-Ends in die GNU Com짯pi짯ler Coll짯ec짯tion (GCC) vor짯an, wel짯ches mit Hil짯fe von OpenMP-Direk짯ti짯ven in der Ver짯si짯on 4.0, die bereits seit vie짯len Jah짯ren zur Par짯al짯le짯li짯sie짯rung auf Mehr짯kern- und Mul짯ti-Pro짯zes짯sor짯sys짯te짯men zum Ein짯satz kom짯men, eben짯falls die Aus짯la짯ge짯rung von Berech짯nun짯gen von der CPU auf Beschleu짯ni짯ger unter짯st체t짯zen soll. AMD und SUSE ori짯en짯tie짯ren sich hier짯bei an den von Open짯ACC genutz짯ten Direktiven.

Greg Stoner, Sr. Direc짯tor of Deve짯lo짯per Tech짯no짯lo짯gy, Pro짯fes짯sio짯nal Gra짯phics bei AMD betont in sei짯nem State짯ment die Vor짯tei짯le von Open짯ACC bei der Pro짯gram짯mie짯rung von hete짯ro짯ge짯nen Rechen짯sys짯te짯men. Das ver짯ein짯fach짯te, auf Direk짯ti짯ven basie짯ren짯de Pro짯gram짯mier짯mo짯dell mit nur einem ein짯zi짯gen Source-Code lege eine soli짯de Grund짯la짯ge, um die Vor짯tei짯le hete짯ro짯ge짯ner Rechen짯sys짯te짯me nutz짯bar zu machen. Zudem ist Stoner neu짯es Mit짯glied des Open짯ACC Board of Direc짯tors gewor짯den und will in die짯ser Funk짯ti짯on bei der Wei짯ter짯ent짯wick짯lung des Stan짯dards behilf짯lich sein.

The HPC com짯mu짯ni짯ty is dri짯ving the need for rich hete짯ro짯ge짯neous com짯pu짯ting solu짯ti짯ons to bet짯ter meet cus짯to짯mer per짯for짯mance and power needs. With this tran짯si짯ti짯on the짯re is a strong need for a rich, sim짯pli짯fied pro짯g짯ra짯ming model to sup짯port new hete짯ro짯ge짯neous appli짯ca짯ti짯on deve짯lo짯p짯ment and pull in lega짯cy C/C++/Fortran appli짯ca짯ti짯ons. Open짯ACC 2.0 via its sin짯gle source direc짯ti짯ves-based pro짯gramming model puts in place a solid foun짯da짯ti짯on to dri짯ve key bene짯fits of a hete짯ro짯ge짯neous hard짯ware plat짯form. AMD is loo짯king for짯ward to working with the Open짯ACC orga짯niza짯ti짯on to help it to con짯ti짯nue to evol짯ve this important pro짯gramming standard.

Oscar Her짯nan짯dez, Prin짯ci짯ple Inves짯ti짯ga짯tor am Oak Ridge Natio짯nal Labo짯ra짯to짯ry (ORNL), sieht durch den Bei짯tritt von PathSca짯le zur Open짯ACC Stan짯dards Group einen gro짯횩en Vor짯teil in der Diver짯si짯fi짯zie짯rung der ver짯f체g짯ba짯ren Com짯pi짯ler, wel짯che Unter짯st체t짯zung f체r Open짯ACC bie짯ten. Zudem beab짯sich짯ti짯ge das ORNL den PathSca짯le-Com짯pi짯ler f체r die Nut짯zer des eige짯nen Cray-XK7-Sys짯tem (Titan) ver짯f체g짯bar zu machen.

It is important in any HPC deve짯lo짯p짯ment envi짯ron짯ment to have access to a varie짯ty of com짯pi짯lers. Some짯ti짯mes one com짯pi짯ler will exhi짯bit bet짯ter per짯for짯mance on a par짯ti짯cu짯lar code than ano짯ther, or behave in a more desi짯ra짯ble way. We ful짯ly intend to make PathSca짯le available to deve짯lo짯pers crea짯ting appli짯ca짯ti짯ons for ORNL셲 Titan Cray XK7 supercomputer.

Quel짯le: Pres짯se짯mit짯tei짯lung