J'ai le pressentiment qu'un certain bug intermittent ne peut se manifester qu'en cas de vitesse de lecture lente du disque. Le dépannage est difficile car je ne peux pas le reproduire de manière fiable.
À moins de simplement engloutir les E / S avec un processus de haute priorité, existe-t-il un moyen pour moi de simuler un disque dur lent?
man hdparm
jetez un oeil à l'option -X peut-être? Il y a pas mal de choses que vous pourriez utiliser pour ralentir votre lecteur, mais certaines d'entre elles risquent de faire des choses désagréables aux données!Réponses:
Utilisez nbd , le périphérique de blocage réseau, puis limitez l'accès à celui-ci à l'aide de say
trickle
.la source
Ça va vous ralentir :)
Cela vous obligera à lire à partir du disque, au lieu de profiter de la page mise en cache.
Si vous vouliez vraiment devenir sophistiqué, vous pourriez faire quelque chose comme une fausse erreur de lecture à chaque fois en utilisant le framework d'injection de défauts scsi.
http://scsifaultinjtst.sourceforge.net/
la source
Vous avez un concentrateur USB 1.1? Ou une carte SD lente? Ils vous feront descendre à moins de 10 Mbps.
la source
Ce n'est en aucun cas une solution complète, mais cela peut aider en conjonction avec d'autres mesures: il existe un planificateur d'E / S un peu comme un planificateur de processus, et il peut être modifié.
Plus particulièrement, vous pouvez réellement choisir parmi différents planificateurs:
deadline
peut vous aider à obtenir des résultats plus reproductibles.noop
, comme son nom l'indique, est incroyablement stupide et vous permettra de faire des ravages absolus sur les performances d'E / S avec peu d'effort.anticipatory
et lescfq
deux essaient d'être intelligents, bien que cecfq
soit généralement le plus intelligent des deux. (Si je me souviens bien,anticipatory
c'est en fait le planificateur hérité juste avant que le noyau ne commence à prendre en charge plusieurs planificateurs.)la source
Vous pouvez utiliser une machine virtuelle et accéder au disque de limitation ... voici quelques conseils sur la façon de le faire dans Virtualbox 5.8. Limiter la bande passante pour les images disque https://www.virtualbox.org/manual/ch05.html#storage-bandwidth-limit
la source
Vous pouvez essayer d'exécuter une copie d'un fichier volumineux, comme une iso du CD d'installation d'Ubuntu, et l'exécuter deux fois. Cela devrait ralentir un peu votre lecteur.
la source
En plus d'essayer de ralentir le disque dur lui-même, vous pouvez essayer d'utiliser des outils d'analyse comparative de systèmes de fichiers tels que bonnie ++ qui peuvent provoquer beaucoup d'E / S disque.
la source
que diriez-vous
make -j64
? dans des articles décrivant ce nouveau patch de performance 200 lignes,make -j64
était une tâche qui consommait beaucoup de ressources informatiquesla source
Pourquoi ne pas exécuter
iotop
et voir si le processus que vous essayez de déboguer provoque de nombreuses lectures / écritures sur le disque?la source
J'ai récemment trouvé une configuration où j'ai
google-drive-ocamlfuse
Si la latence de 16 secondes n'est pas assez lente, vous pouvez simplement débrancher votre routeur.
Pour référence, voici le cas d'utilisation d'origine, où j'ai eu l'idée de cela: https://github.com/goavki/apertium-apy/pull/76#issuecomment-355007128
la source