የPoCL 5.0 መልቀቅ ከOpenCL ስታንዳርድ ነፃ ትግበራ

ከግራፊክስ አፋጣኝ አምራቾች ነፃ የሆነ የOpenCL ስታንዳርድ ትግበራን በማዘጋጀት የPoCL 5.0 ፕሮጀክት (ተንቀሳቃሽ ኮምፒውቲንግ ቋንቋ ኦፕንሲኤል) ታትሟል እና በተለያዩ የግራፊክስ ዓይነቶች እና ማእከላዊ ማቀነባበሪያዎች ላይ የOpenCL ከርነሎችን ለማስፈፀም የተለያዩ የኋላ ሽፋኖችን መጠቀም ያስችላል ። . የፕሮጀክት ኮድ በ MIT ፈቃድ ስር ተሰራጭቷል። በመሣሪያ ስርዓቶች X86_64፣ MIPS32፣ ARM v7፣ AMD HSA APU፣ NVIDIA GPU እና የተለያዩ ልዩ ASIP (መተግበሪያ-ተኮር መመሪያ-ስብስብ ፕሮሰሰር) እና TTA (የትራንስፖርት ቀስቃሽ አርክቴክቸር) ፕሮሰሰሮችን በVLIW አርክቴክቸር ይደግፋል።

የOpenCL kernel compiler አተገባበር የተገነባው በኤልኤልቪኤም መሰረት ነው፣ እና ክላንግ ለ OpenCL C የፊት ጫፍ ሆኖ ያገለግላል። ትክክለኛውን ተንቀሳቃሽነት እና አፈጻጸም ለማረጋገጥ የOpenCL kernel compiler እንደ VLIW፣ superscalar፣ SIMD፣ SIMT፣ multi-core እና multi-threading የመሳሰሉ የኮድ አፈጻጸምን ለማመሳሰል የተለያዩ የሃርድዌር ሀብቶችን ሊጠቀሙ የሚችሉ ጥምር ተግባራትን መፍጠር ይችላል። ለአይሲዲ ሾፌሮች (ሊጫን የሚችል ደንበኛ ነጂ) ድጋፍ አለ። በሲፒዩ፣ ASIP (TCE/TTA)፣ ጂፒዩ በኤችኤስኤ አርክቴክቸር እና በNVadi ጂፒዩ (በሊብኩዳ) በኩል ለመስራት ድጋፍ ሰጪዎች አሉ።

በአዲሱ ስሪት:

  • የOpenCL ትዕዛዞችን ሂደት የበስተጀርባ ፖልድ ሂደትን በሚያካሂደው አውታረ መረብ ላይ ለሌሎች አስተናጋጆች በማስተላለፍ የተከፋፈለ ስሌትን ለማደራጀት የተነደፈ አዲስ “የርቀት” ጀርባ ተተግብሯል።
  • የCUDA ሹፌር እንደ አቶሚክ ኦፕሬሽኖች፣ ሰፊ ተለዋዋጮች፣ intel_sub_group_shuffle፣ intel_sub_group_shuffle_xor፣ get_sub_group_local_id፣ sub_group_barrier እና ንዑስ_ቡድን_ቦሎት ያሉ የOpenCL 3.0 ተጨማሪ ባህሪያትን እና ቅጥያዎችን ይተገብራል።
  • በRISC-V አርክቴክቸር መሰረት ለሲፒዩዎች የተሻሻለ ድጋፍ። የPoCL አሠራር በኡቡንቱ 2 አካባቢ ከኤልኤልቪኤም 23.10 እና ጂሲሲ 17 ጋር በተጫነው በ Starfive VisionFive 13.2 ሰሌዳ ላይ ተፈትኗል።
  • የ cl_ext_float_atomic ቅጥያ ለFP32 እና FP64 ድጋፍ ተተግብሯል።
  • የ cl_khr_command_buffer ቅጥያ ትግበራ ወደ ስሪት 0.9.4 ተዘምኗል።
  • ለFPGAs የሙከራ AlmaIF ድጋፍ ቀርቧል።
  • ለ SPIR 1.x/2.0 ጥላዎች መካከለኛ ውክልና ያልተሟላ ድጋፍ ተወግዷል። SPIR-V የሚመከር መካከለኛ የጥላ ቋንቋ ተብሎ ታውጇል።
  • ለ Clang/LLVM 17.0 ድጋፍ ታክሏል። የ Clang/LLVM 10-13 ድጋፍ ተቋርጧል።

ምንጭ: opennet.ru

አስተያየት ያክሉ