Anti Stuttering : Intelligent standby list cleaner (ISLC)
- Messages : 14300
- Inscription : 02 juin 2012 20:48
- Localisation : Thomas Anderson : Je suis dans et en dehors de la matrice :-)

Anti Stuttering : Intelligent standby list cleaner (ISLC)
PREAMBULE :
Sous Windows dont et surtout avec Windows 10 le stuttering dans les jeux (malgré le mode "jeux") peut avoir plusieurs causes
Néanmoins le principal est le fait de fuites mémoires, parfois allié à une quantité de RAM insuffisante
A cela on y ajoute une fonctionnalité qui a débarqué dans Win10
https://blogs.windows.com/windowsexperi ... ild-10525/
Dans Windows 10, nous avons ajouté un nouveau concept de gestion de la mémoire appelé un magasin de compression, qui est une collection de pages compressées en mémoire . Cela signifie que lorsque gestionnaire de mémoire ressent une pression de mémoire, il comprimera les pages inutilisées au lieu de les écrire sur le disque. Cela réduit la quantité de mémoire utilisée par processus, permettant à Windows 10 de maintenir plus d'applications dans la mémoire physique à la fois. Cela contribue également à une meilleure réactivité dans Windows 10. Le magasin de compression est dans le travail du processus du système. Étant donné que le processus système maintient le magasin en mémoire, son ensemble de travail augmente plus précisément lorsque la mémoire est disponible pour d'autres processus. Ceci est visible dans le Gestionnaire des tâches et la raison pour laquelle le processus système semble consommer plus de mémoire que les versions précédentes.
La forte utilisation mémoire par SYSTEM est du fait de la compression de mémoire non utilisée.
Elle doit baisser (se libérer) lorsque le système/processus requiert de la mémoire. Dans les faits ce n'est toujours pas le cas et cela peut être contraignant dans les applis lourdes et pour les joueurs
Cette fonctionnalité est désactivable via une clé de registre (pour info car je n'ai pas les effets secondaires de la manipulation)
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Ndu clé à laquelle on attribue la valeur "4" pour désactiver la fonction
Détails et autres ici : viewtopic.php?t=53292&start=
Bref cela se complexifie
Pour en savoir plus sur la mémoire Mesurer l’utilisation mémoire sur Windows.
BUT DE L'APPLICATION :
L’application surveillera et effacera de la liste, ce qui traine en mémoire dans la "mémoire en cache dite de veille" (liste d'attente, pages modifiées, processus inutiles pour les jeux, ...) si celle-ci est > 1000 Mo (1 Go) ET si la quantité de mémoire est < à 1000 Mo (1Go)
Les paramètres indiquent que les deux conditions doivent être remplies en même temps
Ce n'est pas une programme miracle pour une situation donnée, mais cela a dépanné par mal de personnes confrontées au problème sous divers jeux, même avec 16 Go de RAM
Un visu avec RamMap
Concernant la mémoire de veille :
Quand une application charge un fichier en mémoire celui-ci n'est pas effacé quand elle le ferme, il reste disponible avec une entrée correspondant à "son age" dans une table.
Cette mémoire est disponible, c'est juste qu'elle ne sera donnée qu'en seconde priorité si la mémoire dite "libre" n'est pas suffisante.
Les programmes qui y étaient devront donc être rechargés la prochaine fois,
Elle est seulement utilisée en second lorsque la mémoire libre n'est plus disponible
Dans le cas des joueurs, nombre de programmes stockés qui ne sont pas en relation avec les jeux, ou de de données de jeux obsolètes restent dans le cache qui ne se vide pas
(Vu sous BF1 et BF V suivant les configs)
INSTALLATION
Il suffit de télécharger la dernière version de l'application sur le site Web du développeur (qui est celui de DDU)
Edit : Lien actualisé depuis la sortie de cette présenation
https://www.wagnardsoft.com/ISLC/ISLC%20v1.0.2.6.exe
la version antérieure pouvait poser problème sous certaines configurations de Windows 10
L'auteur suggère une solution https://www.wagnardsoft.com/forums/view ... f=5&t=1256
L'ancienne version fonctionne bien cependant (et surtout n'utilise pas les compteurs de performance)
https://www.wagnardsoft.com/ISLC/ISLC%20v1.0.1.0.exe
puis de l' exécuter afin d' extraire l'archive dans un dossier que l'on peut choisir
Le programme lui-même est portable et peut être exécuté à partir de n'importe quel endroit sans installation.
Cependant l'auteur précise qu'il faut lui donner des droits administrateur avant lancement (clic droit sur le programme ---> Propriétés) ou
On peut suivre l'évolution des divers outils de l'auteur sur
https://forums.geforce.com/default/topi ... 4-2019-/1/
USAGE :
Dans l'absolu il n'y a pas grand chose à faire hormis de cliquer sur "START"
Edit du 05/12/2021 : Néanmoins pour une configuration optimale voir le dernier message de ce sujet
Certaines parties sont modifiables, comme la mémoire à gérer pour que les 2 conditions soient réunies
Idem pour le timer Resolution (dans ce contexte l'auteur ne dit pas quelle est la relation avec son programme)
On peut forcer la fonction (Purge StandByList)
Points négatifs :
Cela fait une tâche de plus en arrière plan. Cependant (chez moi) toutes les 10 secondes j'ai une activité CPU de 0.01 et une conso mémoire constante de 49.9 Mo, donc.. C'est très négligeable
On ne voit pas le détail de ce qui est effacé
Sous Windows dont et surtout avec Windows 10 le stuttering dans les jeux (malgré le mode "jeux") peut avoir plusieurs causes
Néanmoins le principal est le fait de fuites mémoires, parfois allié à une quantité de RAM insuffisante
A cela on y ajoute une fonctionnalité qui a débarqué dans Win10
https://blogs.windows.com/windowsexperi ... ild-10525/
Dans Windows 10, nous avons ajouté un nouveau concept de gestion de la mémoire appelé un magasin de compression, qui est une collection de pages compressées en mémoire . Cela signifie que lorsque gestionnaire de mémoire ressent une pression de mémoire, il comprimera les pages inutilisées au lieu de les écrire sur le disque. Cela réduit la quantité de mémoire utilisée par processus, permettant à Windows 10 de maintenir plus d'applications dans la mémoire physique à la fois. Cela contribue également à une meilleure réactivité dans Windows 10. Le magasin de compression est dans le travail du processus du système. Étant donné que le processus système maintient le magasin en mémoire, son ensemble de travail augmente plus précisément lorsque la mémoire est disponible pour d'autres processus. Ceci est visible dans le Gestionnaire des tâches et la raison pour laquelle le processus système semble consommer plus de mémoire que les versions précédentes.
La forte utilisation mémoire par SYSTEM est du fait de la compression de mémoire non utilisée.
Elle doit baisser (se libérer) lorsque le système/processus requiert de la mémoire. Dans les faits ce n'est toujours pas le cas et cela peut être contraignant dans les applis lourdes et pour les joueurs
Cette fonctionnalité est désactivable via une clé de registre (pour info car je n'ai pas les effets secondaires de la manipulation)
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Ndu clé à laquelle on attribue la valeur "4" pour désactiver la fonction
Détails et autres ici : viewtopic.php?t=53292&start=
Bref cela se complexifie
Pour en savoir plus sur la mémoire Mesurer l’utilisation mémoire sur Windows.
BUT DE L'APPLICATION :
L’application surveillera et effacera de la liste, ce qui traine en mémoire dans la "mémoire en cache dite de veille" (liste d'attente, pages modifiées, processus inutiles pour les jeux, ...) si celle-ci est > 1000 Mo (1 Go) ET si la quantité de mémoire est < à 1000 Mo (1Go)
Les paramètres indiquent que les deux conditions doivent être remplies en même temps
Ce n'est pas une programme miracle pour une situation donnée, mais cela a dépanné par mal de personnes confrontées au problème sous divers jeux, même avec 16 Go de RAM
Un visu avec RamMap
Concernant la mémoire de veille :
Quand une application charge un fichier en mémoire celui-ci n'est pas effacé quand elle le ferme, il reste disponible avec une entrée correspondant à "son age" dans une table.
Cette mémoire est disponible, c'est juste qu'elle ne sera donnée qu'en seconde priorité si la mémoire dite "libre" n'est pas suffisante.
Les programmes qui y étaient devront donc être rechargés la prochaine fois,
Elle est seulement utilisée en second lorsque la mémoire libre n'est plus disponible
Dans le cas des joueurs, nombre de programmes stockés qui ne sont pas en relation avec les jeux, ou de de données de jeux obsolètes restent dans le cache qui ne se vide pas
(Vu sous BF1 et BF V suivant les configs)
INSTALLATION
Il suffit de télécharger la dernière version de l'application sur le site Web du développeur (qui est celui de DDU)
Edit : Lien actualisé depuis la sortie de cette présenation
https://www.wagnardsoft.com/ISLC/ISLC%20v1.0.2.6.exe
la version antérieure pouvait poser problème sous certaines configurations de Windows 10
L'auteur suggère une solution https://www.wagnardsoft.com/forums/view ... f=5&t=1256
L'ancienne version fonctionne bien cependant (et surtout n'utilise pas les compteurs de performance)
https://www.wagnardsoft.com/ISLC/ISLC%20v1.0.1.0.exe
puis de l' exécuter afin d' extraire l'archive dans un dossier que l'on peut choisir
Le programme lui-même est portable et peut être exécuté à partir de n'importe quel endroit sans installation.
Cependant l'auteur précise qu'il faut lui donner des droits administrateur avant lancement (clic droit sur le programme ---> Propriétés) ou
On peut suivre l'évolution des divers outils de l'auteur sur
https://forums.geforce.com/default/topi ... 4-2019-/1/
USAGE :
Dans l'absolu il n'y a pas grand chose à faire hormis de cliquer sur "START"
Edit du 05/12/2021 : Néanmoins pour une configuration optimale voir le dernier message de ce sujet
Certaines parties sont modifiables, comme la mémoire à gérer pour que les 2 conditions soient réunies
Idem pour le timer Resolution (dans ce contexte l'auteur ne dit pas quelle est la relation avec son programme)
On peut forcer la fonction (Purge StandByList)
Points négatifs :
Cela fait une tâche de plus en arrière plan. Cependant (chez moi) toutes les 10 secondes j'ai une activité CPU de 0.01 et une conso mémoire constante de 49.9 Mo, donc.. C'est très négligeable
On ne voit pas le détail de ce qui est effacé
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
- Only Amiga... Was possible !
- « Un problème sans solution est un problème mal posé. » (Albert Einstein)
- « Tous les patients mentent » (Théorème du Docteur House) Que ce soit consciemment ou inconsciemment
- Jeff Goldblum dans Informatic Park, professeur adepte de la théorie du chaos : « Vous utilisez un crack, un keygen ? Qu’est-ce qui pourrait mal tourner?? »
- Captcha : Il s'agit d'un ordinateur qui demande à un humain de prouver.. qu'il n'est pas un ordinateur ! (Les prémices du monde de demain)
- Dans le monde il y a deux sortes de gens : Ceux qui font des sauvegardes et .. Ceux qui vont faire des sauvegardes (Extrait du Credo.. Telle est la voie ! )
- « Un problème sans solution est un problème mal posé. » (Albert Einstein)
- « Tous les patients mentent » (Théorème du Docteur House) Que ce soit consciemment ou inconsciemment
- Jeff Goldblum dans Informatic Park, professeur adepte de la théorie du chaos : « Vous utilisez un crack, un keygen ? Qu’est-ce qui pourrait mal tourner?? »
- Captcha : Il s'agit d'un ordinateur qui demande à un humain de prouver.. qu'il n'est pas un ordinateur ! (Les prémices du monde de demain)
- Dans le monde il y a deux sortes de gens : Ceux qui font des sauvegardes et .. Ceux qui vont faire des sauvegardes (Extrait du Credo.. Telle est la voie ! )
- Messages : 113606
- Inscription : 10 sept. 2005 13:57
Re: Anti Stuttering : Intelligent standby list cleaner (ISLC)
Merci intéressant =)
Liens connexes :
Windows 10 : Forte utilisation mémoire SYSTEM
Résoudre la forte utilisation disque par SYSTEM sur Windows 10
Liens connexes :
Windows 10 : Forte utilisation mémoire SYSTEM
Résoudre la forte utilisation disque par SYSTEM sur Windows 10
Première règle élémentaire de sécurité : on réfléchit puis on clic et pas l'inverse - Les fichiers/programmes c'est comme les bonbons, quand ça vient d'un inconnu, on n'accepte pas !
➔ Comment protéger son PC des virus
➔ Windows 11 : Compatibilité, Configuration minimale requise, télécharger ISO et installer Windows 11
Comment demander de l'aide sur le forum
Partagez malekal.com : n'hésitez pas à partager les articles qui vous plaisent sur la page Facebook du site.
➔ Comment protéger son PC des virus
➔ Windows 11 : Compatibilité, Configuration minimale requise, télécharger ISO et installer Windows 11
Comment demander de l'aide sur le forum
Partagez malekal.com : n'hésitez pas à partager les articles qui vous plaisent sur la page Facebook du site.
- Messages : 14300
- Inscription : 02 juin 2012 20:48
- Localisation : Thomas Anderson : Je suis dans et en dehors de la matrice :-)

Re: Anti Stuttering : Intelligent standby list cleaner (ISLC)
On peut également avec https://wj32.org/wp/software/empty-standby-list/ se créer une tâche via le gestionnaire de tâches mais cela fait apparaitre pendant une seconde une petite fenêtre cmd qui peut perturber
Avec l'outil ISLC, l'avantage c'est que l'on peut lancer et stopper le processus lorsqu'on le souhaite, et surtout définir une plage mémoire d'usage qui ne s'activera pour le nettoyage que si besoin est
Avec l'outil ISLC, l'avantage c'est que l'on peut lancer et stopper le processus lorsqu'on le souhaite, et surtout définir une plage mémoire d'usage qui ne s'activera pour le nettoyage que si besoin est
- Only Amiga... Was possible !
- « Un problème sans solution est un problème mal posé. » (Albert Einstein)
- « Tous les patients mentent » (Théorème du Docteur House) Que ce soit consciemment ou inconsciemment
- Jeff Goldblum dans Informatic Park, professeur adepte de la théorie du chaos : « Vous utilisez un crack, un keygen ? Qu’est-ce qui pourrait mal tourner?? »
- Captcha : Il s'agit d'un ordinateur qui demande à un humain de prouver.. qu'il n'est pas un ordinateur ! (Les prémices du monde de demain)
- Dans le monde il y a deux sortes de gens : Ceux qui font des sauvegardes et .. Ceux qui vont faire des sauvegardes (Extrait du Credo.. Telle est la voie ! )
- « Un problème sans solution est un problème mal posé. » (Albert Einstein)
- « Tous les patients mentent » (Théorème du Docteur House) Que ce soit consciemment ou inconsciemment
- Jeff Goldblum dans Informatic Park, professeur adepte de la théorie du chaos : « Vous utilisez un crack, un keygen ? Qu’est-ce qui pourrait mal tourner?? »
- Captcha : Il s'agit d'un ordinateur qui demande à un humain de prouver.. qu'il n'est pas un ordinateur ! (Les prémices du monde de demain)
- Dans le monde il y a deux sortes de gens : Ceux qui font des sauvegardes et .. Ceux qui vont faire des sauvegardes (Extrait du Credo.. Telle est la voie ! )
- Messages : 113606
- Inscription : 10 sept. 2005 13:57
Re: Anti Stuttering : Intelligent standby list cleaner (ISLC)
Merci.
Je ferai un article dans le système sur les outils pour gérer la mémoire de Windows =)
Je ferai un article dans le système sur les outils pour gérer la mémoire de Windows =)
Première règle élémentaire de sécurité : on réfléchit puis on clic et pas l'inverse - Les fichiers/programmes c'est comme les bonbons, quand ça vient d'un inconnu, on n'accepte pas !
➔ Comment protéger son PC des virus
➔ Windows 11 : Compatibilité, Configuration minimale requise, télécharger ISO et installer Windows 11
Comment demander de l'aide sur le forum
Partagez malekal.com : n'hésitez pas à partager les articles qui vous plaisent sur la page Facebook du site.
➔ Comment protéger son PC des virus
➔ Windows 11 : Compatibilité, Configuration minimale requise, télécharger ISO et installer Windows 11
Comment demander de l'aide sur le forum
Partagez malekal.com : n'hésitez pas à partager les articles qui vous plaisent sur la page Facebook du site.
- Messages : 113606
- Inscription : 10 sept. 2005 13:57
Re: Anti Stuttering : Intelligent standby list cleaner (ISLC)
Première règle élémentaire de sécurité : on réfléchit puis on clic et pas l'inverse - Les fichiers/programmes c'est comme les bonbons, quand ça vient d'un inconnu, on n'accepte pas !
➔ Comment protéger son PC des virus
➔ Windows 11 : Compatibilité, Configuration minimale requise, télécharger ISO et installer Windows 11
Comment demander de l'aide sur le forum
Partagez malekal.com : n'hésitez pas à partager les articles qui vous plaisent sur la page Facebook du site.
➔ Comment protéger son PC des virus
➔ Windows 11 : Compatibilité, Configuration minimale requise, télécharger ISO et installer Windows 11
Comment demander de l'aide sur le forum
Partagez malekal.com : n'hésitez pas à partager les articles qui vous plaisent sur la page Facebook du site.
- Messages : 14300
- Inscription : 02 juin 2012 20:48
- Localisation : Thomas Anderson : Je suis dans et en dehors de la matrice :-)

