GPUOpen - GPUOpen

GPUOpen
AMD GPUOpen Logo, Jan 2016.png
Autori originali Microaparate avansate
Dezvoltatori Microaparate avansate
Eliberarea inițială 26 ianuarie 2016 ( 26.01.2016 )
Repertoriu
Scris in C , C ++ , GLSL
Sistem de operare Linux , Microsoft Windows
Tip Biblioteci de efecte de joc, depanare GPU, profilare CPU și GPU
Licență Licență MIT
Site-ul web gpuopen .com

GPUOpen este o suită de software middleware dezvoltată inițial de Radeon Technologies Group de la AMD , care oferă efecte vizuale avansate pentru jocurile pe computer. A fost lansat în 2016. GPUOpen servește ca alternativă la Nvidia GameWorks și este un concurent direct al acestuia . GPUOpen este similar cu GameWorks prin faptul că cuprinde mai multe tehnologii grafice diferite ca componente principale care anterior erau independente și separate unele de altele. Cu toate acestea, GPUOpen este un software complet open source , spre deosebire de GameWorks, care este proprietar și închis.

Istorie

GPUOpen a fost anunțat pe 15 decembrie 2015 și lansat pe 26 ianuarie 2016.

Justificare

Nicolas Thibieroz, Senior Manager AMD pentru Ingineria Mondială a Jocurilor, susține că „poate fi dificil pentru dezvoltatori să își valorifice investițiile în cercetare și dezvoltare atât pe console, cât și pe PC, din cauza disparității dintre cele două platforme” și că „bibliotecile proprietare sau lanțurile de instrumente cu„ negrucaseta „API-urile împiedică dezvoltatorii să acceseze codul în scopuri de întreținere, portare sau optimizare”. El spune că arhitecturile viitoare, precum seria Rx 400 a AMD „includ multe caracteristici care nu sunt expuse astăzi în API-urile grafice pentru PC”.

AMD a proiectat GPUOpen pentru a fi un stack de software middleware concurent open-source lansat sub licența MIT . Bibliotecile sunt destinate să crească portabilitatea software-ului între consolele de jocuri video , PC-uri și, de asemenea , calculul de înaltă performanță .

Componente

GPUOpen unifică multe dintre instrumentele și soluțiile separate ale AMD într-un singur pachet, de asemenea, oferindu-le complet sub licența MIT. GPUOpen facilitează, de asemenea, accesul dezvoltatorului la nivel scăzut pentru dezvoltatori.

În plus, AMD dorește să ofere dezvoltatorilor interesați genul de „acces direct” la nivel scăzut la GPU-urile lor bazate pe GCN , care depășește posibilitățile Direct3D 12 sau Vulkan . AMD a menționat, de exemplu, un acces de nivel scăzut la motoarele de calcul asincrone (ACE). ACE implementează „Asynchronous Compute”, dar nu pot fi configurate în mod liber nici sub Vulkan, nici sub Direct3D 12.

GPUOpen este alcătuit din mai multe componente principale, instrumente și SDK-uri.

Jocuri și CGI

Software pentru imagini generate de computer (CGI) utilizat în dezvoltarea de jocuri de calculator și filme deopotrivă.

Biblioteci de efecte vizuale

GPU Deschideți bibliotecile cu efecte vizuale
Nume API Sursă Descriere
TressFX DirectX 12 , Vulkan GitHub Această bibliotecă de efecte vizuale permite crearea de păr realist, blană și iarbă.
GeometryFX DirectX 11 GitHub Această bibliotecă permite accesul ușor la filtrarea triunghiului bazat pe calcul.
DepthOfFieldFX DirectX 11 GitHub Această bibliotecă oferă acces la implementarea unei adâncimi de câmp optimizate pentru arhitectura GPU GCN printr-un shader de calcul.
ShadowFX DirectX 11 , DirectX 12 GitHub Această bibliotecă oferă acces la o implementare pentru filtrarea umbrelor amânate care este optimizată pentru arhitectura GPU GCN .
FidelityFX DirectX 11 , DirectX 12 , Vulkan GitHub FidelityFX este o suită de biblioteci de efecte vizuale și efecte de asistență.

