Performance problem for X in OpenBSD 4.2

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Performance problem for X in OpenBSD 4.2

ljung.peter
I have used OpenBSD for different server solutions (mainly webservers and firewalls) in the past few years. After a Windows XP crash, I decided to give OpenBSD a try also on the desktop. I have installed X and XFCE to my best effort (I'm new to X installation) following different guidelines (including OpenBSD FAQ) provided on the net.
After a while I have managed to set up a seemingly working XFCE environment with only one caveat. The system is so slow that it is unusable by practical means. E.g. starting firefox take almost 4 minutes. Window movement is painlessy slow. I have read a number of articles (e.g. from  echothrust blog) on the net where OpenBSD has been used successfully on the desktop. So I still hope that I have done some stupid mistake. I would prefer to stick to OpenBSD also on the desktop.

Do anyone know any common mistake that I could have done in my X setup?
Is there any way to check/benchmark the performance of X to verify if everything is configured correctly.

Any guidance would be helpful!

Best regards / Peter Ljung

(My current configuration is available as tgz and in text below ...)

OpenBSD42XConfiguration.tgz

*** dmesg ***

OpenBSD 4.2 (GENERIC) #1179: Tue Aug 28 10:37:50 MDT 2007
    deraadt@amd64.openbsd.org:/usr/src/sys/arch/amd64/compile/GENERIC
real mem = 1005973504 (959MB)
avail mem = 965287936 (920MB)
mainbus0 at root
bios0 at mainbus0: SMBIOS rev. 2.3 @ 0xf06d0 (64 entries)
bios0: vendor American Megatrends Inc. version "0403   " date 10/05/2005
bios0: ASUSTeK Computer INC. A8N-VM
acpi at mainbus0 not configured
cpu0 at mainbus0: (uniprocessor)
cpu0: AMD Athlon(tm) 64 Processor 3200+, 2009.70 MHz
cpu0: FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,MMX,FXSR,SSE,SSE2,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: AMD erratum 89 present, BIOS upgrade may be required
cpu0: Cool'n'Quiet K8 2009 MHz: speeds: 2000 1800 1000 MHz
pci0 at mainbus0 bus 0: configuration mode 1
"NVIDIA C51 Host" rev 0xa2 at pci0 dev 0 function 0 not configured
"NVIDIA C51 Memory" rev 0xa2 at pci0 dev 0 function 1 not configured
"NVIDIA C51 Memory" rev 0xa2 at pci0 dev 0 function 2 not configured
"NVIDIA C51 Memory" rev 0xa2 at pci0 dev 0 function 3 not configured
"NVIDIA C51 Memory" rev 0xa2 at pci0 dev 0 function 4 not configured
"NVIDIA C51 Memory" rev 0xa2 at pci0 dev 0 function 5 not configured
"NVIDIA C51 Memory" rev 0xa2 at pci0 dev 0 function 6 not configured
"NVIDIA C51 Memory" rev 0xa2 at pci0 dev 0 function 7 not configured
ppb0 at pci0 dev 2 function 0 "NVIDIA C51 PCIE" rev 0xa1
pci1 at ppb0 bus 1
ppb1 at pci0 dev 3 function 0 "NVIDIA C51 PCIE" rev 0xa1
pci2 at ppb1 bus 2
ppb2 at pci0 dev 4 function 0 "NVIDIA C51 PCIE" rev 0xa1
pci3 at ppb2 bus 3
vga1 at pci0 dev 5 function 0 "NVIDIA GeForce 6100" rev 0xa2
wsdisplay0 at vga1 mux 1: console (80x25, vt100 emulation)
wsdisplay0: screen 1-5 added (80x25, vt100 emulation)
"NVIDIA MCP51 Host" rev 0xa2 at pci0 dev 9 function 0 not configured
pcib0 at pci0 dev 10 function 0 "NVIDIA MCP51 ISA" rev 0xa2
nviic0 at pci0 dev 10 function 1 "NVIDIA MCP51 SMBus" rev 0xa2
iic0 at nviic0
iic1 at nviic0
ohci0 at pci0 dev 11 function 0 "NVIDIA MCP51 USB" rev 0xa2: irq 5, version 1.0, legacy support
ehci0 at pci0 dev 11 function 1 "NVIDIA MCP51 USB" rev 0xa2: irq 3
usb0 at ehci0: USB revision 2.0
uhub0 at usb0: NVIDIA EHCI root hub, rev 2.00/1.00, addr 1
pciide0 at pci0 dev 13 function 0 "NVIDIA MCP51 IDE" rev 0xa1: DMA, channel 0 configured to compatibility, channel 1 configured to compatibility
wd0 at pciide0 channel 0 drive 0: <ST3250820A>
wd0: 16-sector PIO, LBA48, 238475MB, 488397168 sectors
wd0(pciide0:0:0): using PIO mode 4, Ultra-DMA mode 5
pciide0: channel 1 disabled (no drives)
pciide1 at pci0 dev 14 function 0 "NVIDIA MCP51 SATA" rev 0xa1: DMA
pciide1: using irq 5 for native-PCI interrupt
atapiscsi0 at pciide1 channel 0 drive 0
scsibus0 at atapiscsi0: 2 targets
cd0 at scsibus0 targ 0 lun 0: <PLEXTOR, DVDR PX-712A, 1.07> SCSI0 5/cdrom removable
cd0(pciide1:0:0): using PIO mode 4
ppb3 at pci0 dev 16 function 0 "NVIDIA MCP51 PCI-PCI" rev 0xa2
pci4 at ppb3 bus 4
azalia0 at pci0 dev 16 function 1 "NVIDIA MCP51 HD Audio" rev 0xa2: irq 5
azalia0: host: High Definition Audio rev. 1.0
azalia0: codec: Analog Devices/0x1986 (rev. 4.0), HDA version 1.0
audio0 at azalia0
nfe0 at pci0 dev 20 function 0 "NVIDIA MCP51 LAN" rev 0xa1: irq 5, address 00:13:d4:b4:2b:c3
rlphy0 at nfe0 phy 1: RTL8201L 10/100 PHY, rev. 1
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
lm0 at isa0 port 0x290/8: W83627EHF
fdc0 at isa0 port 0x3f0/6 irq 6 drq 2
usb1 at ohci0: USB revision 1.0
uhub1 at usb1: NVIDIA OHCI root hub, rev 1.00/1.00, addr 1
uhidev0 at uhub1 port 1 configuration 1 interface 0
uhidev0: Logitech USB-PS/2 Optical Mouse, rev 2.00/11.10, addr 2, iclass 3/1
ums0 at uhidev0: 3 buttons and Z dir.
wsmouse0 at ums0 mux 0
ulpt0 at uhub1 port 2 configuration 1 interface 0
ulpt0: Hewlett-Packard hp LaserJet 1320 series, rev 1.10/1.00, addr 3, iclass 7/1
ulpt0: using bi-directional mode
uscanner0 at uhub1 port 4
uscanner0: Hewlett-Packard HP ScanJet 2200C, rev 1.10/1.00, addr 4
dkcsum: wd0 matches BIOS drive 0x80
root on wd0a swap on wd0b dump on wd0b
ehci0: unrecoverable error, controller halted
ehci0: blocking intrs 0x10
 
*** sysctl hw.xx output ***

hw.machine=amd64
hw.model=AMD Athlon(tm) 64 Processor 3200+
hw.ncpu=1
hw.byteorder=1234
hw.physmem=1005973504
hw.usermem=1005969408
hw.pagesize=4096
hw.disknames=wd0,cd0
hw.diskcount=2
hw.sensors.lm0.temp0=45.00 degC
hw.sensors.lm0.temp1=55.00 degC
hw.sensors.lm0.temp2=46.00 degC
hw.sensors.lm0.fan0=1814 RPM
hw.sensors.lm0.fan2=1520 RPM
hw.sensors.lm0.volt0=1.47 VDC (VCore)
hw.sensors.lm0.volt1=12.25 VDC (+12V)
hw.sensors.lm0.volt2=3.36 VDC (+3.3V)
hw.sensors.lm0.volt3=3.36 VDC (+3.3V)
hw.sensors.lm0.volt4=1.85 VDC (-12V)
hw.sensors.lm0.volt5=1.61 VDC
hw.sensors.lm0.volt6=1.62 VDC
hw.sensors.lm0.volt7=3.34 VDC (3.3VSB)
hw.sensors.lm0.volt8=0.33 VDC (VBAT)
hw.sensors.lm0.volt9=1.53 VDC
hw.cpuspeed=2009
hw.setperf=100
hw.vendor=ASUSTeK Computer INC.
hw.product=A8N-VM
hw.uuid=780d2072-2d3e-da11-a182-19185ed4b2d6

*** xorg.xonf ***

Section "ServerLayout"
        Identifier     "X.org Configured"
        Screen      0  "Screen0" 0 0
        InputDevice    "Mouse0" "CorePointer"
        InputDevice    "Keyboard0" "CoreKeyboard"
EndSection

Section "Files"
        RgbPath      "/usr/X11R6/share/X11/rgb"
        ModulePath   "/usr/X11R6/lib/modules"
        FontPath     "/usr/X11R6/lib/X11/fonts/misc/"
        FontPath     "/usr/X11R6/lib/X11/fonts/TTF/"
        FontPath     "/usr/X11R6/lib/X11/fonts/OTF"
        FontPath     "/usr/X11R6/lib/X11/fonts/Type1/"
        FontPath     "/usr/X11R6/lib/X11/fonts/100dpi/"
        FontPath     "/usr/X11R6/lib/X11/fonts/75dpi/"
        FontPath     "/usr/X11R6/lib/X11/fonts/Speedo/"
        FontPath     "/usr/X11R6/lib/X11/fonts/cyrillic/"
EndSection

Section "Module"
        Load  "GLcore"
        Load  "dbe"
        Load  "extmod"
        Load  "glx"
        Load  "record"
        Load  "xtrap"
        Load  "freetype"
        Load  "type1"
EndSection

Section "InputDevice"
        Identifier  "Keyboard0"
        Driver      "kbd"
        Option    "XkbRules" "xorg"
        Option    "XkbModel" "pc104"
        Option    "XkbLayout" "se"
        Option    "XkbOptions" ""
EndSection

Section "InputDevice"
        Identifier  "Mouse0"
        Driver      "mouse"
        Option    "Protocol" "wsmouse"
        Option    "Device" "/dev/wsmouse"
        Option    "ZAxisMapping" "4 5 6 7"
EndSection

Section "Monitor"
        DisplaySize  337.9   270.3 # mm
        Identifier   "Monitor0"
        VendorName   "EIZO"
        ModelName    "P1700"
 ### Comment all HorizSync and VertRefresh values to use DDC:
        HorizSync    24.8 - 80.0
        VertRefresh  50.0 - 75.1
        Option    "DPMS"
EndSection

Section "Device"
        ### Available Driver options are:-
        ### Values: : integer, <f>: float, <bool>: "True"/"False",
        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz"
        ### [arg]: arg optional
        Option      "SWcursor" "True"     # [<bool>]
        Identifier  "Card0"
        Driver      "nv"
        VendorName  "nVidia Corporation"
        BoardName   "C51G [GeForce 6100]"
        BusID       "PCI:0:5:0"
EndSection

Section "Screen"
        Identifier "Screen0"
        Device     "Card0"
        Monitor    "Monitor0"
        DefaultDepth 24
        SubSection "Display"
                Viewport   0 0
                Depth     1
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     4
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     8
                Modes "800x600"
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     15
                Modes "1280x1024"
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     16
                Modes "1280x1024"
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     24
                Modes "1280x1024"
        EndSubSection
EndSection
Reply | Threaded
Open this post in threaded view
|

Re: Performance problem for X in OpenBSD 4.2

OpenBSD-9
Peter Ljung wrote:

> I have used OpenBSD for different server solutions (mainly webservers and
> firewalls) in the past few years. After a Windows XP crash, I decided to
> give OpenBSD a try also on the desktop. I have installed X and XFCE to my
> best effort (I'm new to X installation) following different guidelines
> (including OpenBSD FAQ) provided on the net.
> After a while I have managed to set up a seemingly working XFCE environment
> with only one caveat. The system is so slow that it is unusable by practical
> means. E.g. starting firefox take almost 4 minutes. Window movement is
> painlessy slow. I have read a number of articles (e.g. from  
> http://blogs.echothrust.com/pantelis-roditis/running-openbsd-workstations-part-2
> echothrust blog ) on the net where OpenBSD has been used successfully on the
> desktop. So I still hope that I have done some stupid mistake. I would
> prefer to stick to OpenBSD also on the desktop.
>
> Do anyone know any common mistake that I could have done in my X setup?
> Is there any way to check/benchmark the performance of X to verify if
> everything is configured correctly.
>
> Any guidance would be helpful! :-)
>
> Best regards / Peter Ljung
>
> (My current configuration is available as tgz and in text below ...)
>
<snipped>

Try greping Xorg.0.log for any errors, or warnings:

nike:fred ~> grep EE /var/log/Xorg.0.log
         (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(II) Loading extension MIT-SCREEN-SAVER
(EE) Cannot find empty range to map base to
nike:fred ~> grep WW /var/log/Xorg.0.log
(WW) xf86AcquireGART: AGPIOC_ACQUIRE failed (Device not configured)
(WW) GARTInit: AGPIOC_INFO failed (Device not configured)
         (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(WW) MGA(0): Video BIOS info block not detected!

It might provide some clues....

HTH
--
http://www.crowsons.com/puters/x41.htm

Reply | Threaded
Open this post in threaded view
|

Re: Performance problem for X in OpenBSD 4.2

ljung.peter
I have realized that it may not be X that is the problem.
I noticed (when compiling JDK) that the system is really slow also when X is not started.
Top showed that 75% of the time is used by interrupt handling.

So the problem seems to occur from start of the OpenBSD installation. I have very similar systems (with no X) which is working superbly. Both systems use a ASUS motherboards A8V-VM and A8N-VM versions.

I'm not sure how to track down the interrupt problem. I have removed everything possible from the machine (except HD+keyboard), I have switched HD between IDE and SATA, I have reinstalled OBSD 4.2 and tried to remove ACPI functionality. I have also installed Ubuntu 7.10 on the same HW and everything works OK (but it is not OpenBSD :( ).

(cont...)

I have now realized that the main difference between the working amd64 systems and the non working system is the subsystem that is based on nVidia in the faulty one and VIA in the working systems.

I currently run three systems:

(works perfectly)
 OpenBSD 4.2 (GENERIC) #1179: Tue Aug 28 10:37:50 MDT 2007
    deraadt@amd64.openbsd.org:/usr/src/sys/arch/amd64/compile/GENERIC
real mem = 1005842432 (959MB)
avail mem = 965160960 (920MB)
mainbus0 at root
bios0 at mainbus0: SMBIOS rev. 2.3 @ 0xf0530 (54 entries)
bios0: vendor American Megatrends Inc. version "0203    " date 09/12/2005
bios0: ASUSTeK Computer Inc. K8V-MX
cpu0: AMD Sempron(tm) Processor 2800+, 1600.30 MHz

(works perfectly)
OpenBSD 4.2 (GENERIC) #1179: Tue Aug 28 10:37:50 MDT 2007
    deraadt@amd64.openbsd.org:/usr/src/sys/arch/amd64/compile/GENERIC
real mem = 1005907968 (959MB)
avail mem = 965222400 (920MB)
mainbus0 at root
bios0 at mainbus0: SMBIOS rev. 2.3 @ 0xf0730 (54 entries)
bios0: vendor American Megatrends Inc. version "080012 " date 06/19/2006
bios0: ASUSTeK Computer INC. A8V-VM
cpu0: AMD Athlon(tm) 64 Processor 3500+, 2200.38 MHz

(This one have the interrupt problem)
OpenBSD 4.2 (GENERIC) #1179: Tue Aug 28 10:37:50 MDT 2007
    deraadt@amd64.openbsd.org:/usr/src/sys/arch/amd64/compile/GENERIC
real mem = 1005973504 (959MB)
avail mem = 965287936 (920MB)
mainbus0 at root
bios0 at mainbus0: SMBIOS rev. 2.3 @ 0xf06d0 (64 entries)
bios0: vendor American Megatrends Inc. version "0403   " date 10/05/2005
bios0: ASUSTeK Computer INC. A8N-VM
cpu0: AMD Athlon(tm) 64 Processor 3200+, 2009.70 MHz

The N on A8N-VM stands for "NVIDIA GeForce 6150" which includes GPU, LAN and USB etc.
http://www.asus.com/products.aspx?l1=3&l2=15&l3=210&model=766&modelmenu=1

As I understand NVIDIA is one of the vendors with poor HW documentation. Debian/Ubuntu only support 800*600 resolution in the free version of the driver and required proprietary BLOB to work fully.

I can't exactly narrow down which part of the drivers is the problem but it seems likely that there are some problem with supportX_problem.tgz for the NVIDIA chip set.

I just have to make sure to look more closely in the HW spec of the MB next time ...
 
Best regards / Peter Ljung


Fred Crowson wrote
Peter Ljung wrote:
> I have used OpenBSD for different server solutions (mainly webservers and
> firewalls) in the past few years. After a Windows XP crash, I decided to
> give OpenBSD a try also on the desktop. I have installed X and XFCE to my
> best effort (I'm new to X installation) following different guidelines
> (including OpenBSD FAQ) provided on the net.
> After a while I have managed to set up a seemingly working XFCE environment
> with only one caveat. The system is so slow that it is unusable by practical
> means. E.g. starting firefox take almost 4 minutes. Window movement is
> painlessy slow. I have read a number of articles (e.g. from  
> http://blogs.echothrust.com/pantelis-roditis/running-openbsd-workstations-part-2
> echothrust blog ) on the net where OpenBSD has been used successfully on the
> desktop. So I still hope that I have done some stupid mistake. I would
> prefer to stick to OpenBSD also on the desktop.
>
> Do anyone know any common mistake that I could have done in my X setup?
> Is there any way to check/benchmark the performance of X to verify if
> everything is configured correctly.
>
> Any guidance would be helpful! :-)
>
> Best regards / Peter Ljung
>
> (My current configuration is available as tgz and in text below ...)
>
<snipped>

Try greping Xorg.0.log for any errors, or warnings:

nike:fred ~> grep EE /var/log/Xorg.0.log
         (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(II) Loading extension MIT-SCREEN-SAVER
(EE) Cannot find empty range to map base to
nike:fred ~> grep WW /var/log/Xorg.0.log
(WW) xf86AcquireGART: AGPIOC_ACQUIRE failed (Device not configured)
(WW) GARTInit: AGPIOC_INFO failed (Device not configured)
         (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(WW) MGA(0): Video BIOS info block not detected!

It might provide some clues....

HTH
--
http://www.crowsons.com/puters/x41.htm