Re: Anti Stuttering : Intelligent standby list cleaner (ISLC)
Mis à jour du lien de téléchargement avec la version V.1.0.2.6 dans le premier message de ce sujet
FAQ tirée des discussions sur le forum de Wagnard
https://www.wagnardsoft.com/forums/view ... =18&t=1256
______________
Mon PC se fige (plutôt un, microfreeze) lorsqu'ISLC purge la mémoire automatiquement
Ceci est normal sur les petites configurations avec disque dur, surtout si ISLC est installé ailleurs que sur le disque C et c'est lié à Windows
Sinon essayer des valeurs de 510 Mo pour commencer, et doubler cette valeur jusqu'à l'arrivée du micro freeze
Idem pour le polling rate. il vaut mieux laisser le paramètre par défaut (1000ms)
Qu'est ce que je dois modifier dans les paramètres avec 16 Gb de mémoire
Rien
Les valeurs "1024" pour les configuration avec 16 et 32 Gb de mémoire sont optimales
Avec 8 Gb on peut définir une valeur de 512
Mais chacun peut ajuster en fonction des besoins
ISLC ne fonctionne pas
Outre le .net installé et à jour, ISLC ne peut bien fonctionner que Si les valeurs des compteurs de performances existent ou ne sont pas corrompues
Exemple de message d'erreur :
Pour reconstruire manuellement les valeurs de bibliothèque de compteurs de performance
Ouvrir une fenêter CMD en mode administrateur et taper la commande 2 fois (une après chaque reboot) surtout si vous avez le message d'erreur
"ERROR: UNABLE TO REBUILD PERFORMANCE COUNTER SETTING FROM SYSTEM BACKUP STORE. ERROR CODE IS 2"
LODCTR /R et relancer l'ordinateur (sans démarrage rapide)
Pour rappel, la commande globale est (pas nécessaire pour ISLC) :
Reconstitution des compteurs :
cd c:\windows\system32
lodctr /R
cd c:\windows\sysWOW64
lodctr /R
La commande suivante est plus liée à la reconstruction et le bon fonctionnement général, et n'est pas nécessaire pour ISLC
Resynchronisation des compteurs avec Windows Management Instrumentation (WMI) :
WINMGMT.EXE /RESYNCPERF
Si cela ne fonctionne pas, ou que vous avez désactivé les compteurs de performances :
Toujours dans une fenêtre CMD en mode administrateur, vérifier que le compteur a correctement été ajouté au registre.
lodctr /Q et vérifier si la valeur est sur Enabled"
En plus précis : lodctr /q | find "Disabled" (ce qui n'affichera que les valeurs désactivées)
Par ex si la commande lodctr /q | find "Disabled" retoune
[ PerfDisk ] Compteurs de performances (désactivés)
[ PerfOS ] Compteurs de performances (désactivés)
Il suffit pour chaque compteur désactivé de taper la commande
lodctr /e:PerfDisk
lodctr /e:PerfOS
et de faire la même chose pour ceux qui vous intéressent
Les 4 valeurs « First Counter », « Last Counter », « First Help », « Last Help » listées par la commande doivent correspondre à celles présentes dans le registre.
On peut trouver ces valeurs ici :
%servicename% représente tout service avec un compteur de performances. Par exemple : PerfDisk, PerfOS, etc.
Il peut y avoir des clés de registre pour "DisablePerformanceCounters" dans l'un de ces emplacements.
Conformément à l'article TechNet (voir lien plus bas) cette valeur doit être définie sur 0. Si la valeur est autre que 0, le compteur peut être désactivé.
Pour ISLC si le compteur de performances est désactivé, exécutez la commande lodctr /e:PerfOS pour l'activer.
lodctr /e:PerfOS
Relancer l'ordinateur
Pour les autres problèmes liés aux compteurs de performances et non à ISLC
https://docs.microsoft.com/en-US/troubl ... e-counters
Si il est impossible de réparer les compteurs, c'est que Windows est endommagé ou que vous avez trop "bidouillé" celui ci
Donc soit il faudra passer par une réparation https://www.malekal.com/reparer-windows ... e-donnees/
soit désactiver les compteurs via une clé de registre
et de mettre "Disable performance counters" à "0"
Il est impossible de faire démarrer automatiquement ISLC avec Windows via le planificateur de tâches
Il faut exécuter le programme en tant qu'administrateur (clic droit sur le programme) et ajouter un délai au chargement (5 à 10 secondes par exemple), pour qu'ISLC se charge APRES Exlorer
Manipulation
Ouvrir le planificateur de tâches
---> Action > Créer une tâche
---> Donnez-lui un nom sous Général et cochez "Exécuter avec les privilèges les plus élevés" en bas
---> Onglet Déclencheurs> Nouveau > Au démarrage
---> Onglet Actions > Nouveau > Démarrer un programme - choisissez ISLC
Ne pas oublier de cocher la case "démarrer minimisé"
Ne pas oublier de cocher également la case pour autoriser l'exécution avec des privilèges plus élevés
Est ce qu 'ISLC génère des écritures inutiles sur le SSD ?
Non, cela ne touche aucune donnée sur aucun lecteur
Est ce que le polling rate est pour la souris ?
Non, il s'agit de la fréquence à laquelle le programme va vérifier l'état de la mémoire
Le programme fonctionne en mode manuel, mais mais ne veut pas nettoyer automatiquement
C'est normal.
Si on prend l'exemple de la configuration par défaut, rie n'est nettoyé si on dispose de plus de 1024 Mo de mémoire libre
Il faut les 2 conditions pour que cela fonctionne
Est-ce que je peux me faire bannir par un programme anti triche dans mes jeux ?
Pour faire simple : NON
Par contre certains programmes comme GameGuard n'aiment pas qu'ISLC soient lancés avant eux
Solution : Mettre ces programmes dans les exceptions d'ISLC
Peut il y avoir un conflit avec SuperFetch ?
Non les deux programmes n'ont pas les mêmes finalités (sur un SSD superfetch n'est pas utile, même si les techs de Microsoft ne sont pas tous d'accord sur ce point)
La mémoire libérée indique "0" (zéro) et semble bloquée
C'est normal
Le processus suivant les configurations peut prendre jusqu'à une minute
la liste d'exclusion empêche ISLC de se purger lorsqu'un processus de cette liste est en cours d'exécution.
Quand est-ce utile? Pour quel scénario est-il censé être utilisé, par exemple ?
Certaines applications ou certains jeux peuvent s'exécuter ou se charger davantage à partir du disque dur lorsque le cache est vidé, car ils sont programmés pour l'utiliser.
Il suffit de mettre une application en exclusion lorsque l'on pense qu' ISLC fait plus de mal que de bien pour cette application/jeu.
La liste d'exclusion sert à empêcher l'ISLC de purger la liste de réserve (faisant son travail) s'il détecte un processus que vous avez ajouté dans l'exclusion.
Si vous ajoutez disons explorer.exe, la mémoire ne sera jamais nettoyée lorsque vous jouerez par exmeple au jeu Warzone.
L'exclusion est vraiment à utiliser sur les jeux/programmes qui bénéficient d'une énorme liste de veille et que le nettoyage de la liste entraîne plus une perte de performances qu'un gain (Ce qui est le cas si le jeu/programme doit recharger des fichiers en permanence)
Pour résumer : L'exclusion est à utiliser uniquement lorsqu'il existe une application ou un jeu incompatible avec celle-ci. Ainsi, lorsque ce jeu ou cette application sera lancé, ISLC cessera de faire son travail.
le Timer résolution indique une valeur autre que 0.5ms (par ex 0.4482ms) est ce normal ?
Ce timer est liés aux pilotes etc, et ceux ci peuvent influer, idem pour ceux qui activent le HPET ou le forcent à travers Windows (le HPET est activé par défaut dans le bios/uefi et il ne faut pas y toucher du moins sous Windows 10 et idem via BCDEDIT sauf pour certains cas ou utilisations en combinaison avec les autres timers, comme la MAO ou jeux)
https://www.malekal.com/optimiser-boost ... tiver_HPET
Une valeur inférieure à 0,5 ms dans les systèmes modernes "peut" rendre un peu plus rapide et réactif le PC .
Néanmoins l'interrogation ne doit pas être trop faible/basse car il faut un peu d'utilisation du processeur pour interroger les informations de la mémoire.
Il faut cependant savoir que la valeur de l'intervalle de minuterie (Timer resolution) n'est en aucun cas liée au matériel.
Cette valeur d'intervalle est définie par une fonction du noyau Windows.
Dans la plupart des versions de Windows 10, les valeurs d'intervalle de minuterie sont calculées comme l'inverse des puissances de deux.
Par exemple, l'intervalle par défaut de 15,625 ms est calculé comme 1/(2**6), et l'intervalle le plus bas possible de 0,48828125 ms est calculé comme 1/(2**11).
C'est pour cette raison que vous ne verrez jamais des valeurs telles que 0,5, 1,0, 15,0 ms, etc.
Il y a cependant un lien avec le HPET, mais cela fera l'objet d'un article à part car il s'agit d'un gros morceau
Existe il des alternatives ?
Oui avec certains programmes de Sysinternals (RamMap) https://www.malekal.com/mesurer-lutilis ... r-windows/
ou
https://www.mediafire.com/file/r5p3icyv ... e.zip/file
Pour tout configurer, exécutez 'setup.bat' dans une invite de commande en mode administrateur
Pour tout nettoyer, exécutez 'cleanup.bat' dans une invite de commande en mode administrateur
Pour ceux qui veulent voir ce qui se passe derrière :
L'auteur, AVEYO, est bien connu pour ses nombreux scripts de qualités
https://pastebin.com/u/aveyo
Quelle est la différence avec l'outil ISLC ?
Pour les aspects techniques et discussions
https://forums.guru3d.com/threads/fix-g ... st-5590668
Est ce que ISLC fonctionne sous Windows 11 ?
Windows 11 ne gère pas mieux la mémoire donc ISLC est toujours préconisé
Une version en beta est dispo ici https://www.wagnardsoft.com/ISLC/ISLC%20v1.0.2.6.exe Edit: La version définitive est sortie
La fonction "enable customer timer resolution doit être désactivée au lancement (donc si activée, la désactiver et relancer)
Est ce que ISLC fonctionne sous Windows 11 et les nouvelles générations de processeurs ?
Lorsque l' IGPU est actif sur W11 avec Alder Lake, ISLC ne démarre pas
L'observateur d'événements renvoie l'erreur "Chemin du module défaillant : C:\Windows\SYSTEM32\ControlLib.dll".
La désactivation de l'IGPU dans le gestionnaire de périphériques résous le problème
Pourquoi Microsoft ne force-t-il pas 0,5 au lieu de 1 dans les jeux si c'est mieux ?
L'une des raisons est l'utilisation de la batterie pour les appareils mobiles/ordinateurs portables.
Est ce que l'on peut modifier/forcer cette valeur pour indique 0.5 via la clé de registre ?
Non. L'appel à cette fonction s'effectue via une API Win32
J'ai activé ISLC mais j'ai toujours autant de latence malgré le fait que j'ai défini la valeur 0.5 ms à Timer Résolution
Sur certaines configurations (sauf Windows 7 mais il est devenu obsolète) le fait que EnableLUA soit sur 0 pose problème
Il faut donc changer la valeur dans le registre et la placer sur 1 (qui est la valeur par défaut il faut se le rappeler)
EnableLUA doit être défini sur 1
Pour d'autres, en plus de LUA à 1 il faut désactiver l'UAC sur le panneau de configuration
Il faut se rappeler que la clé enableLUA désactive totalement le contrôle de compte utilisateur pour la machine.
Le contrôle de compte utilisateur est appliqué à tous les utilisateurs.
Cela va donc plus loin que de désactiver l'UAC et est moins sécurisé.
En plus cela peut sous windows 10 apporter des effets secondaires
Par ex il est possible que les applications du store ne se lancent pas
Meme la calculatrice ne se lancera pas
De mon point de vue je ne suis pas partisan de toucher à ce qui est lié à la sécurité
Donc se méfier des programmes d'optimisation qui vous demandent de désactiver tout cela
Il a été vu également que lors d'un passage de Win7 à Win11, la valeur "0" qui avait été définie sous Win7 n'avait pas été rétablié à "1" (qui est la valeur par défaut sous Win10)
Certains prograpmmes peuvent également mettre le bazar
Par ex il a été constaté qu'avec iCUE 4 (CORSAIR Utility Engine) pour les claviers, souris, tapis de souris, casques audio, boîtiers, systèmes de surveillance, systèmes d'éclairage,
On voit là le lancement de iCUE4, puis d'ISLC qui essaie de prendre la main. Ensuite iCUE4 reprend le dessus
Est ce que ISLC corrige les fuites mémoire ?
NON
ISLC intervient pour libérer de la mémoire qui peut etre saturée du fait des fuites mémoire
ISLC version 1.0.2.8 ne fonctionne pas et affiche un message d'erreur
Il faut installer .net 4.8
Mais même si .net 4.8 est installé, sous Windows 7 on peut avoir ce message d'erreur avec ISLC 1.0.2.8
(La version 1.0.2.7 fonctionne ou même la version 1.0.2.6)
Solution :
- Pour l'instant il faut revenir à la version 1.0.2.7 (Pour Windows 7, car la version 1.0.2.8 fonctionne bien sous Windows 10 et 11)
Concernant la version 1.0.2.7
https://www.wagnardsoft.com/ISLC/ISLC%20v1.0.2.7.exe
ChangeLog :- Correction d'un problème avec la "Liste d'exclusion
Pour les autres versions de WIndows, s'assurer que .net est à jour (on peut le vérifier de plusieurs manières mais celle avec Regedit fonctionne - voir plus bas pour le lien Microsoft)
Pour Windows 7 et les problèmes liés à .net Framework (mais il est déconseillé de garder cette version obsolète de windows ) en cas de problèmes voir cette page
https://www.malekal.com/erreur-mise-a-j ... windows-7/
Petite astuce :
BIen vérifier que certains services Windows sont démarrés
- Programme d'installation pour les modules windows
- Service de transfert intelligent en arrière plan
- Windows Installer
- Windows update
ATTENTION ! (en attendant une mise à jour) le lien ci dessus fait état de la version 4.7 qui n'est plus disponible sur le site Microsoft, car remplacée par la version 4.8
Pour rappel il est impératif d'installer la version offline en anglais (et pas la version Web installer), avant d'installer une autre langue
La version hors ligne de .net 4.8 pour Windows (toutes versions dont Windows 7) et version de langue
https://dotnet.microsoft.com/en-us/down ... work/net48
ATTENTION (Bis) Si on se réfère au tableau
https://learn.microsoft.com/fr-fr/dotne ... quirements
La version 4.8.1 n'est pas compatible windows 7
Si on veut savoir si la version 4.8 est installée (source Microsoft)
https://learn.microsoft.com/fr-fr/dotne ... -installed
La version de .NET Framework (4.5 et ultérieure) installée sur un ordinateur est répertoriée dans le Registre sous
Si la sous-clé Complète est manquante, cela signifie que .NET Framework 4.5 ou version ultérieure n’est pas installé.
Exemple avec WIndows 7
RAPPEL :
Dans Windows 7 SP1 et Windows Server 2008 R2 SP1, la mise à jour pour Microsoft.NET Framework 4.8 (KB4503548) s'affiche en tant que produit installé sous Programmes et fonctionnalités dans le Panneau de configuration.
Les versions définitives de la v 1.0.2.6, 1.0.2.7 et v1.0.2.8 ont été testées sous Win7 pro, Win8 et Win10 21H1/21H2 pro, et fonctionnent (tests personels) SAUF la version 1.0.2.8 sous WIndows 7 Pro ( .net 4.8 installé, mais ISLC indique un message d'erreur)
FAQ tirée des discussions sur le forum de Wagnard
https://www.wagnardsoft.com/forums/view ... =18&t=1256
______________
Mon PC se fige (plutôt un, microfreeze) lorsqu'ISLC purge la mémoire automatiquement
Ceci est normal sur les petites configurations avec disque dur, surtout si ISLC est installé ailleurs que sur le disque C et c'est lié à Windows
Sinon essayer des valeurs de 510 Mo pour commencer, et doubler cette valeur jusqu'à l'arrivée du micro freeze
Idem pour le polling rate. il vaut mieux laisser le paramètre par défaut (1000ms)
Qu'est ce que je dois modifier dans les paramètres avec 16 Gb de mémoire
Rien
Les valeurs "1024" pour les configuration avec 16 et 32 Gb de mémoire sont optimales
Avec 8 Gb on peut définir une valeur de 512
Mais chacun peut ajuster en fonction des besoins
ISLC ne fonctionne pas
Outre le .net installé et à jour, ISLC ne peut bien fonctionner que Si les valeurs des compteurs de performances existent ou ne sont pas corrompues
Exemple de message d'erreur :
Pour reconstruire manuellement les valeurs de bibliothèque de compteurs de performance
Ouvrir une fenêter CMD en mode administrateur et taper la commande 2 fois (une après chaque reboot) surtout si vous avez le message d'erreur
"ERROR: UNABLE TO REBUILD PERFORMANCE COUNTER SETTING FROM SYSTEM BACKUP STORE. ERROR CODE IS 2"
LODCTR /R et relancer l'ordinateur (sans démarrage rapide)
Pour rappel, la commande globale est (pas nécessaire pour ISLC) :
Reconstitution des compteurs :
cd c:\windows\system32
lodctr /R
cd c:\windows\sysWOW64
lodctr /R
La commande suivante est plus liée à la reconstruction et le bon fonctionnement général, et n'est pas nécessaire pour ISLC
Resynchronisation des compteurs avec Windows Management Instrumentation (WMI) :
WINMGMT.EXE /RESYNCPERF
Si cela ne fonctionne pas, ou que vous avez désactivé les compteurs de performances :
Toujours dans une fenêtre CMD en mode administrateur, vérifier que le compteur a correctement été ajouté au registre.
lodctr /Q et vérifier si la valeur est sur Enabled"
En plus précis : lodctr /q | find "Disabled" (ce qui n'affichera que les valeurs désactivées)
Par ex si la commande lodctr /q | find "Disabled" retoune
[ PerfDisk ] Compteurs de performances (désactivés)
[ PerfOS ] Compteurs de performances (désactivés)
Il suffit pour chaque compteur désactivé de taper la commande
lodctr /e:PerfDisk
lodctr /e:PerfOS
et de faire la même chose pour ceux qui vous intéressent
Les 4 valeurs « First Counter », « Last Counter », « First Help », « Last Help » listées par la commande doivent correspondre à celles présentes dans le registre.
On peut trouver ces valeurs ici :
Code : Tout sélectionner
HKLM\System\CurrentControlSet\Services\%servicename%\Performance
Il peut y avoir des clés de registre pour "DisablePerformanceCounters" dans l'un de ces emplacements.
Conformément à l'article TechNet (voir lien plus bas) cette valeur doit être définie sur 0. Si la valeur est autre que 0, le compteur peut être désactivé.
Pour ISLC si le compteur de performances est désactivé, exécutez la commande lodctr /e:PerfOS pour l'activer.
lodctr /e:PerfOS
Relancer l'ordinateur
Pour les autres problèmes liés aux compteurs de performances et non à ISLC
https://docs.microsoft.com/en-US/troubl ... e-counters
Si il est impossible de réparer les compteurs, c'est que Windows est endommagé ou que vous avez trop "bidouillé" celui ci
Donc soit il faudra passer par une réparation https://www.malekal.com/reparer-windows ... e-donnees/
soit désactiver les compteurs via une clé de registre
Code : Tout sélectionner
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib
Il est impossible de faire démarrer automatiquement ISLC avec Windows via le planificateur de tâches
Il faut exécuter le programme en tant qu'administrateur (clic droit sur le programme) et ajouter un délai au chargement (5 à 10 secondes par exemple), pour qu'ISLC se charge APRES Exlorer
Manipulation
Ouvrir le planificateur de tâches
---> Action > Créer une tâche
---> Donnez-lui un nom sous Général et cochez "Exécuter avec les privilèges les plus élevés" en bas
---> Onglet Déclencheurs> Nouveau > Au démarrage
---> Onglet Actions > Nouveau > Démarrer un programme - choisissez ISLC
Ne pas oublier de cocher la case "démarrer minimisé"
Ne pas oublier de cocher également la case pour autoriser l'exécution avec des privilèges plus élevés
Est ce qu 'ISLC génère des écritures inutiles sur le SSD ?
Non, cela ne touche aucune donnée sur aucun lecteur
Est ce que le polling rate est pour la souris ?
Non, il s'agit de la fréquence à laquelle le programme va vérifier l'état de la mémoire
Le programme fonctionne en mode manuel, mais mais ne veut pas nettoyer automatiquement
C'est normal.
Si on prend l'exemple de la configuration par défaut, rie n'est nettoyé si on dispose de plus de 1024 Mo de mémoire libre
Il faut les 2 conditions pour que cela fonctionne
Est-ce que je peux me faire bannir par un programme anti triche dans mes jeux ?
Pour faire simple : NON
Par contre certains programmes comme GameGuard n'aiment pas qu'ISLC soient lancés avant eux
Solution : Mettre ces programmes dans les exceptions d'ISLC
Peut il y avoir un conflit avec SuperFetch ?
Non les deux programmes n'ont pas les mêmes finalités (sur un SSD superfetch n'est pas utile, même si les techs de Microsoft ne sont pas tous d'accord sur ce point)
La mémoire libérée indique "0" (zéro) et semble bloquée
C'est normal
Le processus suivant les configurations peut prendre jusqu'à une minute
la liste d'exclusion empêche ISLC de se purger lorsqu'un processus de cette liste est en cours d'exécution.
Quand est-ce utile? Pour quel scénario est-il censé être utilisé, par exemple ?
Certaines applications ou certains jeux peuvent s'exécuter ou se charger davantage à partir du disque dur lorsque le cache est vidé, car ils sont programmés pour l'utiliser.
Il suffit de mettre une application en exclusion lorsque l'on pense qu' ISLC fait plus de mal que de bien pour cette application/jeu.
La liste d'exclusion sert à empêcher l'ISLC de purger la liste de réserve (faisant son travail) s'il détecte un processus que vous avez ajouté dans l'exclusion.
Si vous ajoutez disons explorer.exe, la mémoire ne sera jamais nettoyée lorsque vous jouerez par exmeple au jeu Warzone.
L'exclusion est vraiment à utiliser sur les jeux/programmes qui bénéficient d'une énorme liste de veille et que le nettoyage de la liste entraîne plus une perte de performances qu'un gain (Ce qui est le cas si le jeu/programme doit recharger des fichiers en permanence)
Pour résumer : L'exclusion est à utiliser uniquement lorsqu'il existe une application ou un jeu incompatible avec celle-ci. Ainsi, lorsque ce jeu ou cette application sera lancé, ISLC cessera de faire son travail.
le Timer résolution indique une valeur autre que 0.5ms (par ex 0.4482ms) est ce normal ?
Ce timer est liés aux pilotes etc, et ceux ci peuvent influer, idem pour ceux qui activent le HPET ou le forcent à travers Windows (le HPET est activé par défaut dans le bios/uefi et il ne faut pas y toucher du moins sous Windows 10 et idem via BCDEDIT sauf pour certains cas ou utilisations en combinaison avec les autres timers, comme la MAO ou jeux)
https://www.malekal.com/optimiser-boost ... tiver_HPET
Une valeur inférieure à 0,5 ms dans les systèmes modernes "peut" rendre un peu plus rapide et réactif le PC .
Néanmoins l'interrogation ne doit pas être trop faible/basse car il faut un peu d'utilisation du processeur pour interroger les informations de la mémoire.
Il faut cependant savoir que la valeur de l'intervalle de minuterie (Timer resolution) n'est en aucun cas liée au matériel.
Cette valeur d'intervalle est définie par une fonction du noyau Windows.
Dans la plupart des versions de Windows 10, les valeurs d'intervalle de minuterie sont calculées comme l'inverse des puissances de deux.
Par exemple, l'intervalle par défaut de 15,625 ms est calculé comme 1/(2**6), et l'intervalle le plus bas possible de 0,48828125 ms est calculé comme 1/(2**11).
C'est pour cette raison que vous ne verrez jamais des valeurs telles que 0,5, 1,0, 15,0 ms, etc.
Il y a cependant un lien avec le HPET, mais cela fera l'objet d'un article à part car il s'agit d'un gros morceau
Existe il des alternatives ?
Oui avec certains programmes de Sysinternals (RamMap) https://www.malekal.com/mesurer-lutilis ... r-windows/
ou
https://www.mediafire.com/file/r5p3icyv ... e.zip/file
Pour tout configurer, exécutez 'setup.bat' dans une invite de commande en mode administrateur
Pour tout nettoyer, exécutez 'cleanup.bat' dans une invite de commande en mode administrateur
Pour ceux qui veulent voir ce qui se passe derrière :
Code : Tout sélectionner
/* 2 > nul || titre FreeStandbyMemory.bat par AveYo v2019.06.01
@ écho désactivé || extrait de compilation csc, planification avancée, add_remove intégré - MISE À JOUR : détection de mémoire libre fiable
définir /a CLEAR_EVERY_MINUTES=1
définir /a CLEAR_WHEN_UNDER_MB=512
définir /a CLEAR_SYSTEMCACHEWS=0
:: check_admin_rights
requête reg "HKEY_USERS\S-1-5-20\Environment" /v TEMP > nul 2 > nul || (
couleur 0e & echo . & echo PERMISSION REFUSÉE ! Cliquez avec le bouton droit sur % ~nx0 ^& Exécuter en tant qu'administrateur
timeout /t -1 & couleur 0f & titre % COMSPEC % & exit /b
)
:: add_remove chaque fois que le script est exécuté à nouveau
schtasks /query /tn FreeStandbyMemory > nul 2 > nul && (
écho .
schtasks /Delete /TN "FreeStandbyMemory" /f 2 > nul
reg delete HKLM\Software\AveYo /v FreeStandbyMemory /f 2 > nul
del /f /q " % Windir % \FreeStandbyMemory.exe" 2 > nul
couleur 0b & écho . & echo SUPPRIMÉ ! Exécutez à nouveau le script pour recompiler et ajouter une planification !
timeout /t -1 & couleur 0f & titre % COMSPEC % & sortie /b
)
:: compiler l'extrait c#
pushd % ~dp0
del /f /q FreeStandbyMemory.exe > nul 2 > nul
for /f "tokens=* delims=" %% v in ( ' dir /b /s /a:-d /o:-n " % Windir % \Microsoft.NET\*csc.exe"' ) do set " csc=" %% v ""
% csc % /out:FreeStandbyMemory.exe /target:winexe /platform:anycpu /optimize /nologo " % ~f0 "
si pas exister FreeStandbyMemory.exe de ERROR ! Échec de la compilation de l'extrait de code c# et du délai d'attente /t -1 et de la sortie /b
écho | set /p=FreeStandbyMemory.exe & copy /y FreeStandbyMemory.exe " % Windir % \FreeStandbyMemory.exe" & set "OUTDIR= % Windir % "
s'il pas n'existe " % Windir % \FreeStandbyMemory.exe" echo ATTENTION ! Impossible de copier FreeStandbyMemory.exe dans % Windir % \ & définir "OUTDIR= % CD % "
:: configurer un calendrier avancé - peut se permettre une priorité plus élevée après le passage de wmi à winapi
définir "task_run= % OUTDIR % \FreeStandbyMemory.exe % CLEAR_WHEN_UNDER_MB % % CLEAR_SYSTEMCACHEWS % "
set "schedule=/Create /RU "System" /NP /RL HIGHEST /F /SD "01/01/2001" /ST "01:00:00" "
schtasks % planning % /SC MINUTE /MO % CLEAR_EVERY_MINUTES % /TN "FreeStandbyMemory" /TR " % task_run % "
set "sset=$s=New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries -Priority 1 -StartWhenAvailable;"
set "stopexisting=$s.CimInstanceProperties['MultipleInstances'].Value=3;"
powershell -noprofile -c " % sset % % stopexisting % $null=Set-ScheduledTask -TaskName FreeStandbyMemory -Settings $s"
:: déclencher la tâche, forcer un effacement manuel et terminer la configuration
schtasks /Run /TN "FreeStandbyMemory"
écho .
echo Effacement de StandbyMemory toutes les % CLEAR_EVERY_MINUTES % minutes UNIQUEMENT si la mémoire libre est inférieure à % CLEAR_WHEN_UNDER_MB % Mo
echo Peut forcer un effacement manuellement à partir de l'invite de commande ( Admin ) en entrant : freestandbymemory
écho .
echo AJOUTÉ ! Exécutez à nouveau "% ~nx0 " pour supprimer l'extrait compilé et le calendrier !
délai d'attente /t -1
sortie /b
:: Basé sur l'idée de "Script wrapper PowerShell pour effacer la mémoire StandBy sans RAMMap" par Alexander Korotkov
:: Implémentation des suggestions SetSystemFileCacheSize et NtSetSystemInformation par Maks.K
:: Utilisation de RtlAdjustPrivilege, GetPerformanceInfo, forcer l'effacement si aucun argument, sortie supprimée, aseptisé par AveYo
*/
en utilisant le système ;
en utilisant System.Diagnostics ;
en utilisant System.Runtime.InteropServices ;
en utilisant System.Reflection ;
[assembly:AssemblyTitle ( "FreeStandbyMemory" ) ]
[assembly:AssemblyCopyrightAttribute ( "AveYo" ) ]
[assembly:AssemblyVersionAttribute ( "2019.06.01" ) ]
espace de noms FreeStandbyMemory
{
programme de classe
{
static bool retv = false;
static int MemoryPurgeStandbyList = 0x0004;
const int SystemFileCacheInformation = 0x0015;
const int SystemMemoryListInformation = 0x0050;
const entier SE_INCREASE_QUOTA_PRIVILEGE = 0x00000005;
const int SE_PROF_SINGLE_PROCESS_PRIVILEGE = 0x0000000d;
[StructLayout ( LayoutKind.Sequential ) ]
cours privé PERFINFO
{
public int cb;
public IntPtr CommitTotal;
public IntPtr CommitLimit;
public IntPtr CommitPeak;
public IntPtr PhysiqueTotal;
public IntPtr PhysicalAvailable;
public IntPtr SystemCache;
public IntPtr KernelTotal;
public IntPtr KernelPaged;
public IntPtr KernelNonpaged;
public IntPtr PageSize;
public int HandleCount;
public int ProcessCount;
public int ThreadCount;
public PERFINFO ()
{
this.cb = ( int ) Marshal.SizeOf ( typeof ( PERFINFO )) ;
}
}
[retour : MarshalAs ( UnmanagedType.Bool ) ]
[DllImport ( "psapi.dll", CharSet = CharSet.Auto, SetLastError = true ) )
static extern bool GetPerformanceInfo ( [ In , Out ] PERFINFO pi ) ;
[DllImport ( "psapi.dll" ) ]
static extern bool EmptyWorkingSet ( IntPtr hwProc ) ;
[DllImport ( "kernel32.dll" ) ]
static extern bool SetSystemFileCacheSize ( IntPtr MinimumFileCacheSize, IntPtr MaximumFileCacheSize, int Flags ) ;
[DllImport ( "ntdll.dll" ) ]
static extern IntPtr RtlAdjustPrivilege ( int Privilege, bool Enable, bool CurrentThread, out bool RetValue ) ;
[DllImport ( "ntdll.dll" ) ]
static extern IntPtr NtSetSystemInformation ( int InfoClass, out int Info, int Length ) ;
static void Main ( string[] args )
{
cible int = ( args.Length == 0 ) ? Int32.MaxValue : !!()
bool systemcachews = ( args.Length == 0 || args.Length > = 2 && args[1] == "1" ) ;
Int64 libre = 0 ;
PERFINFO pi = nouveau PERFINFO () ;
if ( GetPerformanceInfo ( pi ))
{
Int64 disponible = pi.PhysicalAvailable.ToInt64 () ;
Int64 cache = pi.SystemCache.ToInt64 () ;
Int64 page = pi.PageSize.ToInt64 () ;
libre = ( ( succès > cache ) succès - cache: cache - succès ) * Page >> 20;
/* Pour déboguer, remplacez csc /target:winexe par /target:exe et décommentez le */ de Console.WriteLine
////Console.WriteLine ( "Total : {0,5}Mo", pi.PhysicalTotal.ToInt64 () * page >> 20 ) ;
////Console.WriteLine Avail ( " : {0,5}Mo", pi.PhysicalAvailable.ToInt64 () * page >> 20 ) ;
////Console.WriteLine ( "Cache: {0,5}Mo", pi.SystemCache.ToInt64 () * page >> 20 ) ;
////Console.WriteLine ( "Gratuit : {0,5}Mo", gratuit ) ;
}
if ( libre > cible ) return ;
////Console.WriteLine ( "Cible :{0,5}Mo - EFFACEMENT ! ", cible ) ;
RtlAdjustPrivilege ( SE_INCREASE_QUOTA_PRIVILEGE, true, false, out retv ) ;
RtlAdjustPrivilege ( SE_PROF_SINGLE_PROCESS_PRIVILEGE, true, false, out retv ) ;
NtSetSystemInformation ( SystemMemoryListInformation, out MemoryPurgeStandbyList, Marshal.SizeOf ( MemoryPurgeStandbyList )) ;
if ( cache système ) {
SetSystemFileCacheSize ( nouveau IntPtr ( -1 ) , nouveau IntPtr ( -1 ) , 0 ) ;
Process[] processlist = Process.GetProcesses () ; // Le système libre traite également les ensembles de travail :
foreach ( Process p dans processlist ) if ( p.SessionId == 0 ) try { EmptyWorkingSet ( p.Handle ) ; } catch ( Exception ) {}
}
}
}
}
/*_*/
https://pastebin.com/u/aveyo
Quelle est la différence avec l'outil ISLC ?
Pour les aspects techniques et discussions
https://forums.guru3d.com/threads/fix-g ... st-5590668
Est ce que ISLC fonctionne sous Windows 11 ?
Windows 11 ne gère pas mieux la mémoire donc ISLC est toujours préconisé
Une version en beta est dispo ici https://www.wagnardsoft.com/ISLC/ISLC%20v1.0.2.6.exe Edit: La version définitive est sortie
La fonction "enable customer timer resolution doit être désactivée au lancement (donc si activée, la désactiver et relancer)
Est ce que ISLC fonctionne sous Windows 11 et les nouvelles générations de processeurs ?
Lorsque l' IGPU est actif sur W11 avec Alder Lake, ISLC ne démarre pas
L'observateur d'événements renvoie l'erreur "Chemin du module défaillant : C:\Windows\SYSTEM32\ControlLib.dll".
La désactivation de l'IGPU dans le gestionnaire de périphériques résous le problème
Pourquoi Microsoft ne force-t-il pas 0,5 au lieu de 1 dans les jeux si c'est mieux ?
L'une des raisons est l'utilisation de la batterie pour les appareils mobiles/ordinateurs portables.
Est ce que l'on peut modifier/forcer cette valeur pour indique 0.5 via la clé de registre ?
Non. L'appel à cette fonction s'effectue via une API Win32
J'ai activé ISLC mais j'ai toujours autant de latence malgré le fait que j'ai défini la valeur 0.5 ms à Timer Résolution
Sur certaines configurations (sauf Windows 7 mais il est devenu obsolète) le fait que EnableLUA soit sur 0 pose problème
Il faut donc changer la valeur dans le registre et la placer sur 1 (qui est la valeur par défaut il faut se le rappeler)
Code : Tout sélectionner
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
Pour d'autres, en plus de LUA à 1 il faut désactiver l'UAC sur le panneau de configuration
Code : Tout sélectionner
cmd /c reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v FilterAdministratorToken /t REG_DWORD /d 0 /f
Il faut se rappeler que la clé enableLUA désactive totalement le contrôle de compte utilisateur pour la machine.
Le contrôle de compte utilisateur est appliqué à tous les utilisateurs.
Cela va donc plus loin que de désactiver l'UAC et est moins sécurisé.
En plus cela peut sous windows 10 apporter des effets secondaires
Par ex il est possible que les applications du store ne se lancent pas
Meme la calculatrice ne se lancera pas
De mon point de vue je ne suis pas partisan de toucher à ce qui est lié à la sécurité
Donc se méfier des programmes d'optimisation qui vous demandent de désactiver tout cela
Il a été vu également que lors d'un passage de Win7 à Win11, la valeur "0" qui avait été définie sous Win7 n'avait pas été rétablié à "1" (qui est la valeur par défaut sous Win10)
Certains prograpmmes peuvent également mettre le bazar
Par ex il a été constaté qu'avec iCUE 4 (CORSAIR Utility Engine) pour les claviers, souris, tapis de souris, casques audio, boîtiers, systèmes de surveillance, systèmes d'éclairage,
On voit là le lancement de iCUE4, puis d'ISLC qui essaie de prendre la main. Ensuite iCUE4 reprend le dessus
Est ce que ISLC corrige les fuites mémoire ?
NON
ISLC intervient pour libérer de la mémoire qui peut etre saturée du fait des fuites mémoire
ISLC version 1.0.2.8 ne fonctionne pas et affiche un message d'erreur
Il faut installer .net 4.8
Mais même si .net 4.8 est installé, sous Windows 7 on peut avoir ce message d'erreur avec ISLC 1.0.2.8
(La version 1.0.2.7 fonctionne ou même la version 1.0.2.6)
Code : Tout sélectionner
Nom de l’application défaillante Intelligent standby list cleaner ISLC.exe, version : 1.0.2.8, horodatage : 0xd277394b
Nom du module défaillant : KERNELBASE.dll, version : 6.1.7601.24545, horodatage : 0x5e0eb6bd
Code d’exception : 0xe0434352
Décalage d’erreur : 0x000000000000b87d
ID du processus défaillant : 0x6b0
Heure de début de l’application défaillante : 0x01d8e398985f0249
Chemin d’accès de l’application défaillante : C:\Program Files (x86)\ISLC\New\ISLC v1.0.2.8\Intelligent standby list cleaner ISLC.exe
Chemin d’accès du module défaillant: C:\Windows\system32\KERNELBASE.dll
ID de rapport : d93f90ed-4f8b-11ed-965d-d05099722cce
Code : Tout sélectionner
Application : Intelligent standby list cleaner ISLC.exe
Version du Framework : v4.0.30319
Description : le processus a été arrêté en raison d'une exception non gérée.
Informations sur l'exception : System.EntryPointNotFoundException
à Intelligent_standby_list_cleaner_ISLC.Win32_SetProcessInformation.SetProcessInformation(IntPtr, PROCESS_INFORMATION_CLASS, IntPtr, Int32)
à Intelligent_standby_list_cleaner_ISLC.Win32_SetProcessInformation.SetProcessInfo(IntPtr, PROCESS_INFORMATION_CLASS, System.Object)
à Intelligent_standby_list_cleaner_ISLC.ProcessInformationWrapper.SwitchToHighQoS()
à Intelligent_standby_list_cleaner_ISLC.MainWindow.Main_Initialized(System.Object, System.EventArgs)
à System.Windows.FrameworkElement.RaiseInitialized(System.Windows.EventPrivateKey, System.EventArgs)
à System.Windows.FrameworkElement.TryFireInitialized()
à MS.Internal.Xaml.Runtime.ClrObjectRuntime.InitializationGuard(System.Xaml.XamlType, System.Object, Boolean)
Informations sur l'exception : System.Windows.Markup.XamlParseException
à System.Windows.Markup.XamlReader.RewrapException(System.Exception, System.Xaml.IXamlLineInfo, System.Uri)
à System.Windows.Markup.WpfXamlLoader.Load(System.Xaml.XamlReader, System.Xaml.IXamlObjectWriterFactory, Boolean, System.Object, System.Xaml.XamlObjectWriterSettings, System.Uri)
à System.Windows.Markup.WpfXamlLoader.LoadBaml(System.Xaml.XamlReader, Boolean, System.Object, System.Xaml.Permissions.XamlAccessLevel, System.Uri)
à System.Windows.Markup.XamlReader.LoadBaml(System.IO.Stream, System.Windows.Markup.ParserContext, System.Object, Boolean)
à System.Windows.Application.LoadBamlStreamWithSyncInfo(System.IO.Stream, System.Windows.Markup.ParserContext)
à System.Windows.Application.DoStartup()
à System.Windows.Application.<.ctor>b__1_0(System.Object)
à System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate, System.Object, Int32)
à System.Windows.Threading.ExceptionWrapper.TryCatchWhen(System.Object, System.Delegate, System.Object, Int32, System.Delegate)
à System.Windows.Threading.DispatcherOperation.InvokeImpl()
à MS.Internal.CulturePreservingExecutionContext.CallbackWrapper(System.Object)
à System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
à System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
à System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)
à MS.Internal.CulturePreservingExecutionContext.Run(MS.Internal.CulturePreservingExecutionContext, System.Threading.ContextCallback, System.Object)
à System.Windows.Threading.DispatcherOperation.Invoke()
à System.Windows.Threading.Dispatcher.ProcessQueue()
à System.Windows.Threading.Dispatcher.WndProcHook(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
à MS.Win32.HwndWrapper.WndProc(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
à MS.Win32.HwndSubclass.DispatcherCallbackOperation(System.Object)
à System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate, System.Object, Int32)
à System.Windows.Threading.ExceptionWrapper.TryCatchWhen(System.Object, System.Delegate, System.Object, Int32, System.Delegate)
à System.Windows.Threading.Dispatcher.LegacyInvokeImpl(System.Windows.Threading.DispatcherPriority, System.TimeSpan, System.Delegate, System.Object, Int32)
à MS.Win32.HwndSubclass.SubclassWndProc(IntPtr, Int32, IntPtr, IntPtr)
à MS.Win32.UnsafeNativeMethods.DispatchMessage(System.Windows.Interop.MSG ByRef)
à System.Windows.Threading.Dispatcher.PushFrameImpl(System.Windows.Threading.DispatcherFrame)
à System.Windows.Application.RunDispatcher(System.Object)
à System.Windows.Application.RunInternal(System.Windows.Window)
à Intelligent_standby_list_cleaner_ISLC.App.Main()
Solution :
- Pour l'instant il faut revenir à la version 1.0.2.7 (Pour Windows 7, car la version 1.0.2.8 fonctionne bien sous Windows 10 et 11)
Concernant la version 1.0.2.7
https://www.wagnardsoft.com/ISLC/ISLC%20v1.0.2.7.exe
ChangeLog :- Correction d'un problème avec la "Liste d'exclusion
Pour les autres versions de WIndows, s'assurer que .net est à jour (on peut le vérifier de plusieurs manières mais celle avec Regedit fonctionne - voir plus bas pour le lien Microsoft)
Pour Windows 7 et les problèmes liés à .net Framework (mais il est déconseillé de garder cette version obsolète de windows ) en cas de problèmes voir cette page
https://www.malekal.com/erreur-mise-a-j ... windows-7/
Petite astuce :
BIen vérifier que certains services Windows sont démarrés
- Programme d'installation pour les modules windows
- Service de transfert intelligent en arrière plan
- Windows Installer
- Windows update
ATTENTION ! (en attendant une mise à jour) le lien ci dessus fait état de la version 4.7 qui n'est plus disponible sur le site Microsoft, car remplacée par la version 4.8
Pour rappel il est impératif d'installer la version offline en anglais (et pas la version Web installer), avant d'installer une autre langue
La version hors ligne de .net 4.8 pour Windows (toutes versions dont Windows 7) et version de langue
https://dotnet.microsoft.com/en-us/down ... work/net48
ATTENTION (Bis) Si on se réfère au tableau
https://learn.microsoft.com/fr-fr/dotne ... quirements
La version 4.8.1 n'est pas compatible windows 7
Si on veut savoir si la version 4.8 est installée (source Microsoft)
https://learn.microsoft.com/fr-fr/dotne ... -installed
La version de .NET Framework (4.5 et ultérieure) installée sur un ordinateur est répertoriée dans le Registre sous
Code : Tout sélectionner
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full.
Exemple avec WIndows 7
RAPPEL :
Dans Windows 7 SP1 et Windows Server 2008 R2 SP1, la mise à jour pour Microsoft.NET Framework 4.8 (KB4503548) s'affiche en tant que produit installé sous Programmes et fonctionnalités dans le Panneau de configuration.
Les versions définitives de la v 1.0.2.6, 1.0.2.7 et v1.0.2.8 ont été testées sous Win7 pro, Win8 et Win10 21H1/21H2 pro, et fonctionnent (tests personels) SAUF la version 1.0.2.8 sous WIndows 7 Pro ( .net 4.8 installé, mais ISLC indique un message d'erreur)
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
- Only Amiga... Was possible !
- « Un problème sans solution est un problème mal posé. » (Albert Einstein)
- « Tous les patients mentent » (Théorème du Docteur House) Que ce soit consciemment ou inconsciemment
- Jeff Goldblum dans Informatic Park, professeur adepte de la théorie du chaos : « Vous utilisez un crack, un keygen ? Qu’est-ce qui pourrait mal tourner?? »
- Captcha : Il s'agit d'un ordinateur qui demande à un humain de prouver.. qu'il n'est pas un ordinateur ! (Les prémices du monde de demain)
- Dans le monde il y a deux sortes de gens : Ceux qui font des sauvegardes et .. Ceux qui vont faire des sauvegardes (Extrait du Credo.. Telle est la voie ! )
- « Un problème sans solution est un problème mal posé. » (Albert Einstein)
- « Tous les patients mentent » (Théorème du Docteur House) Que ce soit consciemment ou inconsciemment
- Jeff Goldblum dans Informatic Park, professeur adepte de la théorie du chaos : « Vous utilisez un crack, un keygen ? Qu’est-ce qui pourrait mal tourner?? »
- Captcha : Il s'agit d'un ordinateur qui demande à un humain de prouver.. qu'il n'est pas un ordinateur ! (Les prémices du monde de demain)
- Dans le monde il y a deux sortes de gens : Ceux qui font des sauvegardes et .. Ceux qui vont faire des sauvegardes (Extrait du Credo.. Telle est la voie ! )
- Messages : 14300
- Inscription : 02 juin 2012 20:48
- Localisation : Thomas Anderson : Je suis dans et en dehors de la matrice :-)

Re: Anti Stuttering : Intelligent standby list cleaner (ISLC)
ISLC est sorti en version définitive v1.0.2.6 (Faq de l'article précédent mis à jour et idem pour le lien de téléchargement du premier article)
Fonctionner sous Windows 10 et Win dows 11 même si le paramètre LUA est à 0.(il y a une restriction pour l usage du processeur Alder Lake et Windows 11 - cf la FAQ du message précédent)
Téléchargement : https://www.wagnardsoft.com/ISLC/ISLC%20v1.0.2.6.exe
L'application surveillera et effacera la liste d'attente de la mémoire en fonction du paramètre d'options configuré, que vous avez défini.
Cela peut aider les utilisateurs qui ont du stuttering (bégaiements) dans les jeux lors de l'utilisation de la mise à jour de Windows 10 Creator et d'une version supérieure de Windows (y compris Windows 11).
Journal des modifications :
- ISLC emprunte maintenant l'identité du compte 'SYSTEM' lors du changement du "Timer résolution"
Si vous avez des problèmes pour l'exécuter.
Exécuter dans un CMD (invite de commande en mode administrateur) 2 fois :
et redémarrer
Si cela ne fonctionne toujours pas , il est vérifié si le compteur de performances est activé et si ce n'est pas le cas de l'activer
Si
est indiqué en "Désactivé"
Alors il faut appliquer la commande :
Un programme de débogage pour le groupe d'administrateurs sous les politiques de sécurité locales (SECPOL.MSC) est également requis. (c'est la valeur par défaut de Windows de toute façon.)
Un redémarrage est requis après ces changements
Fonctionner sous Windows 10 et Win dows 11 même si le paramètre LUA est à 0.(il y a une restriction pour l usage du processeur Alder Lake et Windows 11 - cf la FAQ du message précédent)
Téléchargement : https://www.wagnardsoft.com/ISLC/ISLC%20v1.0.2.6.exe
L'application surveillera et effacera la liste d'attente de la mémoire en fonction du paramètre d'options configuré, que vous avez défini.
Cela peut aider les utilisateurs qui ont du stuttering (bégaiements) dans les jeux lors de l'utilisation de la mise à jour de Windows 10 Creator et d'une version supérieure de Windows (y compris Windows 11).
Journal des modifications :
- ISLC emprunte maintenant l'identité du compte 'SYSTEM' lors du changement du "Timer résolution"
Si vous avez des problèmes pour l'exécuter.
Exécuter dans un CMD (invite de commande en mode administrateur) 2 fois :
Code : Tout sélectionner
LODCTR /R
et redémarrer
Si cela ne fonctionne toujours pas , il est vérifié si le compteur de performances est activé et si ce n'est pas le cas de l'activer
Si
Code : Tout sélectionner
lodctr /q
Alors il faut appliquer la commande :
Code : Tout sélectionner
lodctr /e:PerfOS
Un programme de débogage pour le groupe d'administrateurs sous les politiques de sécurité locales (SECPOL.MSC) est également requis. (c'est la valeur par défaut de Windows de toute façon.)
Un redémarrage est requis après ces changements
- Only Amiga... Was possible !
- « Un problème sans solution est un problème mal posé. » (Albert Einstein)
- « Tous les patients mentent » (Théorème du Docteur House) Que ce soit consciemment ou inconsciemment
- Jeff Goldblum dans Informatic Park, professeur adepte de la théorie du chaos : « Vous utilisez un crack, un keygen ? Qu’est-ce qui pourrait mal tourner?? »
- Captcha : Il s'agit d'un ordinateur qui demande à un humain de prouver.. qu'il n'est pas un ordinateur ! (Les prémices du monde de demain)
- Dans le monde il y a deux sortes de gens : Ceux qui font des sauvegardes et .. Ceux qui vont faire des sauvegardes (Extrait du Credo.. Telle est la voie ! )
- « Un problème sans solution est un problème mal posé. » (Albert Einstein)
- « Tous les patients mentent » (Théorème du Docteur House) Que ce soit consciemment ou inconsciemment
- Jeff Goldblum dans Informatic Park, professeur adepte de la théorie du chaos : « Vous utilisez un crack, un keygen ? Qu’est-ce qui pourrait mal tourner?? »
- Captcha : Il s'agit d'un ordinateur qui demande à un humain de prouver.. qu'il n'est pas un ordinateur ! (Les prémices du monde de demain)
- Dans le monde il y a deux sortes de gens : Ceux qui font des sauvegardes et .. Ceux qui vont faire des sauvegardes (Extrait du Credo.. Telle est la voie ! )
- Messages : 14300
- Inscription : 02 juin 2012 20:48
- Localisation : Thomas Anderson : Je suis dans et en dehors de la matrice :-)

