PoCL 1.3-ի թողարկում՝ OpenCL ստանդարտի անկախ իրականացում

Հասանելի է PoCL 1.3 նախագծի թողարկումը (Portable Computing Language OpenCL), որը մշակում է OpenCL ստանդարտի ներդրում, որն անկախ է գրաֆիկական արագացուցիչ արտադրողներից և թույլ է տալիս օգտագործել տարբեր հետնամասեր՝ OpenCL միջուկները տարբեր տեսակի գրաֆիկայի և կենտրոնական պրոցեսորների վրա գործարկելու համար: . Ծրագրի կոդը բաշխվում է MIT լիցենզիայի ներքո: Աջակցում է X86_64, MIPS32, ARM v7, AMD HSA APU հարթակների և տարբեր մասնագիտացված TTA (Transport Triggered Architecture) պրոցեսորների վրա՝ VLIW ճարտարապետությամբ:

OpenCL միջուկի կոմպիլյատորի իրականացումը կառուցված է LLVM-ի հիման վրա, իսկ Clang-ն օգտագործվում է որպես OpenCL C-ի ճակատային վերջ: Համապատասխան շարժունակությունն ու կատարումն ապահովելու համար OpenCL միջուկի կոմպիլյատորը կարող է ստեղծել համակցված գործառույթներ, որոնք կարող են օգտագործել տարբեր ապարատային ռեսուրսներ՝ զուգահեռեցնելու կոդի կատարումը, ինչպիսիք են VLIW, superscalar, SIMD, SIMT, multi-core և multi-threading: Հասանելի է ICD վարորդի աջակցություն
(Տեղադրվող հաճախորդի վարորդ): Կան backend-ներ՝ CPU-ի, ASIP-ի (TCE/TTA), GPU-ի վրա հիմնված HSA ճարտարապետության և NVIDIA GPU-ի (CUDA) միջոցով գործարկելու համար:

Նոր տարբերակն ավելացնում է աջակցություն LLVM/Clang 8.0-ի համար: Ապահովում է աջակցություն ICD-ին (տեղադրվող հաճախորդի վարորդ) macOS հարթակում: Իրականացրել է պրոցեսորի համար pocl առանց backend դրայվերների ստեղծման հնարավորություն: HSA-ի (Հետերոգեն համակարգի ճարտարապետություն) համար տրամադրվում է նախնական աջակցություն՝ HSA-ի գործարկման ժամանակի վերևում ISA-ներ կազմելու համար: Կոդերի բազան մաքրվեց, ներառյալ Vecmathlib գրադարանը հեռացվեց, և LLVM-ի հին տարբերակների (6.0-ից պակաս) աջակցությունը դադարեցվեց:

Source: opennet.ru

Добавить комментарий