| View previous topic :: View next topic |
| Author |
Message |
jesnow Guru

Joined: 26 Apr 2006 Posts: 394
|
Posted: Tue Feb 06, 2007 11:09 pm Post subject: nvidia chipsets + Core 2 Duo = uniprocessor [solved] |
|
|
Some nvidia NFORCE chipsets appear to be pretty thoroughly broken for use with
SMP under linux. Probably under windows too, but of course the problem is
better hidden there. I have an ASUS P5NSLI board that shows this problem,
but it appears that other boards show the same problem.
Sumptom 1: During boot you get messages like:
| Code: |
ENABLING IO-APIC IRQs
..TIMER: vector=0x31 apic1=0 pin1=0 apic2=-1 pin2=-1
..MP-BIOS bug: 8254 timer not connected to IO-APIC
...trying to set up timer (IRQ0) through the 8259A ... failed.
...trying to set up timer as Virtual Wire IRQ... failed.
...trying to set up timer as ExtINT IRQ... works.
checking TSC synchronization across 2 CPUs: passed.
|
Symptom 2: You then find that only CPU0 is allowed to process interrupts:
| Code: |
jesnow@Merckx ~ $ cat /proc/interrupts
CPU0 CPU1
0: 548400 0 XT-PIC-XT timer
1: 1328 0 IO-APIC-edge i8042
6: 3 0 IO-APIC-edge floppy
9: 0 0 IO-APIC-fasteoi acpi
12: 4 0 IO-APIC-edge i8042
14: 50 0 IO-APIC-edge ide0
16: 5672 0 IO-APIC-fasteoi eth0
17: 15399 0 IO-APIC-fasteoi libata, ohci_hcd:usb2
18: 0 0 IO-APIC-fasteoi libata
19: 302 0 IO-APIC-fasteoi ehci_hcd:usb1
20: 6670 0 IO-APIC-fasteoi HDA Intel
21: 74848 0 IO-APIC-fasteoi nvidia
NMI: 0 0
LOC: 536748 537048
ERR: 1
MIS: 0
|
Nvidia themselves have this to say about it:
http://download.nvidia.com/XFree86/nforce/1.0-0301/KnownProblems.html
| Quote: |
Network and other devices randomly stop working when ACPI is enabled
This problem may be caused by an incorrect ACPI table entry that causes the timer interrupt to be incorrectly configured.
If the kernel console boot trace (viewable using dmesg) contains messages such as these:
..MP-BIOS bug: 8254 timer not connected to IOAPIC
...trying to set up timer (IRQ0) through the 8259A . failed.
...trying to set up timer as Virtual Wire IRQ... failed.
...trying to set up timer as ExtINT IRQ... works.
then the incorrect ACPI table entry is present. On 2.6 kernels, this can be worked around by specifying the 'acpi_skip_timer_override' boot line option. An alternative workaround is to disable ACPI in the BIOS or by using the 'acpi=off' boot line option.
|
as well as
http://download.nvidia.com/XFree86/Linux-x86/1.0-8774/README/appendix-l.html
| Quote: |
Appendix L. Known Issues
The following problems still exist in this release and are in the process of being resolved.
Known Issues
<...>
Problems that Will Not Be Fixed
<...>
I/O APIC (SMP)
If you are experiencing stability problems with a Linux SMP machine and seeing I/O APIC warning messages from the Linux kernel, system reliability may be greatly improved by setting the "noapic" kernel parameter.
|
The 'acpi_skip_timer_override' boot-time option did something for a while, but I had stability issues
and stopped using it. 'noapic' makes you a uniprocessor machine, and kills the sound. In the meantime, I have replicated this behavior on all recent kernels, and combinations of relevant boot parameters. My conclusion is, until somebody takes an interest and fixes this problem, motherboards with the affected chipsets (I don't know which these are) are seriously degraded in performance for most tasks. My mobo has the NForce MCP55 chipset.
Anybody who might know more about this, or a possible workaround, please post!
Cheers,
Jon.
Last edited by jesnow on Sat Dec 22, 2007 10:30 pm; edited 3 times in total |
|
| Back to top |
|
 |
ntrl n00b


Joined: 26 Sep 2004 Posts: 34 Location: SPb, Russia
|
Posted: Thu Mar 15, 2007 7:56 pm Post subject: |
|
|
Hi.
try pci=bios _________________ --
WBR |
|
| Back to top |
|
 |
jesnow Guru

Joined: 26 Apr 2006 Posts: 394
|
Posted: Tue Mar 20, 2007 8:27 pm Post subject: |
|
|
| ntrl wrote: | Hi.
try pci=bios |
Tried that, tried acpi_skip_timer_override, which worked on some kernels
a while a go, nada.
jon |
|
| Back to top |
|
 |
ntrl n00b


Joined: 26 Sep 2004 Posts: 34 Location: SPb, Russia
|
Posted: Tue Mar 20, 2007 9:03 pm Post subject: |
|
|
What MB? Asus, gigabyte? May be flash new bios? _________________ --
WBR |
|
| Back to top |
|
 |
jesnow Guru

Joined: 26 Apr 2006 Posts: 394
|
Posted: Wed Mar 21, 2007 12:03 am Post subject: |
|
|
| ntrl wrote: | | What MB? Asus, gigabyte? May be flash new bios? |
Yes, an ASUS P5NSLI, newest available BIOS. I'm really at Witts End on this.
Jon. |
|
| Back to top |
|
 |
jesnow Guru

Joined: 26 Apr 2006 Posts: 394
|
Posted: Wed Mar 21, 2007 2:48 am Post subject: |
|
|
I have submitted a bug report on kernel bugzilla, will report back.
Jon. |
|
| Back to top |
|
 |
jesnow Guru

Joined: 26 Apr 2006 Posts: 394
|
Posted: Wed Mar 21, 2007 3:42 pm Post subject: |
|
|
Someone in Kernel bugzilla had this to say:
| Quote: |
------- Additional Comment #1 From Dave Jones 2007-03-20 14:53 -------
CPU1 won't handle interrupts unless irqbalance is run.
See http://www.irqbalance.org
|
So I tried that and got:
| Code: |
Merckx jesnow # equery list irqbalance
[ Searching for package 'irqbalance' in all categories among: ]
* installed packages
[I--] [ ] sys-apps/irqbalance-0.55 (0)
Merckx jesnow # /etc/init.d/irqbalance start
* irqbalance: your machine lacks different physical processors; not enabling
|
Which is strange, since both cpus are recognized everywhere else, like in /proc and so forth. |
|
| Back to top |
|
 |
ZeroDivide Tux's lil' helper


Joined: 15 Mar 2003 Posts: 83
|
Posted: Sun Mar 25, 2007 3:24 pm Post subject: |
|
|
I was having the same problems with an Epox 9NPA3-SLI motherboard.
Eventually I found that disabling ACPI caused APIC to work properly. So I just have to pass "acpi=no" as a kernel parameter and smp appears to work fine. |
|
| Back to top |
|
 |
jesnow Guru

Joined: 26 Apr 2006 Posts: 394
|
Posted: Mon Apr 02, 2007 6:40 pm Post subject: |
|
|
| ZeroDivide wrote: | I was having the same problems with an Epox 9NPA3-SLI motherboard.
Eventually I found that disabling ACPI caused APIC to work properly. So I just have to pass "acpi=no" as a kernel parameter and smp appears to work fine. |
I tried this, and interestingly, it had no effect at all -- that is SMP dontinued to be broken as before, and there are lots of ACPI messages in dmesg. |
|
| Back to top |
|
 |
Rikai n00b

Joined: 05 Feb 2005 Posts: 65 Location: Huntsville, AL
|
Posted: Tue Apr 03, 2007 7:40 am Post subject: |
|
|
If there's a bad ACPI table entry, you might try fixing it youself with a custom DSDT?
At the very least, I don't think it can hurt. |
|
| Back to top |
|
 |
jesnow Guru

Joined: 26 Apr 2006 Posts: 394
|
Posted: Tue Apr 03, 2007 11:05 pm Post subject: |
|
|
| Rikai wrote: | If there's a bad ACPI table entry, you might try fixing it youself with a custom DSDT?
At the very least, I don't think it can hurt. |
Wow, this looks daunting, but I can give it a try. I could find no references to
DSDT in connection with my MB in the web, so no indication that this has worked for
anyone else.
The procedure outlined seems so simplistic that I can't imagine it working for me except by pure chance without specific knowledge of ACPI programming. Worth a try though. Thanks! |
|
| Back to top |
|
 |
transsib Guru


Joined: 26 Jul 2003 Posts: 536
|
Posted: Wed Apr 04, 2007 4:35 am Post subject: |
|
|
I haven't looked so hard at the boot messages on booting. My mobo is a asus p5n32-e sli with nforce680 chipset and a pentium 4 .
I don't know whether it is related to that problem but I had to give the kernel pci=nomsi on boot to make net.eth0 actually work. I've tried several kernels and for each of them I had to write that into grub.
Does anyone know what pci=nomsi does and how it affects other pci traffic on the board?
I have a beta bios and intend to flash it to the same bios rev. because it just got out of beta status. The system is all in all pretty fast and has no stability problems but I haven't pushed it to its limits yet. It is only 4 weeks old.
My /proc/interrupts looks like this
| Code: | cat /proc/interrupts
CPU0 CPU1
0: 1382981 0 IO-APIC-edge timer
1: 2 0 IO-APIC-edge i8042
6: 3 0 IO-APIC-edge floppy
8: 1 0 IO-APIC-edge rtc
9: 0 0 IO-APIC-fasteoi acpi
12: 4 0 IO-APIC-edge i8042
14: 12293 0 IO-APIC-edge ide0
16: 83499 0 IO-APIC-fasteoi nvidia
17: 7 0 IO-APIC-fasteoi Bt87x audio, bttv0
20: 21919 0 IO-APIC-fasteoi ohci_hcd:usb1
21: 215 0 IO-APIC-fasteoi libata, HDA Intel
22: 141894 0 IO-APIC-fasteoi libata, eth0
23: 8632 0 IO-APIC-fasteoi libata, ehci_hcd:usb2
NMI: 201 149
LOC: 1382974 1382973
ERR: 0
|
Lioba _________________ *** Challenge your preconceptions or they will challenge you *** |
|
| Back to top |
|
 |
jesnow Guru

Joined: 26 Apr 2006 Posts: 394
|
Posted: Thu Apr 05, 2007 4:15 pm Post subject: |
|
|
| Rikai wrote: | If there's a bad ACPI table entry, you might try fixing it youself with a custom DSDT?
At the very least, I don't think it can hurt. |
OK, I did that, and got only warnings, no errors:
| Code: |
Intel ACPI Component Architecture
ASL Optimizing Compiler version 20060912 [Apr 5 2007]
Copyright (C) 2000 - 2006 Intel Corporation
Supports ACPI Specification Revision 3.0a
dsdt.dsl 386: Method (\_WAK, 1, NotSerialized)
Warning 1079 - ^ Reserved method must return a value (_WAK)
dsdt.dsl 2310: Method (GFSB, 0, NotSerialized)
Warning 1086 - ^ Not all control paths return a value (GFSB)
dsdt.dsl 4629: Method (RVLT, 1, NotSerialized)
Warning 1086 - ^ Not all control paths return a value (RVLT)
dsdt.dsl 4749: Method (RTMP, 1, NotSerialized)
Warning 1086 - ^ Not all control paths return a value (RTMP)
dsdt.dsl 4901: Store (GFSB (), Local0)
Warning 1091 - ^ Called method may not always return a value
dsdt.dsl 4927: Method (OCOP, 1, NotSerialized)
Warning 1086 - ^ Not all control paths return a value (OCOP)
dsdt.dsl 4943: Subtract (Local1, GFSB (), Local1)
Warning 1091 - ^ Called method may not always return a value
dsdt.dsl 5206: Multiply (GFSB (), Local1, Local1)
Warning 1091 - ^ Called method may not always return a value
dsdt.dsl 5213: Subtract (Local1, GFSB (), Local1)
Warning 1091 - ^ Called method may not always return a value
ASL Input: dsdt.dsl - 8318 lines, 261914 bytes, 3426 keywords
AML Output: dsdt.aml - 27191 bytes 1073 named objects 2353 executable opcodes
Compilation complete. 0 Errors, 9 Warnings, 0 Remarks, 939 Optimizations
|
But it looks to me like these are not warnings that are relevant to the timer binding. At least I can't make heads or tails of them, and anyway, they're warnings.
What now?
Cheers,
Jon. |
|
| Back to top |
|
 |
jesnow Guru

Joined: 26 Apr 2006 Posts: 394
|
Posted: Sun Apr 08, 2007 1:45 pm Post subject: |
|
|
I'm a little upset that this thread is petering out and that there is no action on the kernel.org bug I submitted. I think this may go back to the general linux mentality of "it boots, it works". There have to be a lot of people out there with broken SMP who don't know it, and they wonder why their machine is less responsive under linux than under that other OS.
Is it really OK fo a large fraction of machines out there to not process interrupts on both CPU's? What happens when the primary advance in computing power is by adding cores? That's happening now.
At the very least can people with Core 2 processors run cat /proc/interrupts and post here if their machine works (say what your mobo and chipset are).
Cheers,
Jon. |
|
| Back to top |
|
 |
arkhan_jg Apprentice


Joined: 18 Mar 2003 Posts: 199 Location: Dorset, UK
|
Posted: Mon Apr 09, 2007 8:25 am Post subject: |
|
|
It may also be that it's not strictly a fault in the kernel; if the ACPI table is broken on the motherboard, i.e. ASUS only tested that their BIOS worked with the incredibly out-of-spec tolerating windows, and the nforce chipset drivers aren't happy with a badly implemented ACPI table under linux...
I presume you've tried disabling ACPI in the BIOS directly rather than just passing ACPI=no in the kernel arguments? APM will do the job for a desktop, ACPI causes more problems than it solves IMO for desktops, the implementations are usually so badly written, which is a shame is it does solve some IRQ issues.
I don't have linux installed on any of my core 2 at home, but I have ubuntu on my nforce 4 sli x16 (asus p5n32-sli se deluxe) core 2 at work; I'll have a look at that one when I come back off holiday.
Also, I thought the MCP55 chipset was an athlon AM2 one? The P5NSLI normally has an nforce 570. _________________ make menuconfig not war |
|
| Back to top |
|
 |
xanas3712 Guru


Joined: 15 Oct 2004 Posts: 455
|
Posted: Mon Apr 09, 2007 7:20 pm Post subject: |
|
|
I'll try to check on this when I get home, but I'm not running nforce and both cores seem to work fine, but I'm curious of what the output is supposed to look like by comparison since I've not looked into this before.
| Code: |
CPU0 CPU1
0: 22889202 0 IO-APIC-edge timer
1: 2 0 IO-APIC-edge i8042
6: 5 0 IO-APIC-edge floppy
7: 0 0 IO-APIC-edge parport0
8: 0 0 IO-APIC-edge rtc
9: 0 0 IO-APIC-fasteoi acpi
12: 4 0 IO-APIC-edge i8042
16: 10362546 0 IO-APIC-fasteoi uhci_hcd:usb3, eth0, libata, nvidia
18: 3 0 IO-APIC-fasteoi ehci_hcd:usb1, uhci_hcd:usb7
19: 954920 0 IO-APIC-fasteoi uhci_hcd:usb6, libata, libata, libata
21: 0 0 IO-APIC-fasteoi uhci_hcd:usb4
22: 536054 0 IO-APIC-fasteoi HDA Intel
23: 643674 0 IO-APIC-fasteoi ehci_hcd:usb2, uhci_hcd:usb5
NMI: 14487 13645
LOC: 22706729 22706709
ERR: 0
|
I guess this would mean I am not working quite right either?
IRQbalance didn't have the problem for me it did for you, it seems to start anyhow, but maybe it won't assign interrupts until I reboot?
| Quote: |
CPU0 CPU1
0: 25065078 0 IO-APIC-edge timer
1: 2 0 IO-APIC-edge i8042
6: 5 0 IO-APIC-edge floppy
7: 0 0 IO-APIC-edge parport0
8: 0 0 IO-APIC-edge rtc
9: 0 0 IO-APIC-fasteoi acpi
12: 4 0 IO-APIC-edge i8042
16: 11718170 18365 IO-APIC-fasteoi uhci_hcd:usb3, eth0, libata, nvidia
18: 3 0 IO-APIC-fasteoi ehci_hcd:usb1, uhci_hcd:usb7
19: 998367 434 IO-APIC-fasteoi uhci_hcd:usb6, libata, libata, libata
21: 0 0 IO-APIC-fasteoi uhci_hcd:usb4
22: 690203 0 IO-APIC-fasteoi HDA Intel
23: 1016522 0 IO-APIC-fasteoi ehci_hcd:usb2, uhci_hcd:usb5
NMI: 14929 14056
LOC: 24861674 24861654
ERR: 0
|
It changed some while running I noticed |
|
| Back to top |
|
 |
jesnow Guru

Joined: 26 Apr 2006 Posts: 394
|
Posted: Tue Apr 10, 2007 7:47 am Post subject: |
|
|
| xanas3712 wrote: | I'll try to check on this when I get home, but I'm not running nforce and both cores seem to work fine, but I'm curious of what the output is supposed to look like by comparison since I've not looked into this before.
| Code: |
CPU0 CPU1
0: 22889202 0 IO-APIC-edge timer
1: 2 0 IO-APIC-edge i8042
6: 5 0 IO-APIC-edge floppy
7: 0 0 IO-APIC-edge parport0
8: 0 0 IO-APIC-edge rtc
9: 0 0 IO-APIC-fasteoi acpi
12: 4 0 IO-APIC-edge i8042
16: 10362546 0 IO-APIC-fasteoi uhci_hcd:usb3, eth0, libata, nvidia
18: 3 0 IO-APIC-fasteoi ehci_hcd:usb1, uhci_hcd:usb7
19: 954920 0 IO-APIC-fasteoi uhci_hcd:usb6, libata, libata, libata
21: 0 0 IO-APIC-fasteoi uhci_hcd:usb4
22: 536054 0 IO-APIC-fasteoi HDA Intel
23: 643674 0 IO-APIC-fasteoi ehci_hcd:usb2, uhci_hcd:usb5
NMI: 14487 13645
LOC: 22706729 22706709
ERR: 0
|
I guess this would mean I am not working quite right either?
IRQbalance didn't have the problem for me it did for you, it seems to start anyhow, but maybe it won't assign interrupts until I reboot?
| Code: |
CPU0 CPU1
0: 25065078 0 IO-APIC-edge timer
1: 2 0 IO-APIC-edge i8042
6: 5 0 IO-APIC-edge floppy
7: 0 0 IO-APIC-edge parport0
8: 0 0 IO-APIC-edge rtc
9: 0 0 IO-APIC-fasteoi acpi
12: 4 0 IO-APIC-edge i8042
16: 11718170 18365 IO-APIC-fasteoi uhci_hcd:usb3, eth0, libata, nvidia
18: 3 0 IO-APIC-fasteoi ehci_hcd:usb1, uhci_hcd:usb7
19: 998367 434 IO-APIC-fasteoi uhci_hcd:usb6, libata, libata, libata
21: 0 0 IO-APIC-fasteoi uhci_hcd:usb4
22: 690203 0 IO-APIC-fasteoi HDA Intel
23: 1016522 0 IO-APIC-fasteoi ehci_hcd:usb2, uhci_hcd:usb5
NMI: 14929 14056
LOC: 24861674 24861654
ERR: 0
|
It changed some while running I noticed |
Not running nforce? Maybe this problem is more widespread than I thought! How many "happy" linux users out there have broken SMP and don't know it? Your luck with irqbalange is encouraging, but it looks like you have only 0.1% use of CPU1 on two interrupts. I guesss this is better than I have, but still not impressive. And why did you need it at all? Isn't the linux kernel supposed to handle multiprocessing all by itself? Who knows the answer to this?
Jon. |
|
| Back to top |
|
 |
aceFruchtsaft Guru


Joined: 16 May 2004 Posts: 435 Location: Vienna, Austria
|
Posted: Tue Apr 10, 2007 8:05 am Post subject: |
|
|
My output is also similar and I have an Asus P5B Deluxe with an Intel P965 Chipset:
| Code: |
# cat /proc/interrupts
CPU0 CPU1
0: 3986155 0 IO-APIC-edge timer
1: 2 0 IO-APIC-edge i8042
6: 3 0 IO-APIC-edge floppy
8: 1 0 IO-APIC-edge rtc
9: 0 0 IO-APIC-fasteoi acpi
12: 4 0 IO-APIC-edge i8042
16: 284222 0 IO-APIC-fasteoi stex, uhci_hcd:usb3, nvidia
17: 78225 0 IO-APIC-fasteoi libata, uhci_hcd:usb4
18: 0 0 IO-APIC-fasteoi ehci_hcd:usb1, uhci_hcd:usb7
19: 24421 0 IO-APIC-fasteoi uhci_hcd:usb6
21: 3 0 IO-APIC-fasteoi ohci1394
22: 1267 0 IO-APIC-fasteoi EMU10K1
23: 6 0 IO-APIC-fasteoi ohci1394, ehci_hcd:usb2, uhci_hcd:usb5
314: 48582 0 PCI-MSI-edge eth0
315: 17035 0 PCI-MSI-edge libata
NMI: 395 252
LOC: 3906513 3906431
ERR: 0
|
Irqbalance seems to change this a bit:
| Code: |
# cat /proc/interrupts
CPU0 CPU1
0: 4215430 0 IO-APIC-edge timer
1: 2 0 IO-APIC-edge i8042
6: 3 0 IO-APIC-edge floppy
8: 1 0 IO-APIC-edge rtc
9: 0 0 IO-APIC-fasteoi acpi
12: 4 0 IO-APIC-edge i8042
16: 285262 13461 IO-APIC-fasteoi stex, uhci_hcd:usb3, nvidia
17: 78613 4471 IO-APIC-fasteoi libata, uhci_hcd:usb4
18: 0 0 IO-APIC-fasteoi ehci_hcd:usb1, uhci_hcd:usb7
19: 24464 2917 IO-APIC-fasteoi uhci_hcd:usb6
21: 3 0 IO-APIC-fasteoi ohci1394
22: 1267 0 IO-APIC-fasteoi EMU10K1
23: 6 0 IO-APIC-fasteoi ohci1394, ehci_hcd:usb2, uhci_hcd:usb5
314: 48597 409 PCI-MSI-edge eth0
315: 17955 0 PCI-MSI-edge libata
NMI: 401 261
LOC: 4131093 4131011
ERR: 0
|
|
|
| Back to top |
|
 |
drescherjm Advocate

Joined: 05 Jun 2004 Posts: 2729 Location: Pittsburgh, PA, USA
|
Posted: Tue Apr 10, 2007 8:07 am Post subject: |
|
|
Here is my result for a dual processor Opteron on a 2.6.19 vserver sources kernel:
| Code: |
# cat /proc/interrupts
CPU0 CPU1
0: 180589 54482577 IO-APIC-edge timer
1: 385 96788 IO-APIC-edge i8042
8: 12110 1348081 IO-APIC-edge rtc
9: 0 0 IO-APIC-fasteoi acpi
12: 10010 1907253 IO-APIC-edge i8042
14: 1 455 IO-APIC-edge ide0
15: 212 35128 IO-APIC-edge ide1
16: 17716 18720723 IO-APIC-fasteoi ivtv0, nvidia
17: 17442 2716677 IO-APIC-fasteoi libata, AMD AMD8111, ivtv1
19: 0 3 IO-APIC-fasteoi ohci_hcd:usb1, ohci_hcd:usb2, ohci1394
24: 53393 7817791 IO-APIC-fasteoi eth0
NMI: 2358 2773
LOC: 54662053 54661795
ERR: 0
|
It looks like interrupts favor CPU1 for me. _________________ John
My gentoo overlay
Instructons for overlay |
|
| Back to top |
|
 |
DirtyHairy Guru

Joined: 03 Jul 2006 Posts: 520 Location: Freiburg, Deutschland
|
Posted: Tue Apr 10, 2007 9:49 am Post subject: |
|
|
Sorry folks, I might be wrong on that one, but imho balancing interrupts is irrelevant where speed is concerned (at least for an usual desktop configuration). The speed improvement with multicore systems comes from the ability of balancing multiple threads between several physical CPUs, nothing else. If this works (and you can check this as easily as firing up several time-consuming processes and then looking at top output), your SMP is working fine. For example, | Code: | | cat /proc/interrupts | gives
| Code: | 0: 29318702 0 IO-APIC-edge timer
1: 39862 0 IO-APIC-edge i8042
3: 136564 0 IO-APIC-edge serial
8: 70 0 IO-APIC-edge rtc
9: 64191 0 IO-APIC-fasteoi acpi
12: 5859246 0 IO-APIC-edge i8042
14: 401980 0 IO-APIC-edge libata
15: 181 0 IO-APIC-edge libata
16: 2596924 0 IO-APIC-fasteoi yenta, uhci_hcd:usb2, fglrx
21: 1 0 IO-APIC-fasteoi ehci_hcd:usb1, uhci_hcd:usb5
22: 1546273 0 IO-APIC-fasteoi uhci_hcd:usb3, ipw3945, HDA Intel
23: 0 0 IO-APIC-fasteoi uhci_hcd:usb4
218: 29486 0 PCI-MSI-edge eth0
NMI: 0 0
LOC: 29318542 29145006
ERR: 0
MIS: 0
|
on my machine (CoreDuo) right now, but SMP is working perfectly... |
|
| Back to top |
|
 |
Cyker Veteran

Joined: 15 Jun 2006 Posts: 1427
|
Posted: Tue Apr 10, 2007 11:35 am Post subject: |
|
|
Just for kicks, here's my S3 VirgeDX-powered headless server
| Code: | CPU0 CPU1
0: 334558800 368774720 IO-APIC-edge timer
1: 16698570 9 IO-APIC-edge i8042
8: 1 1 IO-APIC-edge rtc
9: 0 0 IO-APIC-fasteoi acpi
12: 0 4 IO-APIC-edge i8042
14: 634681 436830 IO-APIC-edge ide0
15: 1227436 718240 IO-APIC-edge ide1
16: 86082431 59423925 IO-APIC-fasteoi eth0
17: 339155214 320390828 IO-APIC-fasteoi ohci_hcd:usb2, eth1
18: 0 0 IO-APIC-fasteoi libata
19: 18419792 15351524 IO-APIC-fasteoi libata
20: 15879395 16773603 IO-APIC-fasteoi libata
21: 767036 4517244 IO-APIC-fasteoi ehci_hcd:usb1
NMI: 0 0
LOC: 703332108 703332107
ERR: 1
MIS: 0 |
I'm not sure about the workarounds for the interrupt stuff; Having only one CPU handle interrupts will bottleneck the system quite badly, espescially during heavy I/O.
We really need to assemble a list of 'Linux-approved' motherboards and hardware in general... |
|
| Back to top |
|
 |
xanas3712 Guru


Joined: 15 Oct 2004 Posts: 455
|
Posted: Tue Apr 10, 2007 11:41 am Post subject: |
|
|
I'm not sure honestly. I do know the system runs better even before the interrupt change than the single cores here. And I've not noticed an issue until it was brought up about it.
Anyhow, I didn't say my chipset earlier and forgot what motherboard I was using for some strange reason. It's an intel 965P. Gigabyte-965P-S3 if I recall correctly. |
|
| Back to top |
|
 |
DirtyHairy Guru

Joined: 03 Jul 2006 Posts: 520 Location: Freiburg, Deutschland
|
Posted: Tue Apr 10, 2007 11:49 am Post subject: |
|
|
Running irqbalance changed things for me a bit
| Code: | CPU0 CPU1
0: 36419287 0 IO-APIC-edge timer
1: 43461 3358 IO-APIC-edge i8042
3: 141920 27782 IO-APIC-edge serial
8: 70 0 IO-APIC-edge rtc
9: 66966 3981 IO-APIC-fasteoi acpi
12: 5993784 920334 IO-APIC-edge i8042
14: 472453 142750 IO-APIC-edge libata
15: 181 0 IO-APIC-edge libata
16: 2690653 499048 IO-APIC-fasteoi yenta, uhci_hcd:usb2, fglrx
21: 1 0 IO-APIC-fasteoi ehci_hcd:usb1, uhci_hcd:usb5
22: 1546324 5800 IO-APIC-fasteoi uhci_hcd:usb3, ipw3945, HDA Intel
23: 0 0 IO-APIC-fasteoi uhci_hcd:usb4
218: 34126 30765 PCI-MSI-edge eth0
NMI: 0 0
LOC: 36419127 36245351
ERR: 0
MIS: 0
|
but I really didn't notice any performance differences... I suppose it is the case as with many optimizations: there ARE configurations where they may pay off, but for an ordinary user using an ordinary desktop configuration, the difference will be barely noticable. I have been doing scientific calculations on that machine which involved much number crunching as well as heavy data transfers, and never noticed any sign of the system becoming laggy or unresponsive (without irqbalance which I just tried out now), the system was very snappy even with both cores 100% loaded  |
|
| Back to top |
|
 |
Cyker Veteran

Joined: 15 Jun 2006 Posts: 1427
|
Posted: Tue Apr 10, 2007 2:09 pm Post subject: |
|
|
Yeah... Linux already has a fantastic scheduler, and most Linux users don't really need two cores anyway so I think for the most part the performance difference will be negligible.
If you're doing heavy processing (Like this Folding@Home thing which seems to be popular ), then the interrupts used will not be as bad since it actually does only very little I/O.
I suspect on my system it might have more of an effect because I *am* doing ridiculous amounts of I/O; Between the RAID array and the two gigabit cards espescially, and on systems that heavily use both cores for real-time stuff (I'm thinking FPS games and such) then it could also suck pretty bad. |
|
| Back to top |
|
 |
xanas3712 Guru


Joined: 15 Oct 2004 Posts: 455
|
Posted: Tue Apr 10, 2007 7:10 pm Post subject: |
|
|
| Maybe newer games, I'll only be able to test it maybe when unreal 2007 comes out. With an 8800 GTS quake 4 runs flawlessly, but there aren't too many other linux games with high end graphics (and that one is aging quickly) to really know for sure. |
|
| Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|