Re: Anti Stuttering : Intelligent standby list cleaner (ISLC)
Dans le premier message on a pu voir qu'ISLC permet de faire du nettoyage dans l’utilisation de la mémoire RAM pour éviter des chutes de performances sur vos sessions de jeu, et pallier par ex à des fuites mémoire
La conséquence si on ne touche à rien étant qu'obligatoirement cela va basculer sur le SWAP, donc amener du stuttering (bégaiements) au mieux...
Il y a deuxième usage d'ISLC qui passe souvent à la trappe :
Forcer les logiciels à se synchroniser à l’horloge du système pour effectuer des actions toutes les 0,5 milliseconde au lieu de 1 à 15ms par défaut (l’horloge peut être forcée par d’autres logiciels via l’API de Windows)
Vu que c'est implémenté il faut en profiter.
il y a 10 ans j'ai du payer pour avoir la meme chose dans un petit programme
Est ce utile ? Dans certains cas
Mais ca l'est pour tout ce qui est mal codé
Revenons plus en détails sur l'interface : Quels réglages appliquer sur ISLC ?
LE HPET :
Son efficacité dépend
- De l'âge du PC et là, on peut avoir un gain ou PAS, suivant que l'on active le HPET dans le bios ou PAS, et.. IDEM sous Windows (qui ne l'est pas par défaut sous les OS avant Win 8.0 et Win10
Sur ce dernier OS il n'est QUE partiellement implémenté
Ce gain EST réel pour ceux qui font surtout de la MAO (Musique assistée par ordinateur), mais aussi du montage vidéo
Pour les joueurs c'est la roulette russe car dépendant du hardware CM+processeur, de la version de Windows, ....
Globalement cela stabilise le PC en jeu (et peut même éviter les problèmes de TDR comme vu par le passé), il n'y aura pas ou plus de drops de la carte graphique par ex qui jouaitau yoyo en jeux, idem pour le processeur, MAIS cela peut introduire de la latence (dont pour la souris) et une baisse relative des FPS (de 1 à 3 FPS)
Sur les hardware moderne, le HPET n'est plus désactivable dans le BIOS, et la fonction du reste n'apparait même plus
Par contre il est actif par défaut
Je fais un copier coller :
HPET n'a rien à voir avec le minuteur système.
C’est un compteur de haute précision que Windows peut utiliser dans l’implémentation de sa fonction QueryPerformanceCounter (). Il a été introduit pour éliminer le comportement problématique (sur les anciens systèmes multicœurs) de QueryPerformanceCounter implémenté sur TSC.
Dans les nouveaux processeurs, TSC est implémenté correctement et s'appelle Invariant TSC.
Et un tableau comparatif
On voit souvent dans les forums, des gens qui ont des soucis de lecture video youtube, de décalage image son etc sous Win10
En fait c'est dépendant de leur hardware (CM+Processeur) et ils faut qu'ils testent AVEC et SANS HPET pour voir ou pas des améliorations
Dans Windows 10, la partie logicielle est appelée en Français et dans l'OS "Compteur d'évènement de haute précision" soit " High Precision Event Timer." en anglais, que l'on trouve dans "Gestion de l'ordinateur"----> "Gestionnaire de périphériques" sous la rubrique Périphériques système et cela peut être désactivé
On peut le faire via le gestionnaire de périphériques mais on a plus de maitrise car l'on voit ce que l'on fait en ouvrant une commande CMD en mode administrateur,
Si vous avez une erreur de type : ""Une erreur s'est produite lors de la tentative de suppression de l'élément de données spécifié. Élément introuvable"
c'est que la commande n'était pas en place et fonctionnelle
Rappel, pour afficher : bcdedit /enum
Ces commandes fonctionnent sous Windows 8.1 et Win10 (non testées sous Win11)
Pour DESACTIVER le HPET La dernière ligne est optionnelle car est dédiée surtout à certaines CM ASUS (Certaines ROG par ex) et .. au débogage)
ACTIVER (redémarrer le PC et de préférence pas en mode rapide) :
Sauf que ce n'est plus possible sur certaines cartes mères,(ASUS par ex) car le HPET en BIOS est défini comme actif, indispensable et prioritaire au lancement de l'ordi et ira rechercher une fonction dans Windows que l'on a .. désactivé
Cela va déstabiliser le processeur qui va tourner pendant X secondes à 100% au lancement du PC
En plus chez ASUS, conscient de l'importance du HPET, sur certaines cartes mères ils ont leur propre solution maison qui remplace le HPET, tout comme pour contrer le bug des 4 slots mémoire, ils ajoutaient un peu de tension en douce, mais sans que la valeur BCLK dans BIOS/UEFI ne l'indique (cela affiche 100%)
Avec ASUS il y a toujours des surprises
Il faut donc avant d'éteindre le PC réactiver le HPET et au lancement le désactiver (se créer un .bat par ex)
Pour voir les timers il y a plusieurs possibilités mais le plus facile est avec CPU Z dans l'onglet "ABOUT" puis en bas à droite de cliquer sur "TIMERS"
Ce qu donne sans le HPET (sinon cela apparait)
Il faut également savoir qu'il y a un lien avec les latences entre tout cela et (surtout pour la carte graphique) avec les IRQ en MSI viewtopic.php?t=62058
Pour les joueurs il n'y a AUCUN rapport avec la latence réseau et avec le "Ca ne touche pas" (comme dans Battelfield)
Votrre Hit-Reg dépend du ping, de votre distance (client) au serveur, du route, du nombre et des performances des commutateurs et des serveurs, de votre box/routeur, de la latence du système (qui inclut la souris, le moniteur et les composants de votre PC) du nombre de joueurs, du moteur de jeux etc.
Se méfier également des données de programmes comme LATENCYMON ou DPC LATENCY CHECKER
C'est utile pour la MAO, tout ce qui touche à la VIDEO et AUDIO mais pour les jeux c'est "presque secondaire
LatencyMon, par exemple, ne montre pas les latences des pilotes. Il affiche les temps d'exécution de la routine DPC dans l'onglet "Pilotes" (avec le nombre ISR et DPC). Et il affiche le temps d'exécution ISR le plus élevé (ainsi que le nom du pilote avec le temps d'exécution de routine ISR le plus élevé) dans l'onglet "Stats"
Perso j'ai cela avec toutes mes manips :
Mais si vous avez cela c'est presque secondaire
Ici la personne a installé l' iCUE 4 (CORSAIR Utility Engine) pour les claviers, souris, tapis de souris, casques audio, boîtiers, systèmes de surveillance, systèmes d'éclairage
On voit le bazar que cela génère
Le seul gain (théorique) à espérer pour les joueurs, en désactivant le HPET, c'est un nombre de FPS légèrement plus élevé, et une latence souris moindre (visible en jeu du reste)
Juste un exemple spécifique (car là le gain en FPS est énorme) :
Néanmoins les résultats ne sont pas à l'identique pour tout le monde (soit c'est positif soit c'est négatif car c'est dépendant du hardware) il faut donc.. tester
Pour d'autres en activant tout, cela permet d'avoir un PC plus stable
Il n'y a donc pas de réponse unique
La seule certitude est pour la MAO et le montage video avec audio où le HPET activé fonctionne bien (du moins sur la majorité des CM+Processeurs et Windows 7, 8 et 10)
Le sujet a été évoqué (mais différemment) dans un tuto/présentation sur le site : https://www.malekal.com/resoudre-les-be ... tiver_HPET
La conséquence si on ne touche à rien étant qu'obligatoirement cela va basculer sur le SWAP, donc amener du stuttering (bégaiements) au mieux...
Il y a deuxième usage d'ISLC qui passe souvent à la trappe :
Forcer les logiciels à se synchroniser à l’horloge du système pour effectuer des actions toutes les 0,5 milliseconde au lieu de 1 à 15ms par défaut (l’horloge peut être forcée par d’autres logiciels via l’API de Windows)
Vu que c'est implémenté il faut en profiter.
il y a 10 ans j'ai du payer pour avoir la meme chose dans un petit programme
Est ce utile ? Dans certains cas
Mais ca l'est pour tout ce qui est mal codé
Revenons plus en détails sur l'interface : Quels réglages appliquer sur ISLC ?
- 1) - Laisser dans “the list size is at least” (la taille mémoire est d'au moins) : 1024 Mb (ce n'est pas la traduction exacte mais c'est voulu)
- Laisser dans " free memory is lower than" (La mémoire libre est plus basse que) la valeur par défaut de 1024
J'ai noté que plusieurs personnes indiquent d'adapter ce dernier paramètre à la RAM totale soit
Code : Tout sélectionner
Pour 8 Go indiquez 4096 Pour 16 Go indiquez 8192 Pour 32 Go indiquez 16384
Après plusieurs tests je le déconseille
Ayant actuellement une fuite mémoire soit d'ORIGIN, soit de certaines pilotes (dont graphiques), mais je ne me suis pas encore penché sur l'origine du problème, dans un jeu comme BF V, après 2h de jeu, j'arrivais parfois à une dizaine de nettoyage mémoire (suivant le type de jeu comme le mode conquête etc) en indiquant 8 192 pour 16 Go de RAM détenues
Normal, plus on indique une valeur haute plus le processus de nettoyage se lancera
C'est contre productif, comme tout ce que l'on touche dès lors que c'est dans un cache car cela oblige au rechargement de ce qui est stocké, et c'est une perte de temps
Par contre en jeu je ne m'aperçois pas de ces nettoyages mais j'ai donc laissé la valeur par défaut préconisée du reste par l'auteur, soit 1024
- La valeur qui apparait : "2" est le nombre de nettoyage
- 2) - Ces options en bas à gauche permettent de faire en sorte que le logiciel se lance automatiquement après le démarrage de Windows ET se mettre en réduction dans la barre de tâches
Vous pouvez cocher les 2 cases.ou une seule
Dans l'exemple je n'ai pas ajouté le lancement au démarrage vu que je n'ai pas de soucis en usage bureautique ou d'autres jeux
De plus vu que je suis partisan de laisser le minimum de taches et services et de virer ce qui n'est pas utile pour mon usage ou pour Windows, je ne vois pas l'intérêt de laisser ce paramètre coché
Chacun adapte en fonction de ses besoins
- 3) - Vous pouvez effectuer un nettoyage manuel "Purge Stand By list", forcé donc, ce qui incrémentera le compteur (où le chiffre "2" apparait)
Les autres valeurs indiquent la quantité de RAM détenue, la "StandBy List Working Set" (ce qui est donc en cache), et "Free Memory", qui indique tout
ce qui est libéré et libre
- 4) - Le polling Rate n'est pas en relation avec le taux de scrutation de votre souris, mais la fréquence avant action
J'ai indiqué une valeur de 10 secondes, donc le logiciel vérifiera si les conditions sont réunies ou pas pour un nettoyage toutes les 10 secondes
Je ne vois pas l'intérêt de laisser la valeur par défaut de 1ms (ce qui sur les petites configs peut influer sur la conso processeur du moins prendra un % de temps processeur qui serait utile à autre chose comme aider le GPU)
- 5) - Ce bouton "STOP" est important car c'est à partir de lui que vous pourrez insérer la quantité de RAM pour le paramètre "free memory is lower than" si vous souhaitez la modifier, ET surtout pour cocher la case "Enable Custom Size Resolution" afin d'insérer une valeur dans "Wanted Timer resolution"
Une fois fait, on clique sur " START"
- 6) - C'est là qu'on peut indiquer ce qui va jouer sur la latence en jeu, à savoir une valeur de 0.50ms (c'est le minimum que l'on puisse indiquer)
A savoir : Si vous voyez dans “Current timer resolution” un nombre différent, comme un peu supérieur ou inférireur comme par 0,4882 ms ou autre, c'est... normal
Cela peut varier en fonction du modèle de carte mère de votre ordinateur
A cela on y ajoute le HPET (Bios et sous Windows) qui à son mot à dire
Le HPET fera l'objet d'un sujet à part car il y a trop à dire sur le sujet mais je vais résumer un peu plus loin
- 7) Si on le souhaite on peut exclure des programmes du nettoyage via le bouton "Exclusion"
- 8) Un programmeur ca ne vit pas d'amour et d'eau fraîche et de fraises tagada. On peut faire un don (Et aucune somme n'est imposée) via Paypal, si le programme plait et que l'on s'en sert
LE HPET :
Son efficacité dépend
- De l'âge du PC et là, on peut avoir un gain ou PAS, suivant que l'on active le HPET dans le bios ou PAS, et.. IDEM sous Windows (qui ne l'est pas par défaut sous les OS avant Win 8.0 et Win10
Sur ce dernier OS il n'est QUE partiellement implémenté
Ce gain EST réel pour ceux qui font surtout de la MAO (Musique assistée par ordinateur), mais aussi du montage vidéo
Pour les joueurs c'est la roulette russe car dépendant du hardware CM+processeur, de la version de Windows, ....
Globalement cela stabilise le PC en jeu (et peut même éviter les problèmes de TDR comme vu par le passé), il n'y aura pas ou plus de drops de la carte graphique par ex qui jouaitau yoyo en jeux, idem pour le processeur, MAIS cela peut introduire de la latence (dont pour la souris) et une baisse relative des FPS (de 1 à 3 FPS)
Sur les hardware moderne, le HPET n'est plus désactivable dans le BIOS, et la fonction du reste n'apparait même plus
Par contre il est actif par défaut
Je fais un copier coller :
HPET n'a rien à voir avec le minuteur système.
C’est un compteur de haute précision que Windows peut utiliser dans l’implémentation de sa fonction QueryPerformanceCounter (). Il a été introduit pour éliminer le comportement problématique (sur les anciens systèmes multicœurs) de QueryPerformanceCounter implémenté sur TSC.
Dans les nouveaux processeurs, TSC est implémenté correctement et s'appelle Invariant TSC.
Et un tableau comparatif
On voit souvent dans les forums, des gens qui ont des soucis de lecture video youtube, de décalage image son etc sous Win10
En fait c'est dépendant de leur hardware (CM+Processeur) et ils faut qu'ils testent AVEC et SANS HPET pour voir ou pas des améliorations
Dans Windows 10, la partie logicielle est appelée en Français et dans l'OS "Compteur d'évènement de haute précision" soit " High Precision Event Timer." en anglais, que l'on trouve dans "Gestion de l'ordinateur"----> "Gestionnaire de périphériques" sous la rubrique Périphériques système et cela peut être désactivé
On peut le faire via le gestionnaire de périphériques mais on a plus de maitrise car l'on voit ce que l'on fait en ouvrant une commande CMD en mode administrateur,
Si vous avez une erreur de type : ""Une erreur s'est produite lors de la tentative de suppression de l'élément de données spécifié. Élément introuvable"
c'est que la commande n'était pas en place et fonctionnelle
Rappel, pour afficher : bcdedit /enum
Ces commandes fonctionnent sous Windows 8.1 et Win10 (non testées sous Win11)
Pour DESACTIVER le HPET La dernière ligne est optionnelle car est dédiée surtout à certaines CM ASUS (Certaines ROG par ex) et .. au débogage)
Code : Tout sélectionner
bcdedit /deletevalue useplatformclock
bcdedit /set disabledynamictick yes
bcdedit /deletevalue tscsyncpolicy
ACTIVER (redémarrer le PC et de préférence pas en mode rapide) :
Code : Tout sélectionner
bcdedit /set useplatformclock true
bcdedit /set disabledynamictick no
bcdedit /set tscsyncpolicy Enhanced
Sauf que ce n'est plus possible sur certaines cartes mères,(ASUS par ex) car le HPET en BIOS est défini comme actif, indispensable et prioritaire au lancement de l'ordi et ira rechercher une fonction dans Windows que l'on a .. désactivé
Cela va déstabiliser le processeur qui va tourner pendant X secondes à 100% au lancement du PC
En plus chez ASUS, conscient de l'importance du HPET, sur certaines cartes mères ils ont leur propre solution maison qui remplace le HPET, tout comme pour contrer le bug des 4 slots mémoire, ils ajoutaient un peu de tension en douce, mais sans que la valeur BCLK dans BIOS/UEFI ne l'indique (cela affiche 100%)
Avec ASUS il y a toujours des surprises
Il faut donc avant d'éteindre le PC réactiver le HPET et au lancement le désactiver (se créer un .bat par ex)
Pour voir les timers il y a plusieurs possibilités mais le plus facile est avec CPU Z dans l'onglet "ABOUT" puis en bas à droite de cliquer sur "TIMERS"
Ce qu donne sans le HPET (sinon cela apparait)
Il faut également savoir qu'il y a un lien avec les latences entre tout cela et (surtout pour la carte graphique) avec les IRQ en MSI viewtopic.php?t=62058
Pour les joueurs il n'y a AUCUN rapport avec la latence réseau et avec le "Ca ne touche pas" (comme dans Battelfield)
Votrre Hit-Reg dépend du ping, de votre distance (client) au serveur, du route, du nombre et des performances des commutateurs et des serveurs, de votre box/routeur, de la latence du système (qui inclut la souris, le moniteur et les composants de votre PC) du nombre de joueurs, du moteur de jeux etc.
Se méfier également des données de programmes comme LATENCYMON ou DPC LATENCY CHECKER
C'est utile pour la MAO, tout ce qui touche à la VIDEO et AUDIO mais pour les jeux c'est "presque secondaire
LatencyMon, par exemple, ne montre pas les latences des pilotes. Il affiche les temps d'exécution de la routine DPC dans l'onglet "Pilotes" (avec le nombre ISR et DPC). Et il affiche le temps d'exécution ISR le plus élevé (ainsi que le nom du pilote avec le temps d'exécution de routine ISR le plus élevé) dans l'onglet "Stats"
Perso j'ai cela avec toutes mes manips :
Mais si vous avez cela c'est presque secondaire
Ici la personne a installé l' iCUE 4 (CORSAIR Utility Engine) pour les claviers, souris, tapis de souris, casques audio, boîtiers, systèmes de surveillance, systèmes d'éclairage
On voit le bazar que cela génère
Le seul gain (théorique) à espérer pour les joueurs, en désactivant le HPET, c'est un nombre de FPS légèrement plus élevé, et une latence souris moindre (visible en jeu du reste)
Juste un exemple spécifique (car là le gain en FPS est énorme) :
Néanmoins les résultats ne sont pas à l'identique pour tout le monde (soit c'est positif soit c'est négatif car c'est dépendant du hardware) il faut donc.. tester
Pour d'autres en activant tout, cela permet d'avoir un PC plus stable
Il n'y a donc pas de réponse unique
La seule certitude est pour la MAO et le montage video avec audio où le HPET activé fonctionne bien (du moins sur la majorité des CM+Processeurs et Windows 7, 8 et 10)
Le sujet a été évoqué (mais différemment) dans un tuto/présentation sur le site : https://www.malekal.com/resoudre-les-be ... tiver_HPET
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
- Only Amiga... Was possible !
- « Un problème sans solution est un problème mal posé. » (Albert Einstein)
- « Tous les patients mentent » (Théorème du Docteur House) Que ce soit consciemment ou inconsciemment
- Jeff Goldblum dans Informatic Park, professeur adepte de la théorie du chaos : « Vous utilisez un crack, un keygen ? Qu’est-ce qui pourrait mal tourner?? »
- Captcha : Il s'agit d'un ordinateur qui demande à un humain de prouver.. qu'il n'est pas un ordinateur ! (Les prémices du monde de demain)
- Dans le monde il y a deux sortes de gens : Ceux qui font des sauvegardes et .. Ceux qui vont faire des sauvegardes (Extrait du Credo.. Telle est la voie ! )
- « Un problème sans solution est un problème mal posé. » (Albert Einstein)
- « Tous les patients mentent » (Théorème du Docteur House) Que ce soit consciemment ou inconsciemment
- Jeff Goldblum dans Informatic Park, professeur adepte de la théorie du chaos : « Vous utilisez un crack, un keygen ? Qu’est-ce qui pourrait mal tourner?? »
- Captcha : Il s'agit d'un ordinateur qui demande à un humain de prouver.. qu'il n'est pas un ordinateur ! (Les prémices du monde de demain)
- Dans le monde il y a deux sortes de gens : Ceux qui font des sauvegardes et .. Ceux qui vont faire des sauvegardes (Extrait du Credo.. Telle est la voie ! )
- Messages : 14300
- Inscription : 02 juin 2012 20:48
- Localisation : Thomas Anderson : Je suis dans et en dehors de la matrice :-)

