참고 사이트 : http://oss.sgi.com/archives/netdev/2004-06/msg00197.html
그러니까,
linux# cat /proc/interrupts
CPU0 CPU1 CPU2 CPU3
0: 3248497 1403205 2133554 2023460 IO-APIC-edge timer
1: 290 41 287 136 IO-APIC-edge i8042
8: 0 0 0 0 IO-APIC-edge rtc
9: 0 0 0 0 IO-APIC-level acpi
12: 4113 1414 1245 5860 IO-APIC-edge i8042
14: 80792 98 2979 5681 IO-APIC-edge ide0
177: 0 0 0 0 IO-APIC-level ehci_hcd, uhci_hcd
185: 3882 2628 10213 1696 IO-APIC-level libata, uhci_hcd
193: 0 0 0 0 IO-APIC-level uhci_hcd
217: 24 51124253 0 0 PCI-MSI eth1
225: 6 0 14392039 0 PCI-MSI eth3
233: 13 0 0 21888105 PCI-MSI eth2
NMI: 21681752 21681638 21681669 21681636
LOC: 21677309 21677350 21677397 21677458
ERR: 0
MIS: 0
linux# cat /proc/irq/217/smp_affinity
02
linux# cat /proc/irq/225/smp_affinity
04
linux# cat /proc/irq/233/smp_affinity
08
linux#
eth1은 217번 softirq를 사용하고, 이것은 /proc/irq/217/smp_affinity를 참조하면 1번 CPU를 사용하도록 되어 있다. (smp_affinity 내용은 bitmask인것 같다. 즉 01이면 0번 CPU, 02면 1번 CPU, 0번과 1번을 같이 쓰는 것이면 03)
역으로 할당하게 되면, 해당 irq는 원하는 bitmask에 해당하는 CPU를 사용하게 되는 것이다. (!!)
'작업로그(SE) > Linux (배포본)' 카테고리의 다른 글
SELinux 관련 참고자료 (설정 끄기, 설정 확인, 기타) (2) | 2014.01.03 |
---|---|
Linux: /proc/cpuinfo 에서 Dual(Quad) Core와 Hyper Theading 구분하기 (0) | 2008.03.10 |
Channel Bonding은 iANS의 Teaming에서 나온 기술? (0) | 2007.10.30 |
linux에서 jumbo frame 세팅하기. (및, tcpdump로 저장하여 wireshark로 확인하기.) (0) | 2007.10.24 |
Linux: iptable의 connection tracking을 중지시키기. (0) | 2007.10.16 |