La réponse courte
Mesuré le 23 octobre 2026 sur un seul PC, dans un faux jeu avec les moteurs activés, le processus de w0a a utilisé en moyenne :
- 0,15 % d'un processeur logique (le PC en a 16)
- 7,2 Mcycle/s, soit 7,2 millions de cycles processeur par seconde
- 29,6 changements de contexte par seconde
Sa plage de travail, la mémoire qu'il gardait en RAM, était en moyenne comprise entre 102 et 120 MB dans les quatre états mesurés (119,6 MB dans celui-ci).
Aucun de ces chiffres n'est nul. Les mesures sur un PC plus chargé suivent plus bas.
Pas mesuré dans un vrai jeu. Il s'agissait d'un faux jeu : un programme qui affiche une fenêtre noire en plein écran et ne dessine rien.
Ce que veulent dire les chiffres
- Pourcentage d'un processeur logique. 0,15 %, c'est 1,5 ms de temps processeur par seconde, sur l'un des 16 processeurs logiques. Windows compte ce temps par pas d'environ 15,6 ms : la plupart des échantillons d'une seconde affichent donc 0,00 % (la médiane), et un échantillon qui tombe sur un pas affiche 1,56 % (le 95e centile). C'est pourquoi le chiffre suivant est le principal.
- Cycles (Mcycle/s). Les millions de cycles processeur par seconde utilisés par les threads de w0a, lus dans le compteur de cycles que Windows tient pour chaque thread, qui n'arrondit pas par pas. La médiane était de 5,8 Mcycle/s. Pour l'échelle : 1 GHz, c'est un milliard de cycles par seconde.
- Changements de contexte. Combien de fois par seconde l'un des threads de w0a a été placé sur un processeur pour s'exécuter, tous ses threads additionnés. Chacun est un thread réveillé pour faire un travail.
- Plage de travail. La partie de la mémoire de w0a gardée en RAM. En jeu avec les moteurs activés, elle était en moyenne de 119,6 MB, avec un pic à 122,7 MB.
Les quatre états
Chaque état a duré cinq minutes. « Moteurs désactivés » signifie que toutes les parties de l'interrupteur Mode Jeu sauf le plan d'alimentation étaient désactivées. Le plan d'alimentation n'a pas été touché pendant la mesure : w0amax est resté actif tout du long.
| État | Cycles, moyenne (médiane) | Pourcentage d'un processeur logique | Changements de contexte par seconde | Plage de travail |
|---|---|---|---|---|
| Au repos, moteurs désactivés | 4,5 (2,4) Mcycle/s | 0,09 % | 10,9 | 103,2 MB |
| En jeu, moteurs désactivés | 1,7 (1,5) Mcycle/s | 0,08 % | 10,7 | 108,2 MB |
| Au repos, moteurs activés | 5,3 (2,9) Mcycle/s | 0,10 % | 13,9 | 102,0 MB |
| En jeu, moteurs activés | 7,2 (5,8) Mcycle/s | 0,15 % | 29,6 | 119,6 MB |
Les lignes ont été mesurées l'une après l'autre pendant que d'autres programmes du PC continuaient à tourner et à démarrer : une différence entre deux lignes ne peut donc pas être attribuée aux seuls moteurs.
Moteurs désactivés, le repos affiche plus que le jeu. Chaque w0a a d'abord été mesuré au repos, peu après son démarrage, et pendant ce temps le runtime .NET compilait encore le code de w0a en arrière-plan : 2,30 Mcycle/s, 51,4 % du total au repos (51,6 % avec les moteurs activés). En jeu, moteurs désactivés, il était tombé à 0,41 Mcycle/s. Cette baisse, 1,9 Mcycle/s, représente environ les deux tiers de l'écart de 2,8 Mcycle/s.
Comment la mesure a été faite
- PC : AMD Ryzen 7 9800X3D (8 cœurs, 16 processeurs logiques), 31,6 GB de RAM, NVIDIA GeForce RTX 5070 Ti, Windows 11 Pro build 26200.
- w0a : la version 2.1 publiée le 23 octobre 2026. w0a tournait dans la zone de notification, fenêtre fermée. Entre les états, seuls les interrupteurs des moteurs ont changé, et ils ont ensuite été remis comme avant.
- Échantillonneur : une fois par seconde, un programme de mesure séparé a lu le processus de w0a via
NtQuerySystemInformationde Windows : le temps processeur, les cycles et les changements de contexte de chaque thread, ainsi que la plage de travail. Chaque état a donné 300 échantillons. - Faux jeu : une fenêtre plein écran de 1920×1080 qui présente 240 images noires par seconde via DXGI, avec sa propre minuterie. Elle était au premier plan, et
engine.logmontre que w0a l'a prise pour un jeu et, moteurs activés, a monté sa priorité à AboveNormal. La fenêtre d'un autre programme est restée au-dessus. - Ordre : d'abord, le faux jeu a tourné 2 minutes sans w0a, comme référence. Puis w0a a été démarré avec les moteurs désactivés, a eu 90 secondes pour se stabiliser, a été mesuré au repos, puis avec le faux jeu en cours, une fois le jeu stabilisé pendant 40 secondes. La même chose a suivi avec un w0a fraîchement démarré, moteurs activés.
- Charge sur le PC : la mesure a commencé sur un PC calme, à 3 % d'utilisation totale du processeur. Pendant l'état en jeu avec les moteurs activés, 165 processus tournaient et w0a a compté entre 38 et 523 nouveaux processus par minute.
Ce que le faux jeu a montré
Il a présenté 240 images par seconde dans les trois mesures en jeu, avec et sans w0a. Sa propre utilisation du processeur était de 203,4 Mcycle/s sans w0a, 205,5 avec les moteurs désactivés et 207,5 avec les moteurs activés. Cette mesure ne montre pas d'où vient cet écart : il n'est donc pas compté comme celui de w0a. Le faux jeu ne dessine rien, il ne dit donc rien des temps d'image dans un vrai jeu.
Moteurs activés, w0a compte les images du jeu grâce au suivi d'événements de Windows (ETW), filtré sur ce seul jeu. Ces événements, c'est le processus du jeu lui-même qui les écrit en présentant chaque image : cette part du coût tombe donc dans les chiffres du jeu, pas dans ceux de w0a. La taille de cette part n'a pas été mesurée.
Sur un PC plus chargé
Deux mesures ultérieures sur le même PC, le 24 octobre 2026, ont ajouté de la charge autour du faux jeu. Elles ont utilisé des builds plus récents de w0a, publiés ce jour-là, avec les moteurs activés.
- 71 minutes en quatre phases : des threads d'arrière-plan occupaient chaque processeur logique à 50 % ; puis 25 % plus 150 MB/s de lectures disque ; puis 50 % plus 100 MB/s de lectures disque plus un programme de courte durée toutes les 5 secondes ; puis aucune charge ajoutée. Le faux jeu lançait aussi un court programme auxiliaire toutes les 90 secondes, et w0a tournait déjà avant le début. Par phase, w0a a utilisé en moyenne de 0,12 % à 0,17 % d'un processeur logique et de 5,1 à 7,2 Mcycle/s.
- Quatre nouveaux programmes par seconde, en deux mesures de deux minutes et demie : w0a a compté 637 et 648 démarrages par minute. Il a utilisé en moyenne 0,30 % et 0,25 % d'un processeur logique, 14,8 et 14,6 Mcycle/s, 66,9 et 68,0 changements de contexte par seconde, et 117,1 et 116,7 MB de plage de travail. Chaque w0a avait été démarré 90 secondes avant sa mesure, et la compilation du runtime .NET en prenait encore environ 5,3 Mcycle/s.
Chaque programme qui démarre parvient à w0a sous forme d'événement, et w0a examine chacun d'eux ; avec les cœurs réservés activés, il décide aussi s'il écarte le programme des cœurs du jeu. Plus il y a de programmes qui démarrent, plus ce travail augmente. Ces mesures ont utilisé des builds plus récents et une autre charge : ce n'est donc pas une comparaison avant/après avec le tableau ci-dessus.
Ce qui n'a pas été mesuré
- Un vrai jeu. Le jeu ici était un faux jeu qui ne dessine rien. Le coût de w0a à côté d'un vrai jeu n'a pas été mesuré.
- Les temps d'image. On n'a pas mesuré ici si les moteurs changent les temps d'image de ton jeu. Pour le mesurer sur ton propre PC, lance une série A/B dans le benchmark avec A : moteurs désactivés et B : moteurs activés, comme expliqué dans Lire le benchmark.
- D'autres processeurs. Un seul processeur a été mesuré, l'AMD Ryzen 7 9800X3D à 8 cœurs. Sur un processeur avec moins de cœurs ou des cœurs plus lents, le même travail représente une autre part ; de combien, cela n'a pas été mesuré.
- w0a avec sa fenêtre ouverte. La fenêtre est restée fermée tout du long. Fenêtre ouverte, le coût n'a pas été mesuré.
- Carte graphique, disque et réseau. Seuls le temps processeur et la mémoire de w0a ont été mesurés.
- Le travail hors du processus de w0a. Une partie du travail pour faire parvenir les événements à w0a, comme le démarrage d'un programme ou la présentation d'une image, est faite par Windows ou par le jeu, hors du processus de w0a. Cette partie n'a pas été mesurée.
Activer et désactiver les moteurs
Sur une nouvelle installation, tous les moteurs sont désactivés. Ce sont les parties de l'interrupteur Mode Jeu sur la page Process Manager.
Pour voir ce que les moteurs ont fait pendant ton propre jeu, ouvre engine.log : une ligne par action. perf.log, à côté, contient des lignes sur ce que certains d'entre eux ont coûté pendant le jeu. Les deux sont expliqués dans Où se trouve le fichier journal.
À lire aussi
Sur la douzaine d'étapes entre un clic et un pixel qui change, le logiciel en possède trois ; le firmware, l'écran et le jeu se partagent le reste : Comment réduire l'input lag : ce qu'un logiciel peut raccourcir ou non
Cette page t'a-t-elle aidé ?
Qu'est-ce qui manquait, ou qu'est-ce qui n'a pas marché ? Nous lisons chacun de ces messages.
Si cette page n'a pas réglé le problème, écris-nous — dis-nous quel article tu as lu, et nous corrigerons l'article.