Legilibre / Archeo-Lex

Pure Histoire de la Loi française – Git + Markdown
https://archeo-lex.fr
Do What The F*ck You Want To Public License
98 stars 17 forks source link

Ajouter une option pour gérer la niceness #26

Closed Seb35 closed 5 years ago

Seb35 commented 7 years ago

Cas d’usage

Pendant le développement, la décompression de la base LEGI complète dure entre 5 et 10 minutes chez moi, et lorsque je fais quelque chose à côté (comme rédiger cette proposition de fonctionnalité par exemple) l’ordinateur est ralenti ; pour contrer ça et rédiger tranquillement ce bug, j’augmente la niceness (à 5, voir renice(1)) ainsi que l’ioniceness à B5 (best-effort 5, voir ionice(1)).

Proposition de fonctionnalité

Ajouter une option pour fixer la niceness.

À voir comment designer exactement l’option de la ligne de commande, peut-être (suggestion) avec une option --nice sans paramètre qui fait passer la niceness à 5 (et en conséquence l’ioniceness à B5 d’après la relation automatique) et une option --nice 10 avec paramètre pour fixer la niceness, et en l’absence de l’option ne rien faire (donc nice=0 et ionice=B4).

Seb35 commented 6 years ago

J’ai plus vraiment d’opinion s’il faut implémenter cette issue ou pas, ajouter une option me semble overkill et imposer une certaine niceness me semble discutable (je viens d’ajouter un paramètre --production pour activer des options de performance, mais on ne peut pas diminuer la niceness, donc on ne peut que l’augmenter lorsqu’on est "en développement", mais imposer une valeur ne conviendrait pas à tout le monde). Éventuellement je fermerai cette issue en wontfix.

Techniquement, on peut utiliser os.nice(increment) pour augmenter la niceness, par exemple le code ci-après la fixe à 10:

if os.nice(0) < 10:
    os.nice( 10 - os.nice(0) )