OpenCL ప్రమాణం యొక్క స్వతంత్ర అమలుతో PoCL 5.0 విడుదల

PoCL 5.0 ప్రాజెక్ట్ (పోర్టబుల్ కంప్యూటింగ్ లాంగ్వేజ్ ఓపెన్‌సిఎల్) విడుదల ప్రచురించబడింది, గ్రాఫిక్స్ యాక్సిలరేటర్ తయారీదారుల నుండి స్వతంత్రంగా ఉండే ఓపెన్‌సిఎల్ ప్రమాణం యొక్క అమలును అభివృద్ధి చేస్తుంది మరియు వివిధ రకాల గ్రాఫిక్స్ మరియు సెంట్రల్ ప్రాసెసర్‌లపై ఓపెన్‌సిఎల్ కెర్నల్‌లను అమలు చేయడానికి వివిధ బ్యాకెండ్‌లను ఉపయోగించడానికి అనుమతిస్తుంది. . ప్రాజెక్ట్ కోడ్ MIT లైసెన్స్ క్రింద పంపిణీ చేయబడింది. ప్లాట్‌ఫారమ్‌లలో X86_64, MIPS32, ARM v7, AMD HSA APU, NVIDIA GPU మరియు VLIW ఆర్కిటెక్చర్‌తో వివిధ ప్రత్యేక ASIP (అప్లికేషన్-స్పెసిఫిక్ ఇన్‌స్ట్రక్షన్-సెట్ ప్రాసెసర్) మరియు TTA (ట్రాన్స్‌పోర్ట్ ట్రిగ్గర్డ్ ఆర్కిటెక్చర్) ప్రాసెసర్‌లలో పని చేయడానికి మద్దతు ఇస్తుంది.

OpenCL కెర్నల్ కంపైలర్ యొక్క అమలు LLVM ఆధారంగా నిర్మించబడింది మరియు OpenCL C కోసం క్లాంగ్ ఫ్రంట్ ఎండ్‌గా ఉపయోగించబడుతుంది. సరైన పోర్టబిలిటీ మరియు పనితీరును నిర్ధారించడానికి, OpenCL కెర్నల్ కంపైలర్ VLIW, సూపర్‌స్కేలార్, SIMD, SIMT, మల్టీ-కోర్ మరియు మల్టీ-థ్రెడింగ్ వంటి కోడ్ అమలును సమాంతరంగా చేయడానికి వివిధ హార్డ్‌వేర్ వనరులను ఉపయోగించే కాంబినేషన్ ఫంక్షన్‌లను రూపొందించగలదు. ICD డ్రైవర్లకు (ఇన్‌స్టాల్ చేయగల క్లయింట్ డ్రైవర్) మద్దతు ఉంది. CPU, ASIP (TCE/TTA), HSA ఆర్కిటెక్చర్ ఆధారంగా GPU మరియు NVIDIA GPU (libcuda ద్వారా) ద్వారా ఆపరేషన్‌కు మద్దతు ఇవ్వడానికి బ్యాకెండ్‌లు ఉన్నాయి.

కొత్త వెర్షన్‌లో:

  • బ్యాక్‌గ్రౌండ్ పోక్ల్డ్ ప్రాసెస్‌ని అమలు చేస్తున్న నెట్‌వర్క్‌లోని ఇతర హోస్ట్‌లకు OpenCL కమాండ్‌ల ప్రాసెసింగ్‌ను బదిలీ చేయడం ద్వారా పంపిణీ చేయబడిన కంప్యూటింగ్‌ని నిర్వహించడానికి కొత్త “రిమోట్” బ్యాకెండ్ అమలు చేయబడింది.
  • CUDA డ్రైవర్ OpenCL 3.0 యొక్క అటామిక్ కార్యకలాపాలు, స్కోప్డ్ వేరియబుల్స్, intel_sub_group_shuffle, intel_sub_group_shuffle_xor, get_sub_group_local_id, sub_group_barrier మరియు sub_group_ballot వంటి అదనపు ఫీచర్లు మరియు పొడిగింపులను అమలు చేస్తుంది.
  • RISC-V ఆర్కిటెక్చర్ ఆధారంగా CPUలకు మెరుగైన మద్దతు. LLVM 2 మరియు GCC 23.10తో ఉబుంటు 17 పర్యావరణంతో లోడ్ చేయబడిన స్టార్‌ఫైవ్ విజన్‌ఫైవ్ 13.2 బోర్డులో PoCL ఆపరేషన్ పరీక్షించబడింది.
  • cl_ext_float_atomics పొడిగింపు FP32 మరియు FP64కి మద్దతుతో అమలు చేయబడింది.
  • cl_khr_command_buffer పొడిగింపు యొక్క అమలు వెర్షన్ 0.9.4కి నవీకరించబడింది.
  • FPGAల కోసం ప్రయోగాత్మక AlmaIF బ్యాకెండ్ ప్రతిపాదించబడింది.
  • SPIR 1.x/2.0 షేడర్‌ల ఇంటర్మీడియట్ ప్రాతినిధ్యం కోసం అసంపూర్ణ మద్దతు తీసివేయబడింది. SPIR-V సిఫార్సు చేయబడిన ఇంటర్మీడియట్ షేడర్ భాషగా ప్రకటించబడింది.
  • క్లాంగ్/LLVM 17.0కి మద్దతు జోడించబడింది. Clang/LLVM 10-13కి మద్దతు నిలిపివేయబడింది.

మూలం: opennet.ru

ఒక వ్యాఖ్యను జోడించండి