The latest amd64 snapshots have ACPI enabled. On my Shuttle SN25P, with an
AMD dual core processor, this leads to a significant decrease in
performance. For example, given the same bsd.mp kernel on an unloaded
system, here's a time'd compile of an application with ACPI disabled:

  gmake  50.99s user 7.26s system 92% cpu 1:03.29 total

and with ACPI enabled:

  gmake  53.05s user 10.81s system 73% cpu 1:26.57 total

As you can see, enabling ACPI leads to a more-or-less 50% slowdown. I did
file an informal report about this same issue in January, so I don't think
this is a new problem.

With ACPI enabled, even when the machine is idle top shows that one
processor is fairly continuously spending 60-70% of its time processing
interrupts. In use, the machine feels really sluggish, as if using a machine
from several years back. Disabling ACPI at UKC is all that is needed to
restore performance.

Here's the dmesg with ACPI disabled:

  OpenBSD 4.1-current (GENERIC.MP) #1286: Thu Jun  7 00:52:32 MDT 2007
      [EMAIL PROTECTED]:/usr/src/sys/arch/amd64/compile/GENERIC.MP
  real mem = 1073278976 (1023MB)
  avail mem = 1025142784 (977MB)
  User Kernel Config
  UKC> disable acpi
  263 acpi0 disabled
  UKC> quit
  Continuing...
  mainbus0 at root
  bios0 at mainbus0: SMBIOS rev. 2.2 @ 0xf0000 (32 entries)
  bios0: Shuttle Inc SN25V10
  acpi at mainbus0 not configured
  mainbus0: Intel MP Specification (Version 1.1)
  cpu0 at mainbus0: apid 0 (boot processor)
  cpu0: AMD Athlon(tm) 64 X2 Dual Core Processor 4200+, 2210.47 MHz
  cpu0: 
FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,MMX,FXSR,SSE,SSE2,HTT,SSE3,NXE,MMXX,FFXSR,LONG,3DNOW2,3DNOW
  cpu0: 64KB 64b/line 2-way I-cache, 64KB 64b/line 2-way D-cache, 512KB 
64b/line 16-way L2 cache
  cpu0: ITLB 32 4KB entries fully associative, 8 4MB entries fully associative
  cpu0: DTLB 32 4KB entries fully associative, 8 4MB entries fully associative
  cpu0: apic clock running at 200MHz
  cpu1 at mainbus0: apid 1 (application processor)
  cpu1: AMD Athlon(tm) 64 X2 Dual Core Processor 4200+, 2210.19 MHz
  cpu1: 
FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,MMX,FXSR,SSE,SSE2,HTT,SSE3,NXE,MMXX,FFXSR,LONG,3DNOW2,3DNOW
  cpu1: 64KB 64b/line 2-way I-cache, 64KB 64b/line 2-way D-cache, 512KB 
64b/line 16-way L2 cache
  cpu1: ITLB 32 4KB entries fully associative, 8 4MB entries fully associative
  cpu1: DTLB 32 4KB entries fully associative, 8 4MB entries fully associative
  mpbios: bus 0 is type PCI   
  mpbios: bus 1 is type PCI   
  mpbios: bus 2 is type PCI   
  mpbios: bus 3 is type PCI   
  mpbios: bus 4 is type PCI   
  mpbios: bus 5 is type PCI   
  mpbios: bus 6 is type ISA   
  ioapic0 at mainbus0 apid 2 pa 0xfec00000, version 11, 24 pins
  ioapic0: misconfigured as apic 0, remapped to apid 2
  pci0 at mainbus0 bus 0: configuration mode 1
  "NVIDIA nForce4 DDR" rev 0xa3 at pci0 dev 0 function 0 not configured
  pcib0 at pci0 dev 1 function 0 "NVIDIA nForce4 ISA" rev 0xa3
  nviic0 at pci0 dev 1 function 1 "NVIDIA nForce4 SMBus" rev 0xa2
  iic0 at nviic0
  iic1 at nviic0
  adt0 at iic1 addr 0x2e: adm1027 rev 0x6a
  iic1: addr 0x4e 03=08 04=08 12=fd 13=0f 28=83 29=12 2a=12 2b=28
  ohci0 at pci0 dev 2 function 0 "NVIDIA nForce4 USB" rev 0xa2: apic 2 int 11 
