Sto compilando qualcosa con -j64 per consentire il multiprocessing (88 è stato raccomandato, ma ho ritenuto che fosse troppo alto).
Tutti i miei core sono costantemente al 100%, tuttavia la frequenza del processore non sta raggiungendo il suo massimo quando guardo in lscpu:
CPU MHz: 3123.046
CPU max MHz: 3900.0000
CPU min MHz: 800.0000
Questo è su un laptop Dell - c'è un sistema di gestione dell'alimentazione (non ho fatto powertop o altro) che avrebbe limitato i core, o è solo un overhead di I / O che impedisce alla CPU di avere dati?
Modifica: questo è un Intel(R) Core(TM) i7-7820HQ
(dice lscpu @ 2.90GHz
)
(CPUS * 2) + 1 or 2
in modo da avere tutti i hyperthreads più alcuni quando si va io-bound? Ho aggiunto CPU alla queston
NUM_CPUS * 2
noNUM_CPUS ^ 2
. ;) // Non hai specificato di quale CPU stiamo parlando.