Category Archives: Computing

Hardware, software, computer science and the rest

NetBSD/xen I/O Performance

In the past NetBSD has been reported to deliver poor I/O performance when running under the Xen hypervisor. Because I’m considering running Xen on my home server in future I ran some benchmarks under NetBSD/xen myself recently.

I used my HP Proliant ML110 G4 for the benchmarks. The machine has an Intel Xeon 3040 CPU (Dual Core 1,87GHz), 5GB of DDR2 memory and a single 160GB SATA hard disk. I used the new 64Bit Xen support in NetBSD-current for booting NetBSD/xen because the machine normally runs NetBSD/amd64.

The two benchmarks consisted of:

  1. Extracting the NetBSD 4.0 source tar archives from a memory filesystem to an empty filesystem on the hard disk.
  2. Copying 32GB from /dev/zero to file on a (non empty) filesystem on the hard disk.

I’ve used an unmodified GENERIC kernel under NetBSD/amd64 and the XEN3_DOM0 kernel under NetBSD/xen. Both kernels were built from NetBSD 4.99.63 sources. The NetBSD/amd64 kernel could utilise both CPU cores and the full 5GB of main memory. Because NetBSD/xen doesn’t support SMP and cannot handle 5GB at the moment (see PR port-xen/38699) the NetBSD/xen kernel could only use one CPU core and 3.5GB. Under these conditions I expected NetBSD/amd64 to win by a mile. But I was in for a surprise:

Benchmark/Kernel NetBSD/amd64 NetBSD/xen
extract sources 4:19.31 min 3:59.20 min
write 32GB 46391830 bytes/sec 47161618 bytes/sec

As you can see the NetBSD/xen kernel actually provided slightly better I/O performance. The benchmarks are I/O bound and the NetBSD/amd64 could apparently not benefit from the second CPU core. My guess is that it was instead slowed down by the locking overhead of the SMP kernel.

The good news is however that NetBSD/xen delivers good I/O performance. Michael Graff had similar encouraging results when he compared VMware Server and Xen.

Updating to Mac OS X Leopard

I recently updated my Power Mac G5 from Mac OS X Tiger to Leopard. I used the update option offered by the Leopard installation DVD which did a reasonable job. The process took about two hours and the machine started up without any problems afterwards. However, there were a few problems I had to sort out over time:

  1. The new automounter maps /home to an automount map called auto_home by default. If such a map is not available the directory /home will appear to be empty. Commenting out the according line in the configuration file /etc/auto_master fixes that problem.
  2. Emacs didn’t work after the update. It died with a Fatal malloc_jumpstart() error on startup. It seems that the update didn’t overwrite the Tiger Emacs binaries properly. Installing the Security Update 2008-002 fixes that problem fortunately because it contains an update for Emacs.
  3. Software Update refused to install the latest version of QuickTime with the rather cryptic error message The update “QuickTime” can’t be saved. The problem could however easily be fixed by removing the contents of the /Library/Updates/QuickTime folder.
  4. Safari had been made the default browser. This can however be changed easily using Safari’s Preferences dialog.
  5. The system didn’t know my private root certificate anymore. I had to reimport it using the program Keychain Access in the utilities folder.
  6. The configuration for my (network attached) printer was removed during the update. Re-adding it was however easy as usual.

I hope these hints will help other people to sort out similar update problems.