(irq 11), version 1.0, legacy support
  pciide0 at pci0 dev 6 function 0 "NVIDIA nForce4 IDE" rev 0xf2: DMA, channel 
0 configured to compatibility, channel 1 configured to compatibility
  atapiscsi0 at pciide0 channel 0 drive 0
  scsibus0 at atapiscsi0: 2 targets
  cd0 at scsibus0 targ 0 lun 0: <SONY, CD-RW CRX320EE, RYK3> SCSI0 5/cdrom 
removable
  cd0(pciide0:0:0): using PIO mode 4, Ultra-DMA mode 2
  pciide0: channel 1 ignored (disabled)
  pciide1 at pci0 dev 7 function 0 "NVIDIA nForce4 SATA" rev 0xf3: DMA
  pciide1: using apic 2 int 10 (irq 10) for native-PCI interrupt
  wd0 at pciide1 channel 0 drive 0: <WDC WD1500ADFD-00NLR0>
  wd0: 16-sector PIO, LBA48, 143089MB, 293046768 sectors
  wd0(pciide1:0:0): using PIO mode 4, Ultra-DMA mode 5
  pciide2 at pci0 dev 8 function 0 "NVIDIA nForce4 SATA" rev 0xf3: DMA
  pciide2: using apic 2 int 11 (irq 11) for native-PCI interrupt
  ppb0 at pci0 dev 9 function 0 "NVIDIA nForce4 PCI-PCI" rev 0xa2
  pci1 at ppb0 bus 5
  "IC Ensemble Envy24PT/HT Audio" rev 0x01 at pci1 dev 6 function 0 not 
configured
  "VIA VT6306 FireWire" rev 0x80 at pci1 dev 7 function 0 not configured
  nfe0 at pci0 dev 10 function 0 "NVIDIA CK804 LAN" rev 0xa3: apic 2 int 5 (irq 
5), address 00:30:1b:b9:05:6c
  eephy0 at nfe0 phy 1: Marvell 88E1111 Gigabit PHY, rev. 2
  ppb1 at pci0 dev 11 function 0 "NVIDIA nForce4 PCIE" rev 0xa3
  pci2 at ppb1 bus 4
  ppb2 at pci0 dev 12 function 0 "NVIDIA nForce4 PCIE" rev 0xa3
  pci3 at ppb2 bus 3
  ppb3 at pci0 dev 13 function 0 "NVIDIA nForce4 PCIE" rev 0xa3
  pci4 at ppb3 bus 2
  ppb4 at pci0 dev 14 function 0 "NVIDIA nForce4 PCIE" rev 0xa3
  pci5 at ppb4 bus 1
  vga1 at pci5 dev 0 function 0 "NVIDIA GeForce 6600" rev 0xa2
  wsdisplay0 at vga1 mux 1: console (80x25, vt100 emulation)
  wsdisplay0: screen 1-5 added (80x25, vt100 emulation)
  pchb0 at pci0 dev 24 function 0 "AMD AMD64 HyperTransport" rev 0x00
  pchb1 at pci0 dev 24 function 1 "AMD AMD64 Address Map" rev 0x00
  pchb2 at pci0 dev 24 function 2 "AMD AMD64 DRAM Cfg" rev 0x00
  pchb3 at pci0 dev 24 function 3 "AMD AMD64 Misc Cfg" rev 0x00
  isa0 at pcib0
  isadma0 at isa0
  com0 at isa0 port 0x3f8/8 irq 4: ns16550a, 16 byte fifo
  pckbc0 at isa0 port 0x60/5
  pckbd0 at pckbc0 (kbd slot)
  pckbc0: using irq 1 for kbd slot
  wskbd0 at pckbd0: console keyboard, using wsdisplay0
  pcppi0 at isa0 port 0x61
  midi0 at pcppi0: <PC speaker>
  spkr0 at pcppi0
  lpt0 at isa0 port 0x378/4 irq 7
  it0 at isa0 port 0x290/8: IT87
  fdc0 at isa0 port 0x3f0/6 irq 6 drq 2
  usb0 at ohci0: USB revision 1.0
  uhub0 at usb0: NVIDIA OHCI root hub, rev 1.00/1.00, addr 1
  uaudio0 at uhub0 port 1 configuration 1 interface 0: ABC C-Media USB 
