HPVM 2.0, CPU, GPU, FPGA සහ දෘඪාංග ත්වරණකාරක සඳහා සම්පාදකය

LLVM ව්‍යාපෘතිය විසින් විෂම පද්ධති සඳහා ක්‍රමලේඛනය සරල කිරීම සහ CPU, GPUs, FPGAs සහ වසම-විශේෂිත දෘඪාංග ත්වරණ සඳහා කේත ජනනය කිරීම සඳහා මෙවලම් සැපයීම අරමුණු කරගත් HPVM 2.0 (විෂම සමාන්තර අථත්‍ය යන්ත්‍රය) සම්පාදකය නිකුත් කිරීම හඳුන්වා දෙන ලදී. ව්‍යාපෘති කේතය Apache 2.0 බලපත්‍රය යටතේ බෙදා හැරේ.

විෂමජාතීය සමාන්තර පද්ධති සඳහා ක්‍රමලේඛනය සංකීර්ණ වී ඇත්තේ සමාන්තරතාව සාක්ෂාත් කර ගැනීම සඳහා විවිධ මාදිලි භාවිතා කරන එක් සංරචක පද්ධතියක පැවතීම (CPU හරය, දෛශික උපදෙස්, GPU යනාදිය), විවිධ උපදෙස් කට්ටල සහ විවිධ මතක ධුරාවලියන් ය. සෑම පද්ධතියක්ම මෙම සංරචකවල තමන්ගේම සංයෝජනයක් භාවිතා කරයි. HPVM ව්‍යාපෘතියේ ප්‍රධාන අදහස වන්නේ GPU, දෛශික උපදෙස්, බහු-core ප්‍රොසෙසර, FPGA සහ විවිධ විශේෂිත වූ සමාන්තර පරිගණනයට සහය දක්වන විවිධ වර්ගයේ දෘඩාංග සඳහා භාවිතා කළ හැකි සමාන්තර වැඩසටහන් වල ඒකාබද්ධ නිරූපණයක් සම්පාදනය කිරීම සඳහා භාවිතා කිරීමයි. ඇක්සලරේටර් චිප්ස්.

අනෙකුත් පද්ධති මෙන් නොව, HPVM විෂම පරිගණනය සංවිධානය කිරීමේ අවස්ථා තුනක් ඒකාබද්ධ කිරීමට උත්සාහ කළේය - අතරමැදි නිරූපණය (IR), අතථ්‍ය උපදෙස් කට්ටල ගෘහ නිර්මාණ ශිල්පය (V-ISA) සහ ක්‍රමලේඛන භාෂාවෙන් සහ උපකරණවලින් ස්වාධීනව ධාවන කාල උපලේඛනගත කිරීම:

  • අතරමැදි නිරූපණය HPVM විසින් කාර්යයන්, දත්ත සහ පරිගණක නල මාර්ග මට්ටමින් සමාන්තරකරණය ග්‍රහණය කර ගැනීමට ධූරාවලි දත්ත ප්‍රවාහ ප්‍රස්ථාරයක් භාවිතා කරමින් LLVM උපදෙස් වල අතරමැදි නිරූපණය දිගු කරයි. HPVM අතරමැදි නිරූපණයට දෛශික උපදෙස් සහ හවුල් මතකය ද ඇතුළත් වේ. අතරමැදි නියෝජනයක් භාවිතා කිරීමේ ප්‍රධාන අරමුණ වන්නේ කාර්යක්ෂම කේත උත්පාදනය සහ විෂම පද්ධති සඳහා ප්‍රශස්තකරණයයි.
  • Virtual Instruction Set Architecture (V-ISA) පහත මට්ටමේ දෘඪාංග සාරාංශ කරන අතර දත්ත ප්‍රවාහ ප්‍රස්ථාරය වන දත්ත ප්‍රස්ථාරය පමණක් භාවිතා කරමින් සමාන්තරකරණය සහ මතක ගෘහ නිර්මාණ ශිල්පයේ විවිධ ආකාර ඒකාබද්ධ කරයි. V-ISA සමාන්තර පරිගණනය සඳහා විවිධ වර්ගයේ දෘඩාංග අතර අතේ ගෙන යා හැකි හැකියාව ලබා දෙන අතර විෂමජාතීය පද්ධතිවල විවිධ අංග භාවිතා කරන විට කාර්ය සාධනය නැති කර නොගැනීමට හැකි වේ. CPUs, GPUs, FPGAs සහ විවිධ ත්වරණකාරක මත ධාවනය කළ හැකි සාමාන්‍ය වැඩසටහන් ක්‍රියාත්මක කළ හැකි කේතය ලබා දීමට අතථ්‍ය ISA භාවිතා කළ හැක.
  • නම්‍යශීලී පරිගණක ක්‍රියාවලි උපලේඛනගත කිරීමේ ප්‍රතිපත්ති ක්‍රියාත්මක වන විට ක්‍රියාත්මක වන අතර ක්‍රමලේඛය (ප්‍රස්ථාර ව්‍යුහය) පිළිබඳ තොරතුරු මත සහ පද්ධතියේ පවතින ඕනෑම ඉලක්කගත පරිගණක උපාංගයක් මත ක්‍රියාත්මක කිරීම සඳහා තනි වැඩසටහන් නෝඩ් සම්පාදනය කිරීමෙන් ක්‍රියාත්මක වේ.

