Rebel 6 aujourd'hui
Édito : La Renaissance de Rebel 6
Quel niveau de jeu peut atteindre un moteur mythique de 1994 lorsqu'il est transplanté sur une architecture silicium de 2026 ? Entre nostalgie et métrologie, cette étude décortique l'évolution de Rebel 6 à travers les âges et les processeurs. Voici, en préambule, les conclusions de nos mesures :
- Rebel 6 sur 486 / 50 MHz (Référence 1994) 2307 ELO
- Rebel 6 sur Pentium 90 (Référence SSDF) 2415 ELO
- Rebel 6 (1% Ryzen 9) - Extrapolation Vitesse 2483 ELO
- Rebel 6 (1% Ryzen 9) - Performance en Tournoi 2527 ELO
Ce rapport démontre que si la vitesse de calcul pure (nodes per second) est un indicateur précieux, la confrontation directe sur l'échiquier face aux machines dédiées révèle une efficacité algorithmique qui dépasse les simples projections mathématiques. Plongeons dans le détail des protocoles.
Il y a plusieurs sources aujourd'hui qui permettent de ressusciter le vieil Rebel 6 qui date de 1994 et qui tournait sous DOS. La première page d'où on peut le télécharger propose une version sous DFEND qui permet de le faire fonctionner sous windows avec DOSBOX. Il y a une seconde page d'où on peut se procurer Rebel 6 ainsi que d'autres programmes du même auteur et l'environnement DFEND.
Ensuite, on peut aussi télécharger des versions de Rebel et Prodeo fonctionnant sous l'interface d'Arena.
La question que je me suis posée est de savoir si toutes ces versions sont comparables à la version originale de Rebel 6, et en particulier, quelle était l'influence d'un hardware moderne en terme de performances.
Pour cela, je dispose de quelques rapports, en particulier de la revue CSS, comme le diagramme suivant:
Qui stipule que Rebel 6 trouve la solution en 33 minutes et 12 secondes sur un 486/50 MHz avec 13MB de hash tables. C'est à cela que je vais me comparer avec mon ordinateur sous windows 10 et avec un processeur Intel Core i7-3770@3.4GHz.
Si je lance Rebel 6 dans Arena, le logiciel est lié par le protocole UCI, et à priori il travaille à pleine puissance du processeur sur un coeur. La solution précédente est trouvée en 1 seconde!
Si je lance Rebel 6 à partir de DFEND, avec la vitesse d'émulation par défaut, la solution est trouvée en 2'09", ce qui est quand même 15.4 fois plus rapide que le Rebel de 1994 sur un hardware de l'époque.
Il se trouve que je peux diminuer la vitesse d'émulation sous DFEND, et si je passe à une émulation de 15000 cycles, la bonne réponse est trouvée en 33'10", ce qui est parfait.
La vitesse de calcul moyenne avec ce paramétrage et sur cette position spécifique est de 8165 noeuds par seconde comme on peut le calculer à partir des données vues dans la capture d'écran suivante. A savoir 77 910 393 positions analysées en 2h39'02".
Et finalement, pour comparer le Rebel 6 d'origine sur le 486/50 avec la version UCI sous Arena et la version DFEND avec son paramétrage de base, j'ai réalisé le test du nombre de noeuds calculés en une minute au niveau analyse infinie, en réponse à a4.
Le Rebel 6 de l'époque sur le hardware de l'époque atteint 5201 noeuds par seconde. Résultat de 317 267 noeuds analysés en 1'01". Sous DFEND, on est à 98000 noeuds par seconde et sous Arena à 2 081 600 noeuds par seconde, soit un facteur 400! C'est énorme.
Je voudrais aussi compiler les pages du magasine CSS qui parlent de Rebel 6 au cas où je reprendrais d'autres tests plus tard à partir de données publiées.
Et voici le BT2630 test pour Rebel 6 sous Arena et sous DFEND avec la vitesse qui émule un 486/50. Je pense qu'il y a plus de différence que les 200 points elo, parce qu'il y a des diagrammes que Rebel 6 ne va jamais trouver alors qu'il est fulgurant sur la plupart.
| BT 2630 |
Rebel 6 | Rebel 6 | Rebel 6 |
|---|---|---|---|
| AMD Ryzen 9 7950X | i7 3770 | i7 3770 | |
| 2630 | CB 4,2 GHz |
Arena 3,4 GHz |
DEFEND 15000 cycles |
| BT 1 | 0 | 0 | 186 |
| BT 2 | 0 | 0 | 50 |
| BT 3 | 0 | 0 | 34 |
| BT 4 | 900 | 900 | 900 |
| BT 5 | 0 | 0 | 1 |
| BT 6 | 0 | 0 | 29 |
| BT 7 | 0 | 0 | 23 |
| BT 8 | 1 | 1 | 900 |
| BT 9 | 6 | 7 | 900 |
| BT 10 | 0 | 0 | 19 |
| BT 11 | 0 | 0 | 5 |
| BT 12 | 0 | 0 | 104 |
| BT 13 | 381 | 900 | 900 |
| BT 14 | 0 | 0 | 5 |
| BT 15 | 2 | 2 | 760 |
| BT 16 | 5 | 7 | 900 |
| BT 17 | 0 | 0 | 122 |
| BT 18 | 0 | 0 | 16 |
| BT 19 | 900 | 900 | 900 |
| BT 20 | 0 | 0 | 10 |
| BT 21 | 465 | 900 | 900 |
| BT 22 | 0 | 0 | 9 |
| BT 23 | 900 | 900 | 900 |
| BT 24 | 5 | 6 | 900 |
| BT 25 | 86 | 108 | 900 |
| BT 26 | 11 | 14 | 0 |
| BT 27 | 2 | 2 | 101 |
| BT 28 | 900 | 900 | 900 |
| BT 29 | 119 | 149 | 900 |
| BT 30 | 0 | 0 | 1 |
| Summe: | 4683 | 5696 | 12275 |
| Elo | 2474 | 2440 | 2221 |
Analyse Différentielle : Rebel 6 sur Hardware Moderne
Afin de situer Rebel 6 avec précision dans la hiérarchie actuelle, j'ai utilisé une astuce technique permettant de simuler un hardware d'époque tout en profitant de la stabilité d'un système moderne. Grâce à l'utilitaire BES (Battle Encoder Shirase), le thread du processeur Ryzen 9 a été bridé à seulement 1% de sa capacité. Cette approche permet de créer une "ancre" scientifique, ancrant la force de Rebel 6 dans une réalité historique mesurable plutôt que dans une simple émulation de cycles.
Calibration de la Force (Règle des 60 Elo)
Le calcul repose sur la corrélation constatée entre les architectures 486 et Pentium 90 (P90) dans les listes SSDF de 1996, où un doublement de la puissance de calcul équivaut à un gain de 60 points Elo.
Ryzen 9 (Bridage BES 1%) : 26 secondes pour profondeur 10
Ratio de vitesse constaté (R) : 7.615
Calcul du différentiel : [Log(7.615) / Log(2)] x 60 = +176 Elo
Estimation de la Performance Finale
| Configuration | Base Elo (SSDF) | Résultat Estimé |
|---|---|---|
| Rebel 6.0 (Architecture 486/66) | 2307 | — |
| Rebel 6.0 (Ryzen 9 bridé à 1%) | - | 2483 Elo |
Cette analyse démontre qu'en libérant seulement 1% de la puissance d'un processeur moderne, Rebel 6 atteint 2483 Elo. Ce résultat valide la supériorité de l'architecture logicielle de 1996 qui, même avec des ressources extrêmement limitées, parvient à maintenir un niveau de jeu exceptionnel face aux standards historiques.
Rapport de Tournoi : Rebel 6 contre top échiquiers
Pour valider l'étalon de 2483 Elo, Rebel 6 (bridé à 1% BES sur Ryzen 9) a été opposé à un Gauntlet de 60 parties contre les fleurons des machines dédiées. Ce test confirme la capacité du moteur à maintenir une domination écrasante malgré un bridage extrême.
| Rang | Moteur / Machine | Score | Détails |
|---|---|---|---|
| 1 | Rebel 6 (1% BES) | 49,5 / 60 | Étalon |
| 2 | Saitek RISC 2500 v1.04 | 3,5 / 10 | 0000===1100 |
| 3 | Mephisto RISC II | 2,0 / 10 | =00==0=000 |
| 4 | Novag Star Diamond (v1.04) | 2,0 / 10 | ==00100000 |
| 5 | Mephisto Genius 68030 London | 2,0 / 10 | 0100000100 |
| 6 | Mephisto Berlin Pro 68020 | 0,5 / 10 | 000=000000 |
| 7 | Saitek Sparc (rev.518) | 0,5 / 10 | 00000000=0 |
Calcul de Performance (Rp)
Score Rebel 6 : 82.5% (49.5/60)
Différentiel (D) : 400 * log10( 0.825 / 0.175 ) = +269 Elo
Performance Réelle : 2258 + 269 = 2527 Elo
Le résultat final est sans appel : avec une performance réelle de 2527 Elo, Rebel 6 (1%) surpasse même les prévisions basées sur sa vitesse de calcul (2483). Ce bonus de près de 44 points démontre que la qualité intrinsèque de l'algorithme de 1996 compense largement la réduction drastique de sa puissance de calcul brute.