Headphone Set, rev 1.10/1.00, addr 2
  uaudio0: audio rev 1.00, 8 mixer controls
  audio0 at uaudio0
  uhidev0 at uhub0 port 1 configuration 1 interface 3
  uhidev0: ABC C-Media USB Headphone Set, rev 1.10/1.00, addr 2, iclass 3/0
  uhid0 at uhidev0: input=4, output=4, feature=0
  uhub1 at uhub0 port 2: ATEN International product 0x7000, rev 1.10/1.00, addr 
3
  uhidev1 at uhub1 port 1 configuration 1 interface 0
  uhidev1: MALTRON USB Multimedia Keyboard, rev 1.10/1.22, addr 4, iclass 3/1
  ukbd0 at uhidev1: 8 modifier keys, 6 key codes, country code 13
  wskbd1 at ukbd0 mux 1
  wskbd1: connecting to wsdisplay0
  uhidev2 at uhub1 port 1 configuration 1 interface 1
  uhidev2: MALTRON USB Multimedia Keyboard, rev 1.10/1.22, addr 4, iclass 3/0
  uhidev2: no report descriptor
  uhidev3 at uhub1 port 4 configuration 1 interface 0
  uhidev3: Logitech Trackball, rev 1.10/2.20, addr 5, iclass 3/1
  ums0 at uhidev3: 3 buttons and Z dir.
  wsmouse0 at ums0 mux 0
  axe0 at uhub0 port 3 configuration 1 interface 0
  axe0: USB Linksys USB2.0 Network Adapter, rev 2.00/0.01, addr 6, AX88172, 
address 00:13:10:dc:46:07
  rlphy0 at axe0 phy 3: RTL8201L 10/100 PHY, rev. 1
  cdce0 at uhub0 port 4 configuration 1 interface 1
  cdce0: AMBIT NTL USB Cable Modem, rev 1.10/1.01, addr 7
  cdce0: could not find data bulk in
  cdce1 at uhub0 port 4 configuration 1 interface 0
  cdce1: AMBIT NTL USB Cable Modem, rev 1.10/1.01, addr 7
  cdce1: address 2a:cb:60:02:00:00
  softraid0 at root
  dkcsum: wd0 matches BIOS drive 0x80
  root on wd0a swap on wd0b dump on wd0b

and the dmesg with ACPI enabled (the default):

  OpenBSD 4.1-current (GENERIC.MP) #1286: Thu Jun  7 00:52:32 MDT 2007
      [EMAIL PROTECTED]:/usr/src/sys/arch/amd64/compile/GENERIC.MP
  real mem = 1073278976 (1023MB)
  avail mem = 1025142784 (977MB)
  mainbus0 at root
  bios0 at mainbus0: SMBIOS rev. 2.2 @ 0xf0000 (32 entries)
  bios0: Shuttle Inc SN25V10
  acpi0 at mainbus0: rev 0
  acpi0: tables DSDT FACP SSDT MCFG APIC 
  acpitimer at acpi0 not configured
  acpimadt0 at acpi0 addr 0xfee00000: PC-AT compat
  cpu0 at mainbus0: apid 0 (boot processor)
  cpu0: AMD Athlon(tm) 64 X2 Dual Core Processor 4200+, 2210.43 MHz
  cpu0: 
FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,MMX,FXSR,SSE,SSE2,HTT,SSE3,NXE,MMXX,FFXSR,LONG,3DNOW2,3DNOW
  cpu0: 64KB 64b/line 2-way I-cache, 64KB 64b/line 2-way D-cache, 512KB 
