HPVM 2.0, компилятор барои CPU, GPU, FPGA ва суръатбахшҳои сахтафзор нашр шудааст

Лоиҳаи LLVM нашри HPVM 2.0 (Мошини виртуалии гетерогении параллелӣ), компилятореро эълон кард, ки ба соддагардонии барномасозӣ барои системаҳои гетерогенӣ ва таъмини абзорҳои тавлиди код барои CPU, GPU, FPGA ва суръатбахшии сахтафзори мушаххаси домен нигаронида шудааст. Рамзи лоиҳа тибқи иҷозатномаи Apache 2.0 паҳн карда мешавад.

Барномасозӣ барои системаҳои параллелӣ гетерогенӣ бо мавҷудияти ҷузъҳо дар як система, ки моделҳои гуногунро барои ноил шудан ба параллелизм истифода мебаранд (аслҳои CPU, дастурҳои векторӣ, GPU ва ғайра), маҷмӯи дастурҳои гуногун ва иерархияҳои гуногуни хотира мушкил аст. Ҳар як система омезиши худро аз ин ҷузъҳо истифода мебарад. Идеяи асосии лоиҳаи HPVM ин истифодаи намояндагии ягонаи барномаҳои параллелӣ иҷрошаванда ҳангоми тартиб додан мебошад, ки онро барои намудҳои гуногуни сахтафзор, ки ҳисобкунии параллелӣ дастгирӣ мекунанд, аз ҷумла GPU, дастурҳои векторӣ, протсессори бисёраслӣ, FPGA ва микросхемаҳои гуногуни суръатбахшии махсус.

Баръакси дигар системаҳо, HPVM кӯшиш кард, ки се қобилиятро барои ташкили ҳисоббарории гетерогенӣ муттаҳид кунад - забони барномасозӣ ва намояндагии мобайнӣ аз сахтафзор (IR), меъмории маҷмӯи дастурҳои виртуалӣ (V-ISA) ва ҷадвали вақти корӣ:

  • Намояндагии мобайнии HPVM намоиши мобайнии дастурҳои LLVM-ро бо истифода аз графики иерархикии ҷараёни маълумот барои гирифтани параллелизм дар сатҳҳои вазифа, додаҳо ва қубур васеъ мекунад. Намояндагии мобайнии HPVM инчунин дастурҳои векторӣ ва хотираи муштаракро дар бар мегирад. Ҳадафи асосии истифодаи намояндагии фосилавӣ тавлиди самараноки код ва оптимизатсия барои системаҳои гетерогенӣ мебошад.
  • Архитектураи маҷмӯаи дастурҳои виртуалӣ (V-ISA) хусусиятҳои сахтафзори сатҳи пастро реферат мекунад ва шаклҳои гуногуни параллелизм ва меъмории хотираро бо истифода аз модели асосии параллелизм - графики ҷараёни маълумот муттаҳид мекунад. V-ISA ба шумо имкон медиҳад, ки дар байни навъҳои гуногуни таҷҳизот барои ҳисоббарории параллелӣ ба даст оред ва ҳангоми истифодаи унсурҳои гуногуни системаҳои гетерогенӣ самаранокии худро аз даст надиҳед. ISA-и виртуалӣ инчунин метавонад барои расонидани рамзи универсалии иҷрошаванда истифода шавад, ки метавонад бо истифода аз CPU, GPU, FPGA ва суръатбахшҳои гуногун кор кунад.
  • Сиёсати банақшагирии чандир барои раванди ҳисобкунӣ дар вақти корӣ татбиқ карда мешавад ва ҳам дар асоси маълумот дар бораи барнома (сохтори графикӣ) ва ҳам тавассути тартиб додани гиреҳҳои инфиродии барнома барои иҷро дар ҳама гуна дастгоҳҳои ҳисоббарории мақсадноки дар система мавҷудбуда амалӣ карда мешавад.

Генераторҳои коди аз ҷониби лоиҳа таҳияшуда қодиранд, ки гиреҳҳои барномаҳоеро, ки бо истифода аз ISA виртуалӣ барои иҷроиш бо истифода аз GPUs NVIDIA (cuDNN ва OpenCL), дастурҳои вектории Intel AVX, FPGAҳо ва CPU-ҳои бисёраслии x86 тарҷума мекунанд, тарҷума кунанд. Қайд карда мешавад, ки кори тарҷумонҳои HPVM бо рамзи дастнависи OpenCL барои GPU ва дастгоҳҳои ҳисоббарории векторӣ муқоиса карда мешавад.

Навовариҳои асосии HPVM 2.0:

  • Фронти забони Hetero-C++ пешниҳод шудааст, ки параллелизатсияи коди барномаро дар C/C++ барои тартиб додан дар HPVM содда мекунад. Hetero-C++ васеъшавиро барои параллелизми сатҳи додаҳо ва вазифаҳои иерархӣ, ки ба графикҳои риштаи HPVM харита мекунанд, муайян мекунад.
  • Барои дастгирии иҷрои код дар FPGA-ҳои Intel як пуштибонии FPGA илова карда шудааст. Барои ташкили иҷро, Intel FPGA SDK барои OpenCL истифода мешавад.
  • Чаҳорчӯбаи DSE (Design Space Exploration) илова карда шудааст, ки оптимизатсияи компиляторҳо ва механизмҳои муайян кардани монеаҳо барои танзими автоматии замимаҳо барои платформаи сахтафзорро дар бар мегирад. Чаҳорчӯба дорои модели иҷрои омодаи FPGAs аз Intel мебошад ва имкон медиҳад, ки протсессори шахсии худро барои оптимизатсия барои ҳама дастгоҳҳои аз ҷониби HPVM дастгирӣшаванда пайваст кунед. Оптимизатсияро ҳам дар сатҳҳои графикии ҷараёни маълумотҳои HPVM ва LLVM татбиқ кардан мумкин аст.
  • Ҷузъҳои LLVM ба версияи 13.0 навсозӣ шудаанд.
  • Рамз барои осон кардани паймоиш дар заминаи кодҳо, китобхонаҳо ва хидматрасониҳо аз нав ташкил карда шудааст.
  • Инфрасохтори санҷиш такмил дода шуд, барои ҷузъҳои гуногуни HPVM санҷишҳои нав илова карда шуданд.

Манбаъ: opennet.ru

Илова Эзоҳ