dimanche 2 mars 2014

Installation du driver libre Radeon sur Kubuntu 13.10

Si vous avez une carte graphique AMD et un système d'exploitation Linux alors vous avez surement déjà eu des problèmes, que ce soit avec les drivers libres ou propriétaires. Depuis quelques temps, le driver libre a fait de gros progrès et Mesa (qui est l'implémentation libre d'OpenGL) a aussi pas mal bougé. Concrètement avec un kernel 3.13 et Mesa 10.2 vous pouvez profiter d'un pilote libre qui fonctionne plutôt bien et qui est aussi plus stable que la version propriétaire. Le seul bémol, car il y en a un, c'est que certains jeux ne fonctionneront peut être plus. Par contre d'autres fonctionnerons mieux ! Je vais vous décrire ici comment mettre à jour un système basé sur Ubuntu 13.10/14.04 pour avoir un noyau et Mesa à jour. D'ailleurs au passage, je trouve dommage que Ubuntu ne propose pas des dépôts avec les derniers kernels stables et autres logiciels importants.. Heureusement (il y a findus) il y a des dépôts PPAs avec des paquets deb pour ça. Si vous avez actuellement le driver propriétaire installé, il faudra le désinstaller complètement et supprimer le fichier /etc/X11/xorg.conf afin que le driver libre soit automatiquement sélectionné.

Ces manipulations sont à faire avec précaution, si vous n'êtes pas trop à l'aise avec Linux et que votre carte fonctionne à peu prêt bien alors ne tentez pas encore les drivers libres. Par contre si les risques ne vous font pas peur alors n'hésitez pas à tout mettre à jour et à tester.

1. Mettre à jour son noyau en version 3.13 ou supérieur