64b/line 16-way L2 cache
  cpu0: ITLB 32 4KB entries fully associative, 8 4MB entries fully associative
  cpu0: DTLB 32 4KB entries fully associative, 8 4MB entries fully associative
  cpu0: apic clock running at 200MHz
  cpu1 at mainbus0: apid 1 (application processor)
  cpu1: AMD Athlon(tm) 64 X2 Dual Core Processor 4200+, 2210.19 MHz
  cpu1: 
FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,MMX,FXSR,SSE,SSE2,HTT,SSE3,NXE,MMXX,FFXSR,LONG,3DNOW2,3DNOW
  cpu1: 64KB 64b/line 2-way I-cache, 64KB 64b/line 2-way D-cache, 512KB 
64b/line 16-way L2 cache
  cpu1: ITLB 32 4KB entries fully associative, 8 4MB entries fully associative
  cpu1: DTLB 32 4KB entries fully associative, 8 4MB entries fully associative
  ioapic0 at mainbus0 apid 2 pa 0xfec00000, version 11, 24 pins
  ioapic0: misconfigured as apic 0, remapped to apid 2
  acpiprt0 at acpi0: bus 0 (PCI0)
  acpiprt1 at acpi0: bus 5 (HUB0)
  acpicpu at acpi0 not configured
  acpicpu at acpi0 not configured
  acpitz at acpi0 not configured
  acpibtn at acpi0 not configured
  pci0 at mainbus0 bus 0: configuration mode 1
  "NVIDIA nForce4 DDR" rev 0xa3 at pci0 dev 0 function 0 not configured
  pcib0 at pci0 dev 1 function 0 "NVIDIA nForce4 ISA" rev 0xa3
  nviic0 at pci0 dev 1 function 1 "NVIDIA nForce4 SMBus" rev 0xa2
  iic0 at nviic0
  iic1 at nviic0
  adt0 at iic1 addr 0x2e: adm1027 rev 0x6a
  iic1: addr 0x4e 03=08 04=08 12=fd 13=0f 28=83 29=12 2a=12 2b=28
  ohci0 at pci0 dev 2 function 0 "NVIDIA nForce4 USB" rev 0xa2: apic 2 int 0 
(irq 11), version 1.0, legacy support
  pciide0 at pci0 dev 6 function 0 "NVIDIA nForce4 IDE" rev 0xf2: DMA, channel 
0 configured to compatibility, channel 1 configured to compatibility
  atapiscsi0 at pciide0 channel 0 drive 0
  scsibus0 at atapiscsi0: 2 targets
  cd0 at scsibus0 targ 0 lun 0: <SONY, CD-RW CRX320EE, RYK3> SCSI0 5/cdrom 
removable
  cd0(pciide0:0:0): using PIO mode 4, Ultra-DMA mode 2
  pciide0: channel 1 ignored (disabled)
  pciide1 at pci0 dev 7 function 0 "NVIDIA nForce4 SATA" rev 0xf3: DMA
  pciide1: using apic 2 int 0 (irq 10) for native-PCI interrupt
  wd0 at pciide1 channel 0 drive 0: <WDC WD1500ADFD-00NLR0>
  wd0: 16-sector PIO, LBA48, 143089MB, 293046768 sectors
  wd0(pciide1:0:0): using PIO mode 4, Ultra-DMA mode 5
  pciide2 at pci0 dev 8 function 0 "NVIDIA nForce4 SATA" rev 0xf3: DMA
  pciide2: using apic 2 int 0 (irq 11) for native-PCI interrupt
  ppb0 at pci0 dev 9 function 0 "NVIDIA nForce4 PCI-PCI" rev 0xa2
  pci1 at ppb0 bus 5
  "IC Ensemble Envy24PT/HT Audio" rev 0x01 at pci1 dev 6 function 0 not 
