Come rilevare se isolcpus è attivato e su quale cpus, ad esempio quando ci si connette per la prima volta su un server. condizioni:
non genera alcun processo per vedere dove verrà migrato.
Il caso d'uso è che isolcpus=1-7su un i7 a 6 core, sembra non attivare isolcpus all'avvio, e vorrei sapere se è possibile da /proc/, /syso qualsiasi interno del kernel che può essere letto nello spazio utente, per fornire un chiaro stato di attivazione di isolcpus e quali CPU sono interessati. O anche leggere l'impostazione attiva dello scheduler che è il primo interessato da isolcpus.
Considera che il tempo di attività è così grande che dmesgnon viene più visualizzato il registro di avvio per rilevare eventuali errori all'avvio. La risposta di base come " guarda la riga cmd del kernel " non sarà accettata :)
pidstate isolcpus. Puoi approfondire un po 'di più?
isolcpussia, ma pidstatposso dirti su quale CPU è in esecuzione un processo se passi la -C process_namebandiera. Ad esempio pidstat -C topproduce quanto segue. 10:56:52 AM PID %usr %system %guest %CPU CPU Command 10:56:52 AM 3457 0.00 0.00 0.00 0.00 6 top
isolcpusè un parametro del kernel che forza lo scheduler a non migrare alcun processo da solo se sono isolati. Ad esempio su un server 8 cpu, isolcpus=1-7nella riga di comando del kernel, forzerà l'esecuzione di tutti i processi generati dalla fork e di ogni tipo di comando nella shell solo su CPU0. Per eseguire un'attività su una CPU isolata, è necessario avviarla con tasksetad esempio. Quindi per quanto riguarda ciò che sto chiedendo, sembra che la tua risposta sia fuori tema. Grazie comunque per aver cercato di rispondermi
pidstat -C isolcpus. pidstat proviene dalsysstatpacchetto.