Sujet : Re: [Jeux] Trouver le calcul caché
De : samuel_dot_devulder (at) *nospam* laposte_dot_net.invalid (Samuel DEVULDER)
Groupes : fr.sci.mathsDate : 11. Jun 2022, 19:01:10
Autres entêtes
Organisation : Aioe.org NNTP Server
Message-ID : <t82l96$1qsn$1@gioia.aioe.org>
References : 1 2 3 4 5
User-Agent : Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.9.1
Le 11/06/2022 à 16:00, Jacques Mathon a écrit :
Je l'ai fait ce matin... en 2 grâce à un premier coup sans doute très chanceux (38*25+14).
Sans les parenthèses bien entendu :)
Quant à moi, dorénavant je ... triche (
https://tinyurl.com/2amrhj6a).
Mais en vrai ca me sert d'excellent(?) benchmark de couples CPU/compilos. En effet j'ai été surpris de voir que des CPUs à priori puissants exécutaient la recherche des équations possibles (beaucoup de backtracking) nettement plus lentement que des coucous pourtant plus vieux (à croire que les cpu modernes n'aiment pas les changements de piles trop fréquents).
A l'inverse les cpu ayant des (bonnes) unités de calcul logique vectorisé sont avantagés. En effet, l'ensemble des test de compatibilité d'une configuration avec un état du jeu peut être ramené à des opérations bits à bits sur des vecteurs de quelques centaines de bits (quand on a plus de 8 cases). Cependant parfois, ce sont les versions 32bits (SIMD du pauvre) qui sont, de façon surprenante, les plus rapides.
Le multihtreading peut aussi être étudié, et curieusement il n'accélère pas autant que je l'aurais cru (genre 8 threads ne vont pas 2 fois plus vite que 4, loin s'en faut).
Il doit y avoir des explications hyper techniques à tout cela allant du SIMD émulé par du micro-code sur des registres plus petits prenant au final plus de cycles que les instructions 32bits natives, à la taille et gestion des caches en cas de contention sur la mémoire je suppose. Mais c'est pas le forum pour cela.
Bref, je "m'amuse" dans mon coin..
sam.