configured
  "VIA VT6306 FireWire" rev 0x80 at pci1 dev 7 function 0 not configured
  nfe0 at pci0 dev 10 function 0 "NVIDIA CK804 LAN" rev 0xa3: apic 2 int 0 (irq 
5), address 00:30:1b:b9:05:6c
  eephy0 at nfe0 phy 1: Marvell 88E1111 Gigabit PHY, rev. 2
  ppb1 at pci0 dev 11 function 0 "NVIDIA nForce4 PCIE" rev 0xa3
  pci2 at ppb1 bus 4
  ppb2 at pci0 dev 12 function 0 "NVIDIA nForce4 PCIE" rev 0xa3
  pci3 at ppb2 bus 3
  ppb3 at pci0 dev 13 function 0 "NVIDIA nForce4 PCIE" rev 0xa3
  pci4 at ppb3 bus 2
  ppb4 at pci0 dev 14 function 0 "NVIDIA nForce4 PCIE" rev 0xa3
  pci5 at ppb4 bus 1
  vga1 at pci5 dev 0 function 0 "NVIDIA GeForce 6600" rev 0xa2
  wsdisplay0 at vga1 mux 1: console (80x25, vt100 emulation)
  wsdisplay0: screen 1-5 added (80x25, vt100 emulation)
  pchb0 at pci0 dev 24 function 0 "AMD AMD64 HyperTransport" rev 0x00
  pchb1 at pci0 dev 24 function 1 "AMD AMD64 Address Map" rev 0x00
  pchb2 at pci0 dev 24 function 2 "AMD AMD64 DRAM Cfg" rev 0x00
  pchb3 at pci0 dev 24 function 3 "AMD AMD64 Misc Cfg" rev 0x00
  isa0 at pcib0
  isadma0 at isa0
  com0 at isa0 port 0x3f8/8 irq 4: ns16550a, 16 byte fifo
  pckbc0 at isa0 port 0x60/5
  pckbd0 at pckbc0 (kbd slot)
  pckbc0: using irq 1 for kbd slot
  wskbd0 at pckbd0: console keyboard, using wsdisplay0
  pcppi0 at isa0 port 0x61
  midi0 at pcppi0: <PC speaker>
  spkr0 at pcppi0
  lpt0 at isa0 port 0x378/4 irq 7
  it0 at isa0 port 0x290/8: IT87
  fdc0 at isa0 port 0x3f0/6 irq 6 drq 2
  usb0 at ohci0: USB revision 1.0
  uhub0 at usb0: NVIDIA OHCI root hub, rev 1.00/1.00, addr 1
  uaudio0 at uhub0 port 1 configuration 1 interface 0: ABC C-Media USB 
Headphone Set, rev 1.10/1.00, addr 2
  uaudio0: audio rev 1.00, 8 mixer controls
  audio0 at uaudio0
  uhidev0 at uhub0 port 1 configuration 1 interface 3
  uhidev0: ABC C-Media USB Headphone Set, rev 1.10/1.00, addr 2, iclass 3/0
  uhid0 at uhidev0: input=4, output=4, feature=0
  uhub1 at uhub0 port 2: ATEN International product 0x7000, rev 1.10/1.00, addr 
3
  uhidev1 at uhub1 port 1 configuration 1 interface 0
  uhidev1: MALTRON USB Multimedia Keyboard, rev 1.10/1.22, addr 4, iclass 3/1
  ukbd0 at uhidev1: 8 modifier keys, 6 key codes, country code 13
  wskbd1 at ukbd0 mux 1
  wskbd1: connecting to wsdisplay0
  uhidev2 at uhub1 port 1 configuration 1 interface 1
  uhidev2: MALTRON USB Multimedia Keyboard, rev 1.10/1.22, addr 4, iclass 3/0
  uhidev2: 3 report ids
  uhid1 at uhidev2 reportid 2: input=1, output=0, feature=0
  uhid2 at uhidev2 reportid 3: input=2, output=0, feature=0
  uhidev3 at uhub1 port 4 configuration 1 interface 0
  uhidev3: Logitech Trackball, rev 1.10/2.20, addr 5, iclass 3/1
  ums0 at uhidev3: 3 buttons and Z dir.
  wsmouse0 at ums0 mux 0
  axe0 at uhub0 port 3 configuration 1 interface 0
  axe0: USB Linksys USB2.0 Network Adapter, rev 2.00/0.01, addr 6, AX88172, 
