Showing posts with label gentoo. Show all posts
Showing posts with label gentoo. Show all posts

Monday, May 26, 2008

The new hotness: My silent living room server hack.


Inside of... the new hotness...

new toy...

I had a recent discovery... VMWARE CRUMBLES under situations where the shutdown is less than planned, I could reboot and fsck vista, however vmware would not sync up due to untold and countless numbers of sync, lock, and snapshot inconsistencies. after a dozen rescues and one nasty failure, this got old. It was time to move gentoo onto my former AMD dual core and reuse some DDR2 sticks which were mismatched with other sets of 4.  

now it's running (and building) ResearchCyc 1.0 and performing filesystem experiments for the Billion Triples Challenge.

Not bad for a silent living room box with a console on my hd-tv

Silent But gladly Setback More….
case $120.00 Thermaltake Lanbox
Motherboard $80.00 MSI K9AGM2-FIH Socket AM2 AMD 690G DDR2 mATX Motherboard w/ HDMI, FireWire, Radeon 1250 Video, 8ch Audio, and GigaBit LAN.
PSU $130.00 Zalman ZM-600 HP Heatpipe Cooled PSU. blue internal light.
CPU cooler $80.00 ZALMAN CNPS 9500 AM2 2 Ball CPU Cooling Fan/Heatsink-- squashed about 1.5 inches. fan bent 50 degrees aimed at chipset riser. flush to PSU intake fan above at about 1-2 cm apart.
System Media $50.00 (4gb) scsi 0:0:0:0: Direct-Access LEXAR JD LIGHTNING II 1100 PQ: 0 ANSI: 0 CCS.
CPU $240.00 AMD Athlon(tm) 64 X2 Dual Core Processor 3800+ stepping 02 - 2.0 ghz
RAM $130.00 Patriot Viper 4GB (2 x 2GB) 240-Pin DDR2 SDRAM DDR2 1066 (PC2 8500) Dual Channel Kit Desktop Memory @ 800mhz
keyboard $20.00 1998 M$ Internet Explorer Keyboard, usb+ps2+hub used for xbox, this machine, approx 30-40 machines before it, 100's of OS installs across 4 generations of CPU-- 300 bogomips up to 22000 OC q6600.
noise levels $0.00 PSU noise only, silent to within 1 foot of case. our flourescent bulbs make more noise than the box. qfan on max cooling 40 degree 5 degree
case fans $0.00 3, fixed-voltage, disconnected for noise and wear. 2 on back deck above accessories panel. 1 blue lighted fan in front. The case fans were stock however the connectors are 2-pin and the fans make a lot more noise than the PSU.
video $0.00 hdmi over radeon 500/AMD/Ati 1250.
System Media $0.00 (4gb) scsi 0:0:0:0: Direct-Access LEXAR JD LIGHTNING II 1100 PQ: 0 ANSI: 0 CCS.
Ethernet $0.00 cat 5e tested good to 75% gig-e utilization
Cha-Ching!!! $850.00

First, the inspired record-setting non-trunked ethernet saturation that has heretofore never been witnessed on my personal hardware:
This was a mounted cifs volume to my quad-core vista with raid-0 across 3 drives (~170 M/s during the rare opportunity for non-interrupted linear IO under vista)
livecd slow # mount |grep slow
//10.0.12.223/in on /mnt/slow type cifs (rw,user=guest)
a write test, and speed-indicator prior to loop-mounting over cifs.
livecd slow # dd if=/dev/zero of=ntfs.test count=16 bs=256M 16+0 records in 16+0 records out
256+0 records in
256+0 records out
4294967296 bytes (4.3 GB) copied, 52.1532 s, 82.4 MB/s
the LEXAR media benchmark, livecd slow # hdparm --direct -t /dev/sda
/dev/sda: Timing O_DIRECT disk reads: 100 MB in 3.05 seconds = 32.79 MB/sec
the general size of the running image with portage rsync'd, and kernel sources installed and built without clean.
livecd slow # du / -xs
3926493 /
livecd slow # df -h
Filesystem Size Used Avail Use% Mounted
/dev/sda1 3.8G 3.5G 262M 94.00% /
/tmp 1.9G 28K 1.9G 1.00% /tmp
/vol/image.squashfs 1.6G 1.6G 0B 100.00% /mnt/livecd
udev 10M 112K 9.9M 2.00% /dev
vartmp 1.9G 554M 1.4G 29.00% /var/tmp