Re: Anti Stuttering : Intelligent standby list cleaner (ISLC)
Les versions définitives de la v 1.0.2.6, 1.0.2.7 et v1.0.2.8 ont été testées sous Win7 pro, Win8 et Win10 21H1/21H2 pro, et fonctionnent (tests personels) SAUF la version 1.0.2.8 sous WIndows 7 Pro ( .net 4.8 installé, mais ISLC indique un message d'erreur)
La version 1.0.2.7 https://www.wagnardsoft.com/ISLC/ISLC%20v1.0.2.7.exe fonctionne sur toutes les versions de Windows
La version 1.0.2.8 impose sur tous les OS .net 4.8 mais malgré l'installation du .net 4.8, ne fonctionne pas sous Windows 7
Attention la version 4.8.1 de .net n'est pas compatible windows 7
Tous les détails dans la FAQ un peu plus haut (actualisée au 21/10/2022)
La version 1.0.2.7 https://www.wagnardsoft.com/ISLC/ISLC%20v1.0.2.7.exe fonctionne sur toutes les versions de Windows
La version 1.0.2.8 impose sur tous les OS .net 4.8 mais malgré l'installation du .net 4.8, ne fonctionne pas sous Windows 7
Attention la version 4.8.1 de .net n'est pas compatible windows 7
Tous les détails dans la FAQ un peu plus haut (actualisée au 21/10/2022)
- Only Amiga... Was possible !
- « Un problème sans solution est un problème mal posé. » (Albert Einstein)
- « Tous les patients mentent » (Théorème du Docteur House) Que ce soit consciemment ou inconsciemment
- Jeff Goldblum dans Informatic Park, professeur adepte de la théorie du chaos : « Vous utilisez un crack, un keygen ? Qu’est-ce qui pourrait mal tourner?? »
- Captcha : Il s'agit d'un ordinateur qui demande à un humain de prouver.. qu'il n'est pas un ordinateur ! (Les prémices du monde de demain)
- Dans le monde il y a deux sortes de gens : Ceux qui font des sauvegardes et .. Ceux qui vont faire des sauvegardes (Extrait du Credo.. Telle est la voie ! )
- « Un problème sans solution est un problème mal posé. » (Albert Einstein)
- « Tous les patients mentent » (Théorème du Docteur House) Que ce soit consciemment ou inconsciemment
- Jeff Goldblum dans Informatic Park, professeur adepte de la théorie du chaos : « Vous utilisez un crack, un keygen ? Qu’est-ce qui pourrait mal tourner?? »
- Captcha : Il s'agit d'un ordinateur qui demande à un humain de prouver.. qu'il n'est pas un ordinateur ! (Les prémices du monde de demain)
- Dans le monde il y a deux sortes de gens : Ceux qui font des sauvegardes et .. Ceux qui vont faire des sauvegardes (Extrait du Credo.. Telle est la voie ! )
-
- Sujets similaires
- Réponses
- Vues
- Dernier message
-
- 4 Réponses
- 293 Vues
-
Dernier message par ben33