Un driver ATI™ Open Graphics Library® (OpenGL®) este o interfață software dezvoltată de ATI™ Technologies pentru a fi puntea între hardware-ul plăcii lor grafice și interfața de programare abstractă (API) pentru biblioteca OpenGL®. Există drivere diferite pentru fiecare sistem de operare și drivere diferite pentru diferitele arhitecturi de plăci grafice care sunt vândute. Driverul OpenGL® ATI™ este proiectat special pentru a face cea mai bună utilizare a hardware-ului grafic, menținând în același timp o interfață compatibilă cu API-ul OpenGL®. Driverul include extensii OpenGL® personalizate care pot fi folosite pentru a accesa caracteristici speciale sau funcții accelerate ale plăcii grafice în mod constant în cadrul OpenGL®. Nu toate plăcile grafice ATI™ au propriul driver OpenGL® ATI™ personalizat, ceea ce înseamnă că unele au un driver comun, ceea ce poate duce la probleme atunci când sunt solicitate anumite funcții pe care hardware-ul nu le suportă.
Una dintre cele mai importante sarcini pe care le îndeplinește driverul OpenGL® ATI™ este să acceseze hardware-ul plăcii grafice direct prin orice interfață hardware pe care o folosește pentru a comunica cu sistemul computerizat principal. Acest lucru aduce beneficii programatorilor, deoarece producătorul produce driverele conform specificațiilor exacte pentru cea mai bună performanță. În plus, ATI™ lucrează cu Architecture Review Board (ARB) care menține specificația OpenGL®, astfel încât, pe măsură ce se dezvoltă hardware nou, OpenGL® poate evolua simultan și suportul poate fi implementat din ambele părți.
Operațiile care folosesc numere în virgulă mobilă, de exemplu, sunt mutate prin driverele OpenGL® ATI™ și apoi gestionate de unitatea de procesare grafică (GPU) de pe placa grafică, care are registre speciale pentru a face operațiunile cât mai rapide posibil, fără a utiliza niciun fel de a puterii de procesare a principalelor calculatoare. Multe operațiuni de nivel scăzut care se ocupă cu fragmente, vârfuri și matrice sunt transmise direct la GPU, în majoritatea cazurilor, prin driver. Acest tip de funcționalitate ar fi fie imposibil, fie foarte nesigur dacă șoferul nu ar fi prezent.
Procedurile grafice întregi pot fi optimizate prin intermediul hardware-ului. De exemplu, driverul OpenGL® ATI™ poate transmite informații către GPU, astfel încât anti-aliasing, blending și multisampling să poată fi făcute direct în hardware. Driverul oferă, de asemenea, acces la memoria temporară din interiorul cardului, astfel încât imaginile de textură sau matricele de vârfuri să poată fi stocate și operate complet în hardware-ul grafic.
Există unele complicații când utilizați un driver OpenGL® ATI™. Există atât de multe modele hardware de plăci grafice ATI™ încât unele drivere sunt partajate și pot cauza probleme de compatibilitate cu anumite apeluri de funcții. Există, de asemenea, câțiva pași de programare non-standard, non-OpenGL®, care ar putea fi necesari pentru ca cardul ATI™ să poată implementa propriile optimizări. Crearea unui program care este optimizat pentru o placă grafică ATI™ poate însemna, de asemenea, realizarea unui program care nu este compatibil cu o altă marcă de placă.