FidelityFX

Componente FidelityFX
Nume Algoritm Sursă Descriere
FidelityFX CAS Contrastează claritatea adaptivă GitHub Acest algoritm clarifică în mod adaptiv o imagine sau o scenă, reducând în același timp artefactele .
FidelityFX CACAO Combinație adaptivă combinată de ocluzie ambientală GitHub Acest algoritm este o implementare optimizată a eșantionării adaptive de ocluzie ambientală .
FidelityFX LPM Mapper de conservare a luminanței GitHub Acest algoritm este utilizat pentru a tonifica cartografia luma a unui pixel RGB, mai degrabă decât pentru a tonifica cartografia culorii pixelului.
FidelityFX SPD Single Pass Downsampler GitHub Acest algoritm, optimizat pentru arhitectura GPU RDNA , este utilizat pentru a genera 12 niveluri MIP pentru o textură dată.
FidelityFX SSSR Reflecții spațiale ecran ecran GitHub Acest algoritm este utilizat pentru a adăuga reflexii de spațiu pe ecran la un cadru sau la o scenă.
FidelityFX VS Umbrire variabilă GitHub Acest algoritm este utilizat pentru a genera umbrire cu rată variabilă bazată pe imagini utilizând luminanța eșantioanelor din cadrul anterior.
Sortare paralelă FidelityFX Radix Sort GitHub Acest algoritm oferă un sortare bazată pe calcul radix .
FidelityFX Denoiser Shadow & Reflection Denoiser GitHub Acest algoritm oferă funcționalitate de denoising pentru umbre trasate pe raze și reflecții trasate pe raze sau spațiu pe ecran.
FidelityFX Super Resolution Upsampler spațial GitHub Acest algoritm este folosit pentru a eșantiona o imagine sau un cadru la o rezoluție mai mare utilizând doar informațiile spațiale furnizate în cadrul de intrare.

FidelityFX Super Resolution

FidelityFX Super Resolution (FSR) este utilizată pentru a preleva o imagine de intrare într-o rezoluție mai mare. Presetările standard pentru FSR recomandate de AMD pot fi găsite în tabelul de mai jos. Rețineți că aceste presetări nu sunt singurul mod în care algoritmul poate fi utilizat, ci sunt pur și simplu recomandări pentru rezoluții de intrare / ieșire. Anumite titluri, cum ar fi Dota 2, au oferit glisante de rezoluție pentru a regla fin procentul de scalare.

Presetări FSR standard
Presetare de calitate Factor de scară Render Scale
Calitate ultra 1,30x 77,0%
Calitate 1,50x 66,6%
Echilibrat 1,70x 58,8%
Performanţă 2.00x 50,0%

Instrumente

Directorul oficial AMD listează:

Nume cod sursa API OS Sarcină
CodeXL CodeXL Direct3D, OpenGL, OpenCL, Vulkan Linux
Windows
pachet de instrumente de dezvoltare software care include un debugger GPU, un profiler GPU, un profiler CPU, un analizor static OpenCL kernel și diverse pluginuri. nu mai este marcat ca produs AMD.
analizor static pentru AMD CodeXL amd-codexl-analizator Direct3D, OpenGL, OpenCL Linux
Windows pe 64 de biți
Compiler offline și instrument de analiză a performanței CLI - instrument pentru procesare: kernelurile OpenCL, umbrele HLSL și umbrele GLSL care
fac parte din pachetul de instrumente AMD CodeXL
Necesită instalarea Radeon Software Crimson Edition sau AMD Catalyst pentru a rula acest instrument.
Plug-in D3D 12 pentru GPU PerfStudio amd-gpuperfstudio-dx12 Direct3D 12 Windows un plug-in la GPU PerfStudio GPU perfstudio
Tootle amd-tootle agnostic Linux
Windows
Instrument de optimizare a comenzilor triunghiulare ; dezvoltat inițial în 2006; poate fi integrat cu ușurință ca parte a unui lanț de instrumente de redare sau pre-procesare a plaselor Cf. http://mgarland.org/files/papers/quadrics.pdf

