Linus Torvalds, omul din spatele Linux, nu se abține când vine vorba de lucruri care, în opinia lui, nu funcționează cum trebuie. De data asta, ținta este arhitectura x86-64 și faimoasele niveluri „v2”, „v3” și „v4” folosite de AMD și Intel. Într-o discuție cu comunitatea Linux Kernel, Torvalds a fost tranșant: „Aceste niveluri sunt complet greșite, nu ajută pe nimeni și ar trebui să dispară.”
Ce sunt nivelurile x86-64 și de ce contează?
Nivelurile x86-64 au fost introduse de Red Hat acum câțiva ani pentru a organiza funcțiile procesoarelor moderne într-un mod mai simplu. Fiecare nivel adaugă suport pentru seturi noi de instrucțiuni hardware, utile în diverse scenarii de utilizare. Structura arată cam așa:
- x86-64-v2: Include instrucțiuni vectoriale precum SSE4.2 și CMPXCHG16B, folosite pentru aplicații de multitasking și analiză de date.
- x86-64-v3: Adaugă suport pentru AVX2 și alte optimizări folosite în workload-uri mai complexe.
- x86-64-v4: Adaugă AVX-512, un set de instrucțiuni avansate utile în aplicații high-performance (dar nu e suportat pe toate procesoarele).
Deși ideea sună bine în teorie, Torvalds spune că în practică mai mult complică lucrurile decât le rezolvă.
Ce critică Linus Torvalds?
Linus a explicat clar problema principală: aceste niveluri încearcă să simplifice compatibilitatea hardware-software, dar sfârșesc prin a crea mai multă confuzie. De ce? Pentru că hardware-ul nu evoluează întotdeauna liniar. Spre exemplu, AVX-512 a fost introdus pe unele procesoare Intel și eliminat pe altele, ceea ce face ca aceste clasificări să nu fie nici logice, nici consecvente.
Pe scurt, Torvalds are două mari nemulțumiri:
- Inutil pentru dezvoltatori: În loc să verifici direct ce funcții suportă procesorul, acum trebuie să îți amintești ce include fiecare nivel - iar asta nu este deloc intuitiv.
- Greșeli de design: Torvalds spune că aceste niveluri nu au sens tehnic. CPUID-ul, un mecanism standardizat care oferă informații exacte despre capabilitățile fiecărui procesor, este deja o soluție mai bună.
Soluția lui Torvalds: Să lăsăm nivelurile în trecut
Linus propune să abandonăm modelul „v2/v3/v4” și să rămânem cu metoda clasică, CPUID. Aceasta permite verificarea clară și precisă a fiecărei funcții suportate de un procesor, fără presupuneri greșite sau complicații inutile.