La meilleur des choses à faire après avoir lu cet article est de vérifier sur kernel.org si un noyau plus récent existe. Si c'est le cas une recherche sur google vous permettra très probablement de trouver un lien vers les nouveaux paquets à installer. Je vous recommande cependant le site LinuxG car à chaque fois qu'une nouvelle version du noyau sort et que des paquets sont disponibles pour Ubuntu/Mint/Derivés, alors ils sont mis en avant sur ce site.
Attention cependant car certains kernel ne sont pas compilés pour fonctionner avec les fonctionnalités que nous avons besoin (la gestion de l'énergie automatique entre autre), ainsi après plusieurs tests sur Kubuntu 14.04, je me rend compte que seul la version 3.13.1 est pleinement utilisable. Bien entendu si vous compilez votre kernel vous même, vous n'aurez pas ces "soucis".
Là pour cet article on se base sur le 3.13.1 et je vous invite d'ailleurs à ouvrir un terminal pour la peine.

Si vous êtes en 32 bit

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.13.1-trusty/linux-headers-3.13.1-031301-generic_3.13.1-031301.201401291035_i386.deb 

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.13.1-trusty/linux-headers-3.13.1-031301_3.13.1-031301.201401291035_all.deb 

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.13.1-trusty/linux-image-3.13.1-031301-generic_3.13.1-031301.201401291035_i386.deb

Sinon vous êtes en 64 bit

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.13.1-trusty/linux-headers-3.13.1-031301-generic_3.13.1-031301.201401291035_amd64.deb

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.13.1-trusty/linux-headers-3.13.1-031301_3.13.1-031301.201401291035_all.deb 

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.13.1-trusty/linux-image-3.13.1-031301-generic_3.13.1-031301.201401291035_amd64.deb

Une fois les bons paquets téléchargés, il suffit d'utiliser la commande suivante pour les installer et redémarrer le système.
sudo dpkg -i linux-headers-3.13.1-*.deb linux-image-3.13.1-*.deb
sudo reboot

2. Mettre à jour Mesa et les pilotes libres

Pour cette étape nous utiliserons deux dépôts PPA, l'avantage est que tout se mettra à jour automatiquement lorsqu'une mise à jour sera disponible
sudo add-apt-repository ppa:xorg-edgers/ppa
sudo add-apt-repository ppa:oibaf/graphics-drivers 
sudo apt-get update
sudo apt-get dist-upgrade

Une fois que tout est installé et mis à jour, redemarrez votre système. De nouveau sur votre bureau, ouvrez un terminal, nous allons vérifier que tout est bien installé.
yann@fenixis:~$ glxinfo | grep "OpenGL"
OpenGL vendor string: X.Org
OpenGL renderer string: Gallium 0.4 on AMD BARTS
OpenGL core profile version string: 3.3 (Core Profile) Mesa 10.2.0-devel
OpenGL core profile shading language version string: 3.30
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 3.0 Mesa 10.2.0-devel
OpenGL shading language version string: 1.30
OpenGL context flags: (none)
OpenGL extensions:

Les lignes importantes sont le versions d'OpenGL et de Mesa qui doivent respectivement au moins en 3.3 et 10.2. Bon tout est terminé, passons à la pratique avec des tests, des jeux et... des jeux :P

3. Le cas Steam

Après ces manipulations il m'était impossible de lancer Steam et j'ai contourné le problème avec la commande suivante :

sudo apt-get install --reinstall libgl1-mesa-glx:i386

4. Quelques tests

Avant de parler jeux, parlons configuration. Tous les tests ont été réalisé sur mon PC fixe qui fonctionne avec une Kubuntu 13.10 64 bit. Ma carte graphique est une Saphire AMD Radeon HD 6850 avec 1 Go de GDDR5, j'ai 8 Go de ram en DDR3 et tout ceci est propulsé fièrement par un Intel Core i5 3350P @3.1 Ghz

Legends of Aetherus

J'ai réalisé quelques tests et je suis agréablement surpris dans la globalité, cependant je note que ce driver ne supporte pas bien le filtrage et que la qualité des images n'est pas aussi bonne qu'avec la version AMD. De plus l'éclairage global des jeux semble plus foncé. Côté compatibilité j'arrive à faire fonctionner presque tous mes jeux, sauf le port Linux de Doom 3 BFG Edition qui m'offre un super brouillage de pixels.. Un grand test a été fait sur Dota 2 avec les graphismes à font et je n'ai eu aucun lag, tout était parfaitement fluide et jouable. Malheureusement je n'arrive plus à lancer Left 4 Dead 2 mais je pense que ça vient plutôt de mon système qui a ramassé il y a peu (même avec le driver proprio j'avais des soucis dernièrement).

Je note tout de même que les performances globales délivrées par le driver sont très bonnes, sur Legends of Aetherus par exemple j'ai des performances presque identiques que le driver AMD 14.1 beta. Ce qu'il faut savoir c'est qu'avant les Catalyst 13.12-beta, il ne m'était pas possible de jouer correctement à LoA. La version libre permet de jouer convenablement, comme je l'ai indiqué plus haut, l'éclairage n'est pas satisfaisant (un peu trop sombre) mais c'est largement meilleur que les Calalyst < 13.12 !

Les options de configuration de Portal 2

Portal 2 fonctionne très bien avec les paramètres graphique en élevés !
Le jeu Portal 2 m'a posé quelques soucis car il ne voulais pas se lancer et je pensais que c'était encore ma distribution qui était foireuse, après quelques recherches j'ai vue qu'il y avait une version beta de la version... beta (à activer dans les options depuis Steam -> Clic droit sur le jeu Portal 2 -> Propriétés -> Bétas). Après une petite mise à jour de moins de 50 Mo, le jeu se lance enfin et je peux en profiter pleinement avec des graphismes presque au maximum. Presque car c'est le filtrage que je ne monte pas à plus de 4x.

Broken Sword 5 est sublime, c'est un peu comme jouer avec une bande dessinée :)
Pour clôturer ces tests, je vais vous parler de Broken Sword 5 : The Serpent's Curse, ce dernier avait un gros soucis en mode plein écran avec le driver propriétaire (le viewport n'était pas centré correctement, du coup on se retrouvait avec le haut de la fenêtre au milieu de l'écran Oo'). Depuis que j'utilise le driver libre, je peux rejouer en mode plein écran. C'est donc tout bénéfique pour ce superbe jeu qui ne doit pas être joué en fenêtré :)

Conclusion


Je pense sincèrement que le driver libre Radeon est aujourd'hui capable d’être utilisé par les joueurs courageux qui n'auront pas trop peur de faire quelques micro manipulations (installer quelques paquets à la main et des PPA). Ça ne m'étonnerais pas que d'ici un ou deux ans, cette solution deviennent le choix par défaut de tous les joueurs. D'une certaine manière ça ne serait pas si mal qu'AMD ne fournisse plus de driver, mais explique aux développeurs comment supporter correctement ses cartes et chipsets graphiques.

Je tiens à remercier les sites yourourlinux.com, ubuntufr et la communauté Steam, car c'est grâce à plusieurs de leurs articles et posts que j'ai concocté ce guide.

Aucun commentaire:

Enregistrer un commentaire