address 00:13:10:dc:46:07
  rlphy0 at axe0 phy 3: RTL8201L 10/100 PHY, rev. 1
  cdce0 at uhub0 port 4 configuration 1 interface 1
  cdce0: AMBIT NTL USB Cable Modem, rev 1.10/1.01, addr 7
  cdce0: could not find data bulk in
  cdce1 at uhub0 port 4 configuration 1 interface 0
  cdce1: AMBIT NTL USB Cable Modem, rev 1.10/1.01, addr 7
  cdce1: address 2a:cb:61:02:00:00
  softraid0 at root
  dkcsum: wd0 matches BIOS drive 0x80
  root on wd0a swap on wd0b dump on wd0b

In case it's relevant, here's a slightly chopped down diff between the two
to highlight the differences:

  -acpi at mainbus0 not configured
  -mainbus0: Intel MP Specification (Version 1.1)
  +acpi0 at mainbus0: rev 0
  +acpi0: tables DSDT FACP SSDT MCFG APIC 
  +acpitimer at acpi0 not configured
  +acpimadt0 at acpi0 addr 0xfee00000: PC-AT compat
   cpu0 at mainbus0: apid 0 (boot processor)
  -cpu0: AMD Athlon(tm) 64 X2 Dual Core Processor 4200+, 2210.47 MHz
  +cpu0: AMD Athlon(tm) 64 X2 Dual Core Processor 4200+, 2210.43 MHz

  -mpbios: bus 0 is type PCI   
  -mpbios: bus 1 is type PCI   
  -mpbios: bus 2 is type PCI   
  -mpbios: bus 3 is type PCI   
  -mpbios: bus 4 is type PCI   
  -mpbios: bus 5 is type PCI   
  -mpbios: bus 6 is type ISA   
   ioapic0 at mainbus0 apid 2 pa 0xfec00000, version 11, 24 pins
   ioapic0: misconfigured as apic 0, remapped to apid 2
  +acpiprt0 at acpi0: bus 0 (PCI0)
  +acpiprt1 at acpi0: bus 5 (HUB0)
  +acpicpu at acpi0 not configured
  +acpicpu at acpi0 not configured
  +acpitz at acpi0 not configured
  +acpibtn at acpi0 not configured

  -ohci0 at pci0 dev 2 function 0 "NVIDIA nForce4 USB" rev 0xa2: apic 2 int 11 
(irq 11), version 1.0, legacy support
  +ohci0 at pci0 dev 2 function 0 "NVIDIA nForce4 USB" rev 0xa2: apic 2 int 0 
(irq 11), version 1.0, legacy support

  -pciide1: using apic 2 int 10 (irq 10) for native-PCI interrupt
  +pciide1: using apic 2 int 0 (irq 10) for native-PCI interrupt

  -pciide2: using apic 2 int 11 (irq 11) for native-PCI interrupt
  +pciide2: using apic 2 int 0 (irq 11) for native-PCI interrupt

  -nfe0 at pci0 dev 10 function 0 "NVIDIA CK804 LAN" rev 0xa3: apic 2 int 5 
(irq 5), address 00:30:1b:b9:05:6c
  +nfe0 at pci0 dev 10 function 0 "NVIDIA CK804 LAN" rev 0xa3: apic 2 int 0 
(irq 5), address 00:30:1b:b9:05:6c

  -uhidev2: no report descriptor
  +uhidev2: 3 report ids
  +uhid1 at uhidev2 reportid 2: input=1, output=0, feature=0
  +uhid2 at uhidev2 reportid 3: input=2, output=0, feature=0

  -cdce1: address 2a:cb:60:02:00:00
  +cdce1: address 2a:cb:61:02:00:00

If anyone has any questions, please don't hesitate to contact me.


Laurie
-- 
http://tratt.net/laurie/    -- Personal
http://convergepl.org/      -- The Converge programming language
http://sosym.dcs.kcl.ac.uk/ -- Software and Systems Modelling Team

Reply via email to