{"id":94117,"date":"2024-10-02T11:30:10","date_gmt":"2024-10-02T09:30:10","guid":{"rendered":"https:\/\/thegeek.site\/?p=94117"},"modified":"2024-10-02T11:30:10","modified_gmt":"2024-10-02T09:30:10","slug":"doom-est-il-trop-intense-pour-les-ordinateurs-quantiques","status":"publish","type":"post","link":"https:\/\/thegeek.site\/2024\/10\/02\/doom-est-il-trop-intense-pour-les-ordinateurs-quantiques\/","title":{"rendered":"DOOM est-il trop intense pour les ordinateurs quantiques ?"},"content":{"rendered":"
<\/p>\n
Un utilisateur de GitHub, Lumorti, a cr\u00e9\u00e9 Quandoom, une r\u00e9invention de E1M1, la premi\u00e8re piste sur ce qui est maintenant un mat\u00e9riel exp\u00e9rimental \u00e9sot\u00e9rique. Selon lui, il peut \u00eatre simul\u00e9 assez efficacement sur un ordinateur portable gr\u00e2ce au simulateur QASM. Il dispose de 70 000 qubits et de 80 millions de portes. Actuellement, Atom Computing est la soci\u00e9t\u00e9 qui poss\u00e8de l’ordinateur quantique le plus puissant (1225 qubits), ce qui est loin de ce qui serait n\u00e9cessaire pour Quandoom (il lui faudrait environ 57 fois plus de puissance…).<\/p>\n
Quandoom est limit\u00e9 non seulement par le fait de n’avoir que la premi\u00e8re piste, mais aussi par les graphiques. Il a des graphismes filaires et, selon Lumorti, il n’y a pas d’effets sonores ou de musique dans le port, les ennemis ne peuvent pas se d\u00e9placer d’une pi\u00e8ce \u00e0 l’autre et la boule de feu du lutin est un hitscan, pas un projectile (donc d\u00e8s qu’il tire, il vous touche).<\/p>\n
Lumorti a expliqu\u00e9 qu’il y avait encore de la place pour l’am\u00e9lioration : \u00ab En ce moment, je suis encore en train de nettoyer le code du moteur, mais j’ai en gros environ 8 000 lignes de fonctions C++ qui permettent un certain nombre d’op\u00e9rations binaires et arithm\u00e9tiques r\u00e9versibles sur les registres quantiques, par exemple “flipIfLessThanOrEqualTo”, qui retourne tous les qubits d’un registre si la valeur d’un autre registre est inf\u00e9rieure \u00e0 une valeur donn\u00e9e. Tout cela se fait avec des entiers. En utilisant de telles fonctions, j’ai ensuite \u00e9crit un petit moteur 3D ainsi que toute la logique du jeu.<\/p>\n
Il existe \u00e9galement un syst\u00e8me auxiliaire, un syst\u00e8me de garbage, ainsi qu’un syst\u00e8me de sous-routines quantiques et de nombreux autres outils pratiques… La parall\u00e9lisation est effectu\u00e9e au stade du rendu, donc la liste des objets de rendu est divis\u00e9e entre les c\u0153urs, et des commentaires sont laiss\u00e9s dans le QASM pour indiquer au simulateur o\u00f9 sauter en fonction de l’ID de thread OpenMP \u00bb, a \u00e9crit le d\u00e9veloppeur.<\/p>\n
C’est donc une situation int\u00e9ressante : un FPS sorti il \u200b\u200by a plus de trois d\u00e9cennies ne peut pas fonctionner correctement sur une technologie d’avant-garde. Mais \u00e0 mesure que la technologie progresse, cela se produira…<\/p>\n