X11 slowness on vortex86sx

Today I played a bit with Vortex86sx based device again. This time I wanted to get X11 working on it.

In short: it “works”. Default driver should be “sis” but it fails with messages which shows that libpciaccess has a problem on that device:

(EE) SIS(0): Unable to map IO aperture. Invalid argument (22)                                                                
(EE) SIS(0): **************************************************                                                              
(EE) SIS(0):                       ERROR:                                                                                    
(EE) SIS(0): Could not map MMIO area                                                                                         
(EE) SIS(0):                   END OF MESSAGE                                                                                
(EE) SIS(0): **************************************************                                                              
(EE) SIS(0): **************************************************                                                              
(EE) SIS(0):                       ERROR:                                                                                    
(EE) SIS(0): SiSMapMem() failed                                                                                              
(EE) SIS(0):                   END OF MESSAGE                                                                                
(EE) SIS(0): **************************************************                                                              

I switched to “vesa” driver — it works, gives 1280×1024 resolution. But it is so sluggish… Even my few years old Zaurus c760 is faster (I checked how Vortex86sx works with VGA resolution).

Tried also “fbdev” driver — same slowness. All was done with full X.org server not “kdrive” one.

Does Vortex86sx based devices are worth something?

At FOSDEM 2009 I grabbed one Vortex86SX based device — Koala Nano PC which is available at Koan software. Device came with Ångström distribution and was running 2.6.26 kernel. I wanted to get something more fresh on it and after some fighting I booted 2.6.29-rc5 kernel today.

Device use Vortex86SX SoC which is based on 486SX core. Yes — this is x86 machine without FPU. Overall speed of that is… nearly not existing.

First benchmark which came to my mind was “hdparm -T /dev/sda”. Results were dramatic: 9-13 MB/s for cached reads (with 133MHz memory and 300MHz cpu). I decided to compare against other devices:

Device Arch CPU CPU speed memory type cached reads
Koala Nano PC x86 vortex86sx 300MHz DDR2 9-13MB/s
old PC x86 pentium2 266MHz EDO DRAM 33MB/s
ATNGW100 av32 AT32AP700x 130MHz SDRAM 35MB/s
ASUS WL-500gP mips bcm3302 266MHz 46MB/s
Freecom FSG-3 arm ipx42x 266MHz 43MB/s
iBook G3 ppc g3 300MHz SDRAM 65MB/s
AT91SAM9263-EK arm at91sam9263 180MHz SDRAM 62-63MB/s
Compulab arm pxa270 312MHz SDRAM 74MB/s
NSLU2 arm ixp420 266MHz SDRAM 74MB/s
Koala nano33 x86 vortex86dx 1GHz DDR2 74MB/s
Nokia N810 arm omap2420 400MHz SDRAM 82MB/s
AT91SAM9G20-EK arm at91sam9G20 400MHz SDRAM 96MB/s
Linkstation pro duo arm ixp4xx 266MHz 147MB/s
BeagleBoard arm omap3530 500MHz mDDR 152MB/s
Alix.1c x86 geodelx 500MHz DDR 209MB/s
kirkwood reference board1 arm kirkwood 1200MHz DDR2 209MB/s
BUG arm i.mx31 533MHz DDR 294MB/s
my desktop x86 core2quad 2400MHz DDR2 3300-3500MB/s
Cliff’s desktop x86 Core-i7 920 Quad 2.67GHz DDR3 6400-7200MB/s

But remember that this test is not so good for benchmarking — I am preparing better set of tests to really compare speed of devices. So far it contains openssl speed and MP3 encoding/decoding.

But device has also few nice things. Everything is integrated so 12x12cm box is enough to keep everything inside. It has ATA controller, FastEthernet, graphics based on XGI core (with accelerated framebuffer able to do 1680×1050 resolution) and working USB. There is a place to put 2.5″ HDD inside (normally it boots from CompactFlash card), second Ethernet or WiFi are available options…

But what is use for such slow device? There are lot of ARM based ones which offer similar (or better) functionality and are faster… But wait — there is one use: event displays as this machine has nicely working framebuffer (I got even 1680×1050 resolution).

UPDATE: added results from iBook G3 300MHz and some other machines.

  1. kirkwood reference board uses same cpu as SheevaPlug device.