Lors du sommet du PDC'09, Microsoft avait annoncé quelques nouveautés majeures pour la nouvelle version 9 d'Internet Explorer. L'une de ces nouveautés était le remplacement de la vieillissante GDI+ par une API plus récente, celle de DirectX 11, j'ai nommé Direct2D.
Contrairement à GDI+ qui exploite le processeur pour l'affichage des pages web, Direct2D utilise la carte graphique. Et le résultat est là, les performances graphiques sont en hausse notamment sur des sites graphiquement lourds tels que les sites de cartographique de Google, Yahoo ou Bing.
Mais chez Mozilla, on ne chôme pas ! En effet un ingénieur, Bas Shouten, a proposé le 10 novembre (et donc bien avant l'annonce de Microsoft) via la rédaction d'un bug sur Bugzilla (bug n°527707) la possible implémentation de fonctions Direct2D dans l'API d'affichage de pages web de Mozilla, Cairo. Et pour démontrer qu'il est réellement possible d'implémenter ces fonctions dans Firefox, il a compilé le résultat dans une pré-alpha de Firefox 3.7 qu'il est possible de tester en téléchargeant le fichier firefox-3.7a1pre.en-US.win32.d2d.zip.
Après quelques tests, il a rassemblé tous les résultats sous forme de graphique :
Les résultats montre ainsi qu'il est bel et bien possible un jour d'avoir un navigateur non-Microsoft boosté par la carte graphique afin d'avoir des performances accrues en matière d'affichage.
Si vous aussi vous voulez tester cette build Direct2D, n'oubliez pas de votre créer un profil de test car bien que l'implémentation fonctionne, elle reste tout du moins instable car basé sur un navigateur instable. Pour ce faire voici la marche à suivre :
- Télécharger la build du 20 Décembre 2009 de Firefox 3.7a1pre D2D
- Décompressez-la dans un dossier
- Dans l'invit "Exécuter" de Windows, tapez "firefox -p" pour ouvrir le gestionnaire de profils de Firefox.
- Créer un nouveau profil (par ex. "Test")
- Rendez-vous dans le dossier de Firefox D2D, et créez un raccourci de firefox.exe, faites un clic droit puis Propriétés.
- Dans le champ "Cible :" de l'onglet Raccourci, ajoutez après firefox.exe ' -no-remote -p "Test" ' pour que le résultat donne par exemple : "D:\Mozilla Firefox\Minefield 3.7 D2D\firefox.exe" -no-remote -p "Test"
- Validez et exécutez Firefox D2D en parallèle de votre installation principale de Firefox.
- Testez le navigateur D2D avec Google Maps, Bing Maps ou Yahoo Maps ou encore photos.svg ou d'autres sites pour constater les différences de performances entre les deux versions de Firefox
Attention, il ne faut pas oublier que cette build D2D ne fonctionnera pas sur Windows XP ! Il vous faudra impérativement Windows 7 ou Windows Vista SP2 avec les dernières mises à jour installés !
Naturellement, beaucoup de travail reste à faire et dans tout cela, il faut que les développeurs se concertent pour décider de l'implémentation finale de cette fonction dans une version ultérieure de Firefox.
NB : La fonction -no-remote de Firefox permet d'exécuter plusieurs instances différence de Firefox. Par exemple pour exécuter Firefox 3.5.5 et la 3.6 bêta 3 en même temps. Mais avant tout, il est nécessaire de créer deux profils bien distincts pour chaque version de Firefox.