I was asked yesterday if our Xorg 1.5.0 benefited from the changes
integrated upstream from Fedora's "One Second X" project (see
http://fedoraproject.org/wiki/Features/OneSecondX ), so I did a
quick, unscientific test of:
time /usr/X11/bin/xinit /bin/false -- /usr/X11/bin/Xorg :0
which starts Xorg, waits for it to signal xinit that it's done
setting up and ready to accept clients, then immediately exits
and waits for it to finish shutting down.
Running 5 times with each version, throwing out the first runs
so the file cache is warmed up:
Xorg 1.3.0 (nv_101 build):
0.19u 0.30s 0:02.68 18.2%
0.20u 0.31s 0:02.73 18.6%
0.19u 0.31s 0:02.71 18.4%
0.19u 0.30s 0:02.70 18.1%
0.19u 0.31s 0:02.71 18.4%
Xorg 1.5.0 (11-20-08 test build):
0.25u 0.36s 0:01.86 32.7%
0.26u 0.36s 0:02.01 30.8%
0.25u 0.36s 0:01.84 33.1%
0.27u 0.36s 0:01.80 35.0%
0.26u 0.36s 0:01.85 33.5%
Test system:
CPU: AMD Athlon(tm) 64 Processor 3200+ (2010 MHz)
Motherboard: ASUS A8N-SLI DELUXE ACPI BIOS Revision 1002 11/26/2004
Graphics: nVidia Corporation NV44 [Quadro NVS 285]
Nevada build snv_101, UFS root
Looks like a small, but measurable improvement. Since several of
the fixes were removing sleep() or nanosleep() calls, it's not
surprising the percentage of time actually on CPU went up. I'm not
sure why the absolute time in user space & system calls went up though,
perhaps related to the libpciaccess changes to PCI bus scanning which
loop through thousands of ioctls looking for devices instead of poking
directly into PCI config space memory through /dev/xsvc.
--
-Alan Coopersmith- alan.coopersmith at sun.com
Sun Microsystems, Inc. - X Window System Engineering