Ciao a tutti, ho svariati processi, piuttosto pesanti, che girano su una macchina dual-processor. Contavo di usare l'affinity fornita dallo scheduler per far saltare i processi da una cpu all'altra ogni 3 ore, in quanto il persistere di un processo solo su una determinata cpu ne causa il surriscaldamento. Cosa ne dite del seguente script, ci sono metodi piu' efficienti per fare la stessa cosa? ------------------- #!/bin/bash cpu = 1 #deve ciclare in continuazione while [ 1 ] do #questo if inverte, a ogni iterazione, il valore della variabile cpu if [ $cpu = 2 ]; then cpu = 1 else cpu = 2 fi #questo ciclo for trova tutti i processi e, tramite il programmino #affinity, assegna ciascun pid alla cpu designata. for pid in `ps aux | grep -i NOMEPROCESSO | awk '{print $2}'` do /usr/sbin/affinity $pid $cpu done #faccio dormire il tutto per 10800 secondi, ovvero 3 ore sleep 10800 done ------------------- grazie mille per ogni eventuale correzione. Saluti -- Andrea Lusuardi - UoVoBW Registered Linux User #364578 http://uovobw.homelinux.org/ - GPG: 313C1073 Italy: the only country where there's a difference between "forbidden" and "strictly forbidden"
Attachment:
signature.asc
Description: PGP signature