Other Features:

this working gentoo installation is a live-cd from thumb-drive -- the livecd squashfs image provides 1.6 gigs of AMD64 gentoo, which is about 4 gigs uncompressed even with reiserfs tails.
Rather than run in a read-only FS the command:
cp -asx /mnt/livecd/{usr,opt,lib,dev} /mnt/gento
...provides the read-only but replaceable base filesystem (all directories full of symlinks pointing back to the read-only compressed volume), leaving the other dirs to exists as-first class persistent files. without /etc, /bin, /sbin, /lib, and /var using genuine files, the system doesn't bootstrap well.

portage plays nicely with this configuration. using the livecd (on USB dvd) seems to provide the grub package without forcing the emerge (of grub) step in stage 3. big time saver.

Yet TODO:

my original hunch was to build a thumbdrive linux, and then transfer the filesystem to a flat image file with an nfs server boot and tftpd with pxegrub.
benchmarking the network filesystem confirms this (gig-e link) as a valid route to performance. The vista (x64) server has 8 gigs which will help out with access turnaround, but building the userspace nfsd on vista might be a chore. cygwin nfsd will chew up an entire core on high speed transfers, that's not likely to help much.  

update: vista has been retired.  a new mac book pro has taken its place.  The quadcore and terabytes await razing some time soon with a gentoo clone of the living room machine (at 82M/s !!).

Monday, February 18, 2008

Another dusty benchmark: Filesystem Torque Curves, gentoo 2.4.18




Filesystem Torque Curves, gentoo linux 2.4.18 5400rpm maxtor 80gig on athlon xp1700



Doing more cleaning, and dusted off an old filesytem benchmark deserving of notice.

This benchmark was built from a bash script that formatted the same partition each time with different filesystems and the -o options shown on the legend.

dbench was run with x processes and then the filesystem was wiped and formatted as above and the buffers purged. I ran this many times and got comfortable with the relative numbers being consistent, so this may represent only 1 test run but it was pretty stable at the time.

dbench runs a recorded session of deliberate samba abuse * n processes; A collection of large file operation and inode abuse.

Presently this machine is an anonymous motherboard sitting on a shelf in a stack next to a collection of anonymous old hard drives these days.

I wrote this benchmark to see if I was actually missing out on something that XFS brought to the table. I tend to go with reiser3 (tails rock for all things portage) for general purpose filesystems and ext2 or huge swapfs for performance workloads such as processing multimedia or mythtv sandbox.

XFS was touted as the coolest filesystem and supposedly excelled at all things for all needs according to several zealots I've run across. I always thought that it looked a bit contrived compared to ext2 and had less thought to detail than reiserfs. i had no idea those 2 filesystems would leave it in the dust until I ran the benchmark.

I'm fascinated these days with LinLogFS -- A Log-Structured Filesystem For Linux or Linux Log-structured Filesystem Project but the applications haven't presented themselves frequently.

Other items of note from this benchmark
  • dbench probably offers some opportune areas for inflated numbers corresponding to the force of numbers of developer man-years exposed to the linux driver module in question... where..
  • ext2's implementation is brutally terse with good results and lots of eyes and hands contributing vfs enhancements based on ext2 being the gold standard to cater around. (vfs doesn't seem so simple since this benchmark's kernel version)
  • Reiser shows the oddest process load harmonic. there's some nitrous in concurrent power of 2 access there...
  • JFS was having a really awful hair day at the time.
  • Minix crapped out on more than 2 processes effectively breaking the script and 0's were padded in.
  • pagesize as blocksize makes all the difference on fsbench.
  • journaling overhead seems to be an option that's somewhat costly for general diversified workloads. if you dont care about the data persistence, then you probably want the fast edition of the data, and won't need a fsck when a mkfs is plenty sufficient and takes a fraction of the time (such as with high performance computing processing nodes and various web state).
PDF: filesystem benchresults
Google Doc: spreadsheet include interval timings