Tarhon-Onu Victor wrote:

On Tue, 17 Jan 2006, Tarhon-Onu Victor wrote:

pornesti un ghiavol numit irqbalance care se ocupa el de facut calculele si impartit irq-urile pe cpu-uri astfel incit sa fie cit mai egal distribuite.


Sau, daca vrei sa faci asta ad-labam, vezi /proc/irq/irqNum/snmp_affinity si apoi citeste /usr/src/linux-VersiuneaTa/Documentation/IRQ-affinity.txt, iti spune acolo despre masca de biti prin care poti distribui o intrerupere pe o multime formata din m CPU-uri (dintr-un total de n, m e din [1, n]).

In principiu mai exista si un program (in user-mode) cu care puteai modifica cpu affinity si pentru fiecare proces in parte, dar ultima oara cand l-am incercat eu dadea kernelul cu printk-uri in mine. Functioneaza la fel ca irq-affinity.


calcule matematice pe multi biti, multe si complicate, etc etc).


Pentru tot felul de trasnai pe care i le poti spune lui gcc pentru a optimiza cod... man gcc. Daca ai un distro rpm based atunci in .rpmrc-ul din home-ul userului cu care builduiesti rpm-uri poti scrie ceva de genul:

optflags: athlon -O2 -g -march=athlon -m3dnow -fomit-frame-pointer -fforce-addr -fforce-mem -maccumulate-outgoing-args -finline-limit=2048 optflags: i686 -O2 -g -march=pentium4 -msse2 -mfpmath=sse -fomit-frame-pointer -fforce-addr -fforce-mem -maccumulate-outgoing-args -finline-limit=2048 optflags: x86_64 -O2 -g -march=athlon64 -m3dnow -mfpmath=sse -m128bit-long-double -fomit-frame-pointer -fforce-addr -fforce-mem -maccumulate-outgoing-args -finline-limit=2048

Ma rog, asa ar arata scrise in .rpmrc, daca folosesti alt sistem de pachete sau pur si simplu le compilezi ad-minam atunci arunca optiunile cu pricina intr-un CFLAGS si respectiv CXXFLAGS (in env sau makefile-uri).

In functie de nevoile matale poti sa mai arunci si o privire pe la kernel preempt, disk io schedullers (deadline, cfq, anticipatory) si sa vezi care ti s-ar potrivi.




_______________________________________________
RLUG mailing list
RLUG@lists.lug.ro
http://lists.lug.ro/mailman/listinfo/rlug

Raspunde prin e-mail lui