Ați fost eliberat de ATI Technologies sub licența BSD în 2006? HLSL2GLSL nu face parte din GPUOpen. Rămâne de văzut dacă vor fi disponibile instrumente similare pentru SPIR-V , la fel ca și lansarea oficială a Vulkan (API) . Codul sursă care a fost definit ca făcând parte din GPUOpen face parte, de asemenea, din nucleul Linux (de exemplu, amdgpu și amdkfd), Mesa 3D și LLVM.

Kituri de dezvoltare software

Nume cod sursa API OS Sarcină
SDK LiquidVR LiquidVR D3D 11 Windows îmbunătățește netezimea realității virtuale . Scopul este de a reduce latența dintre hardware, astfel încât hardware-ul să poată ține pasul cu mișcarea capului utilizatorului, eliminând boala de mișcare. Un accent deosebit este pus pe configurările GPU duale, în care fiecare GPU va reda acum pentru un singur ochi individual de pe ecran
SDK FireRays FireRays_SDK agnostic Linux pe 64 de biți, OS X, Windows pe 64 de biți O bibliotecă de intersecție eterogenă de urmărire a razelor de eficiență ridicată, de înaltă performanță pentru GPU și CPU sau APU pe orice platformă.
SDK FireRender FireRenderSDK ? motor de redare bazat fizic
Advanced Media Framework (AMF) DirectX 12 Windows 64 de biți Un cadru multimedia ușor, portabil, care abstractizează majoritatea detaliilor specifice platformei și API-urilor.
True Audio Next (TAN) OpenCL 3 Windows 64 de biți SDK pentru procesor accelerat și procesare semnal audio audio multi-core Radeon GPU.
SDK RapidFire N / A ? facilitează utilizarea blocurilor SIP de accelerare a compresiei video AMD VCE (codificator H.264) și UVD (decodor H.264) pentru „ Cloud gaming ” / redare în afara site-ului

Calcul profesional

Image
Inițiativa AMD Boltzmann: amdgpu(kernel Linux 4.2+) și amdkfd(kernel Linux 3.19+)

Software în jurul arhitecturii sistemelor eterogene (HSA), calcul general pentru unitățile de procesare grafică (GPGPU) și calcul de înaltă performanță (HPC)

Arhitectura eterogenă a sistemului

  • HSAIL-GDB: oferă un mediu de depanare bazat pe Debugger GNU pentru HSA Intermediate Layer (HSAIL)
  • API-uri HSA Runtime
  • Versiunea Linux amdkfd v1.6.1 pentru Kaveri & Carrizo
Radeon Open Compute (ROCm)

„Inițiativa Boltzmann” a AMD (numită după Ludwig Boltzmann ) a fost anunțată în noiembrie 2015 la SuperComputing15 și produsă ca platformă Radeon Open Compute (ROCm). Acesta își propune să ofere o alternativă la CUDA de la Nvidia, care include un instrument de portare a codului sursă CUDA la codul sursă portabil (HIP) care poate fi compilat atât pe HCC, cât și pe NVCC .

  • Driver Radeon Open Compute Kernel (ROCK)
  • Radeon Open Compute Runtime (ROCR)
  • HCC: Compilator de calcul heterogen
  • HIP: C ++ Heterogeneous-Compute Interface pentru portabilitate

Variat

  • biblioteca clFFT pentru transformata Fourier rapidă scrisă în OpenCL
  • bibliotecă hcFFT pentru transformată Fourier rapidă scrisă în C ++ optimizat HCC

Disponibilitate

GPUOpen este disponibil sub licența MIT pentru publicul larg prin GitHub începând cu 26 ianuarie 2016.

Există interconectare între GPUOpen și proiecte software bine stabilite și răspândite, cum ar fi kernel-ul Linux , Mesa 3D și LLVM .

Vezi si

Referințe

linkuri externe