ව්‍යාපෘතිය මගින් සංවර්ධනය කරන ලද කේත උත්පාදක යන්ත්‍ර NVIDIA GPUs (cuDNN සහ OpenCL), Intel AVX දෛශික උපදෙස්, FPGAs සහ බහු-core x86 CPU භාවිතයෙන් ක්‍රියාත්මක කිරීම සඳහා අතථ්‍ය ISA භාවිතයෙන් අර්ථ දක්වා ඇති යෙදුම් නෝඩ් පරිවර්තනය කිරීමේ හැකියාව ඇත. HPVM පරිවර්තකයන්ගේ ප්‍රතිඵලවල ක්‍රියාකාරීත්වය GPU සහ දෛශික පරිගණක උපාංග සඳහා අතින් ලියන ලද OpenCL කේතය සමඟ සැසඳිය හැකි බව සටහන් වේ.

HPVM 2.0 හි ප්‍රධාන නවෝත්පාදන:

  • HPVM හි සම්පාදනය සඳහා C/C++ යෙදුම් කේතය සමාන්තරකරණය කිරීම සරල කරන Hetero-C++ භාෂා ඉදිරිපෙළ යෝජනා කර ඇත. Hetero-C++ දත්ත මට්ටමේ සමාන්තරකරණය සහ HPVM නූල් ප්‍රස්ථාර වෙත සිතියම්ගත කර ඇති ධුරාවලියේ කාර්යයන් සඳහා දිගු නිර්වචනය කරයි.
  • Intel FPGA එකක කේත ක්‍රියාත්මක කිරීමට සහාය වීම සඳහා FPGA පසුබිමක් එක් කර ඇත. ක්‍රියාත්මක කිරීම සංවිධානය කිරීම සඳහා, OpenCL සඳහා Intel FPGA SDK භාවිතා වේ.
  • දී ඇති දෘඩාංග වේදිකාවක් සඳහා යෙදුම් ස්වයංක්‍රීයව සුසර කිරීම සඳහා සම්පාදක ප්‍රශස්තිකරණය සහ බාධක හඳුනාගැනීමේ යාන්ත්‍රණ ඇතුළත් DSE (Design Space Exploration) රාමුව එකතු කර ඇත. රාමුවේ Intel වෙතින් FPGA සඳහා සූදානම් කළ කාර්ය සාධන ආකෘතියක් අඩංගු වන අතර HPVM මඟින් සහාය දක්වන ඕනෑම උපාංගයක් සඳහා ප්‍රශස්තකරණය සඳහා ඔබේම ප්‍රොසෙසර සම්බන්ධ කිරීමට ඔබට ඉඩ සලසයි. ප්‍රශස්තකරණයන් HPVM දත්ත ප්‍රස්ථාර ප්‍රස්ථාර මට්ටමේදී සහ LLVM මට්ටමේදී යෙදිය හැක.
  • LLVM සංරචක 13.0 අනුවාදයට යාවත්කාලීන කරන ලදී.
  • කේත පදනම, පුස්තකාල සහ උපයෝගිතා හරහා සැරිසැරීම පහසු කිරීම සඳහා කේතය ප්‍රතිසංවිධානය කර ඇත.
  • පරීක්ෂණ සඳහා යටිතල පහසුකම් වැඩිදියුණු කර ඇත, විවිධ HPVM සංරචක සඳහා නව පරීක්ෂණ එකතු කර ඇත.

මූලාශ්රය: opennet.ru

අදහස් එක් කරන්න