Driver graphique, pas sûr qu'il soit présent et utilisé

Tags: #<Tag:0x00007f335edec298> #<Tag:0x00007f335edec130> #<Tag:0x00007f335edec040> #<Tag:0x00007f335edf7e90> #<Tag:0x00007f335edf7da0>

Bonjour à tous,

Je suis sous Trixie sur un vieux laptop Toshiba TECRA R850 (année ~2012 à peu près). Je me demande si mon driver graphique est correctement utilisé, je vais vous montrer ce qui me fait douter. Voici la sortie de quelques commandes trouvées sur internet et que vous connaissez probablement :

$ lspci -vnn | grep -A 12 '\[030[02]\]' | grep -Ei "vga|3d|display|kernel"
01:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Seymour [Radeon HD 6400M/7400M Series] [1002:6760] (prog-if 00 [VGA controller])
        Kernel driver in use: radeon
        Kernel modules: radeon, amdgpu

Cette description du chipset graphique ressemble bien aux fiches techniques de l’époque que je trouve sur internet (NB : Toshiba n’assure plus le support de sa gamme PC, qu’il ont vendue il y a bien longtemps, le repreneur n’assure le support que pour les modèles du marché anglo-saxon).

$ sudo lshw -enable pci -class display
  *-display                 
       description: VGA compatible controller
       produit: Seymour [Radeon HD 6400M/7400M Series]
       fabriquant: Advanced Micro Devices, Inc. [AMD/ATI]
       identifiant matériel: 0
       information bus: pci@0000:01:00.0
       nom logique: /dev/fb0
       version: 00
       bits: 64 bits
       horloge: 33MHz
       fonctionnalités: pm pciexpress msi vga_controller bus_master cap_list rom fb
       configuration: depth=32 driver=radeon latency=0 resolution=1600,900
       ressources: irq:32 mémoire:c0000000-c7ffffff mémoire:cc400000-cc41ffff portE/S:3000(taille=256) mémoire:c0000-dffff

Jusqu’ici j’ai l’impression que tout va bien (dites-moi si j’interprète bien) : le chipset est reconnu, le kernel a lancé des modules qui semblent adéquats.

Et maintenant, le truc qui me fait douter. J’ouvre la fenêtre de configuration du système (j’utilise KDE, j’ignore si cette fenêtre est spécifique KDE ou standard Debian), section « À propos de ce système », et je vois les infos suivantes dans la rubrique « Matériel » :

Fabriquant : TOSHIBA
Nom du produit : TECRA R850
Version du système : PT520E-01900YFR
Processeur graphique : llvmpipe

Si je ne me trompe pas, ce llvmpipe serait un genre d’émulation logicielle du chipset, est-ce que je me trompe ?
Du coup je creuse un peu, et voici ce que me sort une commande de diagnostic OpenGL :

name of display: :0
display: :0  screen: 0
direct rendering: Yes
(...)
Extended renderer info (GLX_MESA_query_renderer):
    Vendor: Mesa (0x1002)
    Device: AMD CAICOS (DRM 2.50.0 / 6.12.57+deb13-amd64, LLVM 19.1.7) (0x6760)
    Version: 25.0.7
    Accelerated: yes
    Video memory: 1024MB
    Unified memory: no
    Preferred profile: core (0x1)
    Max core profile version: 4.5
    Max compat profile version: 4.5
    Max GLES1 profile version: 1.1
    Max GLES[23] profile version: 3.1
(...)
OpenGL vendor string: Mesa
OpenGL renderer string: AMD CAICOS (DRM 2.50.0 / 6.12.57+deb13-amd64, LLVM 19.1.7)
(...)

Ces deux mentions LLVM 19.1.7 ressemblent fort au processeur graphique llvmpipe rencontré sur la fenêtre d’infos système.

J’ai exécuté un petit utilitaire graphique affichant en 3D des roues dentées qui tournent, nommé glxgears, et qui me donne un taux d’affichage aux alentours de 60 FPS.

Savez-vous ce que signifie ce llvmpipe ? Est-ce un moteur de rendu software ? Est-ce une couche d’abstraction vers le driver accéléré ?

Dans l’attente de vous lire…

LLVMpipe

Bonjour,

Pour monitorer ma CG, j’utilise nvtop. ça te dira quel GPU est utilisé et la charge.
Pour les 60 FPS, c’est sûrement le taux de rafraîchissement de ton écran (le résultat dépend de la CG, plafonné au taux de l’écran…)
Pour LLVM, c’est un render dispo parmi d’autres. ça veut pas dire que la CG n’est pas utilisé.

Bon ça ressemble bien à un rendu 100% logiciel sur le CPU, sans utilisation du GPU.

Voici ce que ça donne :

$ nvtop
No GPU to monitor.

Par son numéro PCI (1002:6760) j’ai un peu plus de détail sur le chipset :
Device ‹ AMD Seymour [Radeon HD 6400M/7400M Series] ›

Il est pris en charge par le pilote libre radeon (sans succès apparemment), mais aussi par le pilote propriétaire fglrx. Je repoussais un peu le moment où j’allais me confronter à ces soucis de drivers propriétaires, mais je crois que je vais devoir y passer.

C’est complètement inutile avec une Radeon, donc normal de ne pas de GPU à monitorer!

J’ai installé un équivalent radeontop qui reconnaît le chipset comme étant un Caicos (en fait, Caicos est aux desktops ce que Seymour est aux laptops).

LLVM c’est avec Mesa 3D qu’il est installé.

Sinon, j’ai une radeon… et nvtop fonctionne parfaitement.

Après j’avais pas fait gaffe que la carte était aussi ancienne…
Est-ce que les firmwares sont bien installés (firmware-amd-graphics) ?
dmesg | grep -E 'drm|radeon' | grep -iE 'firmware|microcode'

On devrait avoir des infos via cette page : AMD Seymour [Radeon HD 6400M/7400M Series]

La commande me renvoie ceci qui semble correct :

[    6.155005] [drm] Loading CAICOS Microcode

Le package des microcodes propriétaires a sûrement été installé par défaut sur mon Trixie :

firmware-amd-graphics/now 20250410-2 all [installé, local]

Que je comprenne bien le problème : apparemment le kernel reconnait bien le GPU, voit qu’il peut utiliser radeonou bien amdgpu, choisit d’installer le premier plutôt que le deuxième (selon quels critères, d’ailleurs ?), utilise les bons microcodes, et par la suite, c’est OpenGL qui décide de plutôt utiliser LLVM ?

c’est la librairie Mesa pour être précis

la génération de carte graphique :

  • les « récentes », grosso modo à partir de 2015 => amdgpu+nvtop
  • les « anciennes », entre 2012 et 2015 => radeon+radeontop

Tu pourrais faire un dernier « test », juste pour être sur que le pilote n’est pas utilisé (même si je n’y crois pas trop) : lancer un jeu et regarder quel CG est utilisé avec radeontop.
Debian utilisant « intelligemment » les ressources (et les carte AMD étant très bien intégrée), la mienne ne se lance que pour les process nécessitant de la puissance de calcul, le reste étant lancé sur la CG intégré au CPU (moins énergivore).

Et sinon, ça dépasse mes compétences ^^

c’est plus sujet à caution sur les portable malheureusement…

Ouh pinaise, vous connaissez un jeu qui serait idéal pour tester ça ? Par exemple, pas trop volumineux, ni trop gourmand (le laptop date de 2012), facile à installer, et utilisant bien l’accélération ?