Liberigo de Mesa 19.3.0, senpaga efektivigo de OpenGL kaj Vulkan

Enkondukita liberigo de senpaga efektivigo de la OpenGL kaj Vulkan API - Mesa 19.3.0. La unua eldono de la branĉo Mesa 19.3.0 havas eksperimentan statuson - post la fina stabiligo de la kodo, stabila versio 19.3.1 estos publikigita. En Mesa 19.3 efektivigita Plena OpenGL 4.6-subteno por Intel GPU-oj (i965, iris-ŝoforoj), OpenGL 4.5-subteno por AMD (r600, radeonsi) kaj NVIDIA (nvc0) GPU-oj, kaj Vulkan 1.1-subteno por Intel kaj AMD-kartoj. Hieraŭ ŝanĝoj ankaŭ por subteni OpenGL 4.6 aldonis en la radeonsi-ŝoforon, sed ili ne estis inkluditaj en la Mesa 19.3 branĉo.

Inter la ŝanĝoj:

  • Nova backend por kompili ombrantojn estis proponita por RADV (Vulkan-ŝoforo por AMD-blatoj) "AKO", kiu estas disvolvita de Valve kiel alternativo al la LLVM-ombrila kompililo. La backend celas certigi kodgeneradon kiel eble plej optimuman por videoludaj aplikaĵaj ombriloj, kaj ankaŭ atingi tre altan kompilrapidecon. ACO estas skribita en C++, dizajnita kun JIT-kompilo en menso, kaj uzas rapidajn ripetajn datenstrukturojn, evitante montril-bazitajn strukturojn. La meza reprezentado de la kodo estas tute bazita sur SSA (Static Single Assignment) kaj permesas registrasignon precize antaŭkalkulante la registron depende de la ombrilo. ACO povas esti aktivigita por GPU-oj Vega 8, Vega 9, Vega 10 kaj Navi 10 per agordo de la mediovariablo "RADV_PERFTEST=aco";
  • Gallium3D-ŝoforo inkluzivita en la koda bazo Zink, kiu efektivigas la OpenGL API aldone al Vulkan. Zink permesas vin akiri aparataron akcelitan OpenGL se la sistemo havas ŝoforojn limigitajn por subteni nur la Vulkan API;
  • La ANV Vulkan-ŝoforo kaj la iriso OpenGL-ŝoforo disponigas komencan subtenon por la 12-a generacio de Intel-fritoj (Tiger Lake, gen12). En la Linukso-kerno, komponantoj por subteni Tiger Lake estis inkluzivitaj ekde eldono 5.4;
  • La i965 kaj iris-ŝoforoj provizas subtenon por meza reprezentado de SPIR-V-ombriloj, kiuj ebligis atingi plenan subtenon en ĉi tiuj ŝoforoj. OpenGL 4.6;
  • La RadeonSI-ŝoforo aldonas subtenon por AMD Navi 14-GPU-oj kaj plibonigas akceladon de video-malkodado, ekzemple, aldonante subtenon por malkodi 8K-videon en formatoj H.265 kaj VP9;
  • Aldonita subteno por la RADV Vulkan-ŝoforo protektita kompilo, en kiu la fadenoj lanĉitaj por kompili ombrantojn estas izolitaj uzante la seccomp-mekanismon. La reĝimo estas ebligita per la mediovariablo RADV_SECURE_COMPILE_THREADS;
  • Ŝoforoj por AMD-blatoj uzas la AMDGPU kiu aperis en la kernomodulo programara interfaco restarigi la GPU;
  • Laboro estis farita por plibonigi rendimenton en sistemoj kun APU-oj AMD Radeon. La rendimento de la Gallium3D-ŝoforo Iriso por Intel GPU-oj ankaŭ estis plibonigita;
  • En la Gallium3D-ŝoforo LLVMpipe, kiu disponigas programaran bildigon, aperis subteno por komputilaj ombriloj;
  • Shader kaŝmemorsistemo sur disko optimumigita por sistemoj kun pli ol 4 CPU-kernoj;
  • Ebligis Meson-konstrusistemon por kompili sur Vindozo uzante MSVC kaj MinGW. La uzo de scons por konstrui estis malrekomendita sur ne-Vindozaj sistemoj;
  • Implementita EGL etendo EGL_EXT_image_flush_external;
  • Aldonitaj novaj OpenGL-etendaĵoj:
  • Aldonitaj etendaĵoj al la RADV Vulkan-ŝoforo (por AMD-kartoj):
  • Aldonitaj etendaĵoj al la ANV Vulkan-ŝoforo (por Intel-kartoj):

Aldone, ĝi povas esti notita publikigo de AMD dokumentado laŭ la komanda arkitekturo de la "Vega" 7nm APU bazita sur la GCN (Graphics Core Next) mikroarkitekturo.

fonto: opennet.ru

Aldoni komenton