Adott egy nagyobb forgalmú Apache szerver aminek futtatásához csak 1 magot adtam. A többi magot megkapták a játékszerverek, streamtranscoderek és más CPU igényes alkalmazások.
Viszont van néhány program, amit a felhasználó indít el egy webes felületen, amit az 1 magon futó Apache szolgál ki. A programok már az user neve alatt futnak és ezek is csak 1 magot használnak. Ezeknek a cpu mag használatát utólag állítom tasksettel cronból.
Próbaképpen a Liquidsoapot próbáltam áttenni a 4. magról az 1. magra
root@brm:/# ps aux | grep "^teszt " | grep liquidsoap
teszt 16586 6.0 0.3 198940 26692 pts/85 Sl+ 20:52 0:41 /usr/bin/liquidsoap ../.set/.trans
root@brm:/# taskset -p 1 16586
pid 16586's current affinity mask: 1
pid 16586's new affinity mask: 1
root@brm:/#
Látszólag tökéletesen átállítja, viszont a htop mást mutat. Ráadásul 1 helyett 7 db processzt
16594 4 teszt 20 0 195M 27528 7028 S 0.0 0.3 0:00.00 /usr/bin/liquidsoap ../.set/.trans
16595 4 teszt 20 0 195M 27528 7028 S 0.0 0.3 0:00.00 /usr/bin/liquidsoap ../.set/.trans
16596 4 teszt 20 0 195M 27528 7028 S 0.0 0.3 0:00.00 /usr/bin/liquidsoap ../.set/.trans
16597 4 teszt 20 0 195M 27528 7028 S 0.0 0.3 0:00.00 /usr/bin/liquidsoap ../.set/.trans
16599 4 teszt 20 0 195M 27528 7028 S 1.0 0.3 0:00.21 /usr/bin/liquidsoap ../.set/.trans
16611 4 teszt 20 0 195M 27528 7028 S 5.0 0.3 0:01.76 /usr/bin/liquidsoap ../.set/.trans
16586 4 teszt 20 0 195M 27528 7028 S 7.0 0.3 0:02.10 /usr/bin/liquidsoap ../.set/.trans
A 16586-os processz az elso magon van ahogy kell neki, de a többinél már ez a helyzet:
Use CPUs:
[ ] 1
[ ] 2
[ ] 3
[x] 4
ps meg ezt hazudja a 7 processzre ha mindet ki akarom iratni
root@brm:/# ps auxH | grep "^teszt " | grep liquidsoap
teszt 16586 0.0 0.3 198936 26564 pts/85 Sl+ 20:52 0:00 /usr/bin/liquidsoap ../.set/.trans
teszt 16586 0.0 0.3 198936 26564 pts/85 Sl+ 20:52 0:00 /usr/bin/liquidsoap ../.set/.trans
teszt 16586 0.0 0.3 198936 26564 pts/85 Sl+ 20:52 0:00 /usr/bin/liquidsoap ../.set/.trans
teszt 16586 0.0 0.3 198936 26564 pts/85 Sl+ 20:52 0:00 /usr/bin/liquidsoap ../.set/.trans
teszt 16586 0.0 0.3 198936 26564 pts/85 Sl+ 20:52 0:00 /usr/bin/liquidsoap ../.set/.trans
teszt 16586 0.5 0.3 198936 26564 pts/85 Sl+ 20:52 0:02 /usr/bin/liquidsoap ../.set/.trans
teszt 16586 5.5 0.3 198936 26564 pts/85 Sl+ 20:52 0:24 /usr/bin/liquidsoap ../.set/.trans
root@brm:/#
Ez esetben mindegyiknek azonos a pidje.
Lényeg, hogy a htop szerint kiirt processzeket is szeretném scriptből átállítani.
Help pls!
(Debian Wheezy, kernel: 3.7.1)
- 1838 megtekintés
Hozzászólások
up
- A hozzászóláshoz be kell jelentkezni