NO EXECUTE!
(c) 2008 by Darek Mihocka, founder, Emulators.com.
August 1 2008
(with 157 days remaining until Macworld Expo 2009)
Flash Forward: Bring New Life To Your Old PC
Usually around this time of year as it gets warm in Seattle I start to have hard disk failures. Old 40-gigabyte mechanical hard disks that I purchased maybe 5 or 6 years ago at Costco just seem to like to crap out this time of year, this summer being is no exception. Even as I started investigating this piece two different friends called up to scream about their respective Dell notebook hard disks dying, just as one of my own mechanical hard disks too hit the bucket. That got me thinking, why not solve the problem of fragile mechanical hard disks by looking into various options for upgrading to solid-state disk drives?
Forget paying the $1000 SSD (Solid State Drive) upgrade for some notebook computers today. I'll show you how to upgrade your existing Windows XP notebook or desktop computer for under 75 dollars and make your "old" computer boot Windows XP in 20 to 30 seconds!
All you will need to follow along are a few parts shown here on the pool table of science... don't worry; it's not as complicated as it looks!
Patriot XT - The New Definition Of Fast
First a quick item from which anyone can benefit. Microsoft began to take advantage of flash drive technology in Windows Vista last year with the introduction of the ReadyBoost feature, also known as the External Memory Device (EMD) service. ReadyBoost mirrors data which is written to the traditional hard disk's page file under the premise that reading and writing flash memory over a USB port can be (and usually is) faster than accessing a potentially fragmented page file. And last year I did in fact verify that ReadyBoost does wonders, especially on lower-end notebook computers with slow 4200 rpm notebook hard drives and "low" amounts of RAM for Vista, such as 512MB. On my Sony VAIO notebook, ReadyBoost makes all the difference, making a sluggish Vista notebook much more responsive. I won't dwell on ReadyBoost too much as I've covered it before.
However one thing has changed dramatically with regards to ReadyBoost this summer, and that is the price of USB flash drives. Whereas a year ago a hundred dollars got you a good fast 4-gigabyte USB flash drive such as the Cruzer Micro or Cruzer Titanium, this summer the prices of 8 gigabyte USB flash drives have plummeted to well below 50 dollars. A 4-to-1 increase in bang for the buck over last year, but more importantly, these are very fast drives. Last month I picked up the Patriot XT 8-gigabyte drive at Fry's for 36 dollars (which I now see here on NegEgg.com to be down to $29: http://www.newegg.com/Product/Product.aspx?Item=N82E16820220252) and gave it a test with a couple of my custom disk benchmarking utilities, aptly named "GETBLOCK" and "HDTEST32".
I wrote these utilities a while back to originally test performance of mechanical hard drives, but they are just as useful on flash drives. GETBLOCK is a handy tool for extracting and copying chunks of binary files and doing low-level sector copies of drives. I use this tool to test the raw read and write speed of a drive at the most basic hardware level. HDTEST32 (and its 64-bit cousin HDTEST64) tests the performance of the 32-bit Windows WriteFile system call on various sizes of unbuffered data writes. HDTEST32 will always show slower performance than GETBLOCK, but takes into account the operating system's overhead of the FAT32 or NTFS file system.
Without a doubt, the Patriot XT is the fastest USB flash drive I have ever tested. Over a standard USB 2.0 port on my Mac Pro computer, the Patriot drive shows a GETBLOCK access speed of 27 megabytes-per-second for reads and 16 megabytes-per-second for writes. This even outperforms my iPod's transfer speed. This is just amazing, as it is at about the limits of the USB 2.0 protocol. The Patriot XT has a transfer rate that is about 50% faster than the Cruzer Micro, and well over double that of a Lexar JumpDrive which comes in at just under 10 megabytes per second for reads.
For Windows Vista performance, absolutely spend the 29 or 36 dollars on the new Patriot XT and throw away your existing USB flash drives.
A Look At Solid State Hard Disks - the ASUS EEE's SSD
It's a flash flash flash flash world! This past winter saw the release of three notable computers which featured solid state flash drives as an option or standard feature - the OLPC XO laptop (1GB flash drive), the ASUS EEE notebook (4GB flash drive), and Apple's Macbook Air notebook (64GB flash drive). Compared to the standard mechanical hard disk, flash drives offer several advantages:
Earlier this summer I decided to do what many owners of ASUS EEE notebooks have been doing, and installed Windows XP on to the 4-gigabyte internal solid state drive. This gave me the opportunity to take the next step into flash drives by benchmarking a solid state hard disk specifically designed to operate as the main boot drive. Such drives use the IDE or SATA protocols, which should allow them to reach speeds approaching 100 megabytes-per-second, or 100 MB/s.
The first thing I needed was a way to load a Windows XP setup CD-ROM on the ASUS EEE, which has no CD-ROM drive. There is a way to do this via a WinPE boot disk on USB flash drive, which I have used before but is overly complicated. The cheater way is to use an external USB CD-ROM drive, or in my case, I made my own. There is a terrific little device at Fry's called the DriveWire (http://www.apricorn.com/product_detail.php?type=family&id=39) which purchased for only 25 dollars. This is a extremely handy little device because it allows you to take just about any old internal CD-ROM drive, IDE hard disk, SATA hard disk, or notebook hard disk, and turn it into an external USB drive.
Booting up the XP Home setup CD was now trivial, and in less than an hour my ASUS EEE was running Windows XP. It was surprisingly fast, booting Windows XP Home Edition in just under 20 seconds! So then I upgraded the installation to Windows XP Professional Service Pack 2, then upgraded only to Service Pack 3. Several hours later, defragging the hard disk, the ASUS EEE boots Windows XP Professional Service Pack 3 in just 45 seconds. Not bad for a little 630 MHz 512-megabyte notebook!
The secret is in the speed of the built-in 4-gigabyte solid-state drive which delivers speeds comparable to the Patriot XT. Raw disk read speed is exactly 33 MB/s - one full gigabyte can be read in 31 seconds. File write speed as measured by HDTEST32 shows a steady write speed of about 12 MB/s. According to the Windows XP Device Manager, the SSD runs at IDE DMA mode 4, slightly slower than the typical DMA mode 5 found in most desktop and some notebook hard disks.
The SSD in the ASUS EEE does fairly well in comparison to a typical mechanical notebook hard disk. Unfortunately, not wanting to void my warranty or take my ASUS EEE apart just yet, there is just so much one can do with 4 gigabytes of space. I especially found Windows XP Service Pack 3 to be a pig, hugely bloating the disk footprint of XP to over 2 gigabytes - more than half the drive's size and slowing down the boot time from about 20 seconds to 45 seconds.
My recommendations if you go the Windows XP route on your ASUS EEE:
Transcend's SSD
Next, I wanted to try a retail solid state drive. Looking online, it appears that the price point of the 64-gigabyte SSD (such as found in the Macbook Air) is still around 1000 dollars. On Amazon.com for example, the OCZ 64GB drive is exactly 1000 dollars, while the Cavalry brand which I'd never heard of is about 900 dollars. Similarly, 32-gigabyte solid state drives are mostly about 500 dollars. Too much to experiment with given that 100 dollars today buys a 500 gigabyte mechanical drive.
Then one thing caught my attention, the Transcend brand of 32GB drive is only about 150 dollars! So I gave that a try a few weeks ago, buying both the IDE and SATA versions of the drive, shown here, with the IDE drive cradled in Dell's notebook drive basket:
As external USB drives connected to my Mac Pro via the LiveWire device, the Transcend drives are spectacular, roughly matching the throughput of the Patriot XT USB flash drive. I measured the Transcend SSD to give 26 MB/s raw disk read speed with GETBLOCK, and 18 MB/s file write speed with HDTEST32. This looked promising.
Next, I installed the IDE drive into my Dell D800 notebook, my trust 2003 era Pentium M based machine. Given the 32-gigabyte capacity of the drive, as well as the 1-gigabyte RAM of the Dell, I went for it and installed the latest Windows Vista Ultimate Edition Service Pack 1. The results are very promising, on AC power (Pentium M at 1600 MHz) Vista boots in just 36 seconds, and on battery power (at 600 MHz) in 60 seconds flat. This is measured from the time Windows shows the boot menu to the time the Windows desktop icons and Start menu are rendered.
For a more "Apple-to-Apple" test (pardon the pun), a very preliminary test which I just ran this morning on my black Apple Macbook (dual-core 2000 MHz Intel Core 2, 1GB of RAM) in Boot Camp native mode shows the SATA version of the 32GB Transcend drive delivering about 82 MB/s raw disk read speed, 36 MB/s file write speed, and booting 64-bit Windows Vista Service Pack 1 in about 30 seconds. For comparison, with the stock mechanical Toshiba SATA notebook drive, and Windows Vista SP1 takes 65 seconds to boot. The mechanical notebook drive does not exceed 33 MB/s for either the read or write test.
I see now that Amazon.com is offering a 64-gigabyte version of that drive for about 300 dollars. A far cheaper alternative to the 1000 dollar 64-gigabyte solid state drive that Apple offers as an option for the Macbook Air.
Build-It-Yourself SSD - for only 60 Dollars!
Ok, so I've touched on the 1000 dollar SSD, the 300 dollar SSD, the 150 dollar SSD, how about building your own SSD for 60 dollars? It is quite achievable!
Flash memory comes in many types of form factors, such as Sony MemoryStick (MS) using in Sony cameras and computers, Compact Flash (CF) used in many high end cameras, Secure Digital (SD) used by most cell phones and other cameras, and of course USB thumb drives. I decided to focus on Compact Flash when I realized reading this Wikipedia article (http://en.wikipedia.org/wiki/CompactFlash) that points out that CF uses the plain old IDE protocol of standard hard disk drives. Maybe I am ignorant not to have known this fact all these years, but reading that lit up light bulbs in my brain.
I immediately went shopping online, at Best Buy, at Fry's, and other local computer stores picking up components related to IDE hard drives and Compact Flash. You see those items at the top of this posting, and I also have some photos of them here:
I purchased several different CF-to-IDE adapters, little dongles which convert from the Compact Flash pin arrangement to the standard 44-pin notebook IDE pin arrangement or the 40-pin desktop IDE pin arrangement. The red device you see above is my favorite, that's the Addonics model which adapts Compact Flash to notebook IDE, one of several that the company makes (http://www.addonics.com/products/cf_adapter/). I also purchased from Compact Flash to 40-pin desktop IDE adapters, which are the larger units that you see pictured which have the 4-pin power adapter connections and LEDs on them. Additionally I picked up a basic 44-pin to 40-pin IDE adapter, which is the tiny green unit you see with the power cord dangling from it. These various adapters range in price anywhere from 3 dollars to 20 dollars.
The 3 dollar adapter is the basic unpowered CF-to-44-pin IDE adapter which I purchased online from Deal Extreme (http://www.dealextreme.com/). Although they are based in Hong Kong, shipping was by regular air mail and the adapters arrived in a matter of days. These adapters allow one Compact Flash card to be plugged in at a time. The Addonics adapters are dual socket, allowing two Compact Flash cards to be installed which will appear as a Master drive and a Slave drive on the IDE bus. They are a little pricier, costing about 20 dollars, which I purchased from CDW (http://www.cdw.com/). The other two adapters convert from Compact Flash to 40-pin desktop IDE pinout, which I purchased for 10 and 20 dollars from NewEgg (http://www.newegg.com/). The difference is that the 20 dollar adapter is dual-socket, with the Master socket being a SD card slot and the Slave socket being the Compact Flash slot.
Interestingly, no local computer store that I check at here in the Seattle area carried these simple CF-to-IDE adapters, and in most cases the salesperson had never even heard of such devices. So for now it appears you are limited to online shopping for these. One little adapter was easy to find, the 44-pin to 40-pin IDE adapter with the red and black power wires dangling from it. That one is a standard piece that's sold in most stores as a "notebook to desktop" or "2.5-inch to 3.5-inch" IDE adapter, and I was easily able to find one for 7 dollars locally.
Also pictured above is the DriveWire, and the two Compact Flash memory cards which I tested - the 4GB SanDisk Extreme III card, available for about 50 dollars at Best Buy, and the 16GB Qmemory card available online for about 65 dollars from http://www.flash-memory-store.com/. The final device I purchased is the Extech multimeter which features a clamp-style DC ammeter, which I used to measure the current draw (and thus computer the power consumption) of the various devices.
In the above photo of different devices hanging off the DriveWire, you can see all the various connection options. Depending on your usage scenario (notebook or desktop or SATA drive), you can plug the Compact Flash card into the 3 dollar Deal Extreme adapter to make your own solid-state notebook drive. Or, you can plug the Compact Flash card into the Addonics adapter and then to the 2.5-to-3.5 adapter to create a solid-state desktop drive. Similarly, use one of the NewEgg devices to plug the Compact Flash card directly into your desktop PC's IDE slot. Or, as before, just purchase a pre-packaged SSD.
I went the desktop computer route, using my old 900 MHz AMD Athlon machine which just had a mechanical hard disk fail on it as the guinea pig. This machine is an example of an older PC from the 2001 or 2002 which I had running Windows XP on in only 256 megabyte of RAM. The first thing I did was try the Qmemory card. I plugged it in to one of the NewEgg adapters and then plugged that directly into the IDE slot on the PC's motherboard as shown here: The ribbon cable that you see is from the second IDE slot, which connects the CD-ROM drive. You don't touch or modify that cable. All I did here was unplug the ribbon cable that connected to the dead hard disk, and replaced it with the Qmemory card and its adapter. From a wider angle, the new "hard disk" looks absolutely tiny, and has the benefit of generating virtually no heat, noise, or requiring any cooling. That is the flash card in the bottom of the photo. Notice that the NewEgg adapter uses the smaller 4-pin floppy disk power connector, and frees up the larger 4-pin connector of the old hard disk. If your computer lacks a second floppy disk power connector, then you will want to go the route of using the 3 dollar adapter stacked on top of the 7 dollar 2.5-to-3.5 adapter. Either way, you spend 10 dollars on adapters and get the same result. After running my tests and installing Windows XP to the Qmemory card, I repeated this procedure next with the SanDisk Extreme III card, and then repeat it again with the IDE version of Trascend solid-state drive. In all three cases I did exactly the same thing: One thing I found was that 256 megabytes is enough to Windows XP to boot up in using the default page file, but when I turned off paging Windows XP gets giving me low memory errors. I added a second memory DIMM to bring the memory up to 384 megabytes, and this solved that problem. And as I saw already from the ASUS EEE, which has 512 megabytes of memory, that is more than adequate to boot and run Windows XP, run IE, run Media Player, etc. and avoid low memory errors. So a minimum baseline, any computer that you wish to convert to using a solid state hard disk should have at least 384 megabytes of RAM installed. This avoids needing a page fie, and all the associated disk write traffic that generates. The second thing I noticed is that Windows XP took much longer to install on the Qmemory card than either the SanDisk card or the Transcend SSD, something like over 2 hours for the Qmemory compared less than one hour for the other two devices. Upgrading from Home Edition to Pro, same thing. Upgrading to Service Pack 3, same thing. That of course is related to the speed of the flash device, and once Windows XP was fully installed I was able to go into the Windows Device Manager and dump out the details of the disk drives and bus speeds. Pictured here are screen shots taken from the Qmemory install of XP, the SanDisk install, and the Transcend install, showing that in fact each device used a different Ultra DMA bus speed. Click each thumbnail to see the full size screen shot: Qmemory compact flash uses DMA mode 2, the slow speed used by most CD-ROM drives. SanDisk Extreme III compact flash uses DMA mode 4, typical of notebook drives. The Transcend solid-state drive uses DMA mode 5, the full speed of desktop IDE hard drives. A third observation is that in going from XP Home Edition to XP Professional Edition to XP Service Pack 3, the boot time slowed. Originally all three drives booted Windows XP Home Edition in about 20 seconds. But as I installed more updates and patches and as the disk footprint of Windows XP grew from about 1.5 gigabytes to about 2.5 gigabytes on the disk, boot times went up, and much more so for the Qmemory device. So tradeoff in price and performance is very evident here. Qmemory is a large capacity 16-gigabyte memory card that trades speed for capacity compared to the SanDisk card. How does that translate into performance of Windows? In the table below, I summarize the three solid state disks I tested on the 900 MHz Athlon machine as well as the performance of the built-in drive of the ASUS EEE and my mechanical drive based Apple iMac as a reference. The drives are measured in terms of Windows XP SP3 boot time (from the XP boot prompt until the desktop icons and Start menu are rendered), the raw disk read speed (using 1-megabyte sector level reads), the file system write speed (in 64K, 256K, and 1-megabyte blocks), and the power consumption of the drive. The power consumption surprised me. At idle, when there is no disk activity going on, the compact flash devices plugged in to their CF-to-IDE adapters appears to draw zero current (or at least under 10 mA, the resolution of the Extech clamp-on ammeter). The retail SSD drive on the other hand drew 150 milliamps, translating to about 3/4 of a watt of power, even at idle. During heavy disk activity, such as booting XP or performing a file copy, all the devices showed a jump in current draw, with the compact flash devices jumping up to about 1/2 watt of power consumption and the retail SSD jumping to over 1 watt. There is obviously a difference between just rolling your own SSD and using an off-the-shelf SSD, and I don't know if this is related to there being extra RAM for buffering or error correction on the Transcend SDD or just a design flaw, or is simply a function of the data speed of the device. In any case, the 1 watt or less power function of solid state drive is considerably lower than any existing mechanical hard disk, which is terrific in terms of notebook battery life, noise, and heat. The pre-packaged Transcend SSD is stunningly fast flash drive, not so much at boot times which involve read operations, but at write operations. There is hardly any difference in write speed between the different block sizes. On most mechanical hard disks there is a marked drop in performance for smaller and smaller data writes, and this shows up too on the compact flash based devices. But to achieve 18 megabyte-per-second throughput for unbuffered 64K writes beats the other flash based drives and is getting into territory that starts to compete with buffered mechanical desktop hard disk drives. So there you have it. It is quickly becoming a solid-state disk world and for good reason: It is very simple to build your own solid state drive for well under 100 dollars and get fairly decent performance, or to spend a few hundred dollars and get an excellent pre-packaged solid-state drive. If you are willing to put in the extra few hours setting up the Qmemory device, it makes a very replacement of an existing 10- or 20-gigabyte size legacy hard disk, and will likely run faster than your older drive. If you want the faster boot performance, you can't beat the overall 60 dollar cost of the SanDisk Extreme III card and adapter. All Flash All The Time by 2011? Is Windows 7 Prepared? There is one major "gotcha" with solid state drives of course, and that is the relative cost of a gigabyte of storage on flash compared to a traditional mechanical hard drive. It is certainly not feasible to replace a mechanical 500 gigabyte SATA hard disk which today sells for about 100 dollars with what would be several thousands dollars worth of flash. For notebook computers, which commonly only have 10 to 80 megabytes of disk storage, replacing with SSD makes sense. For desktop machines with terabytes of storage, at this point in time I would recommend using a solid-state drive as a boot disk, i.e. your C: drive, but keep your larger mechanical drives as secondary drives (D: E: etc.). At the rate things around going, flash has been delivering about 4 times the storage year over year for about the same price. A memory stick holding 256MB a few years ago was replaced by a gigabyte stick, last year by the 4GB stick, and today with 8GB flash costing as little as 29 dollars, 16GB compact flash and USB thumbdrives are readily available at well under 100 dollars. Assuming this steady rate of increase, 1TB (one terabyte or about 1000 gigabytes) of flash storage costing 100 dollars could be reality by the year 2011. Flash is already at a price point where notebook hard disks and fast SCSI drives were just two or three years ago, and only a few more years behind desktop drives. It was little more than 5 years ago that a 60-gigabyte IDE drive cost about 300 dollars (and would have been much slower than today's flash drives). In fact, if you compare today's prices of ultra-fast SCSI drives, the kind of fast but power-hungry server disk drives needed to handle large amounts of data, the price ratio is barely 2-to-1. I predict that within the next year, most notebook manufacturers will follows the lead of OLPC ASUS and Apple and switch to 32GB and 64GB solid-state drives as standard equipment. Similarly, IT department running large server farms will start replacing power-hungry 10,000 rpm and 15,000 rpm SCSI disk drives with silent and energy efficient SSDs. By 2011, the mechanical hard disk will only lead in capacity, but not necessarily in price. Now for one observation about how solid state drives may impact operating system design in a big way. In the compact flash and SSD drive cases above, once Windows XP was up and running the first-time boot time of applications was stunningly fast compared to what I am used to. First-time click on Internet Explorer - 2 seconds. First time boot of Windows Media Player 11 - 2 seconds. Why? A solid state disk eliminates most of the delay and latency of launching Windows applications, which typically have to perform dozens if not hundreds of disk seeks to load in the various system DLLs, resource files, image and sound files, as well as the main EXE file itself. The boot time of a large application is highly affected by the disk seek time, which in turn is affected by the amount of disk defragmentation and also by how full the hard disk is. This is why for decades now, operating systems have used in-memory disk caches to hold frequently used files and why Windows Vista even preloads ahead of time files that it thinks it might need. All to eliminate the disk seek delay which flash disks now virtually eliminate (as is evidenced by the fact that my Apple iMac with dual-core 2000 MHz processor and supposedly "fast" mechanical SATA hard disk boots Windows XP the slowest of the bunch due to disk seek times). This highlights an oversight in all existing versions of Windows, including XP and Vista, in that Windows does not take into account the low cost of re-reading data from a solid state drive. For example, if a bloated application that typically requires 5 to 10 seconds for a first boot can boot in 2 seconds from a flash disk (as fast as it does from a disk cache), what is the need for Windows to maintain an in-memory disk cache? What is the need for Windows Vista features such as SuperFetch and ReadyBoost? I will argue that Windows (and other operating systems) should detect a solid-state hard disk and turn off most forms of buffering and file caching for that drive. As I have found and other people have found with their solid-state based systems, Windows XP and Windows Vista both do just fine without a swap file provided that you have a fast enough hard disk. Perhaps this is why Windows Server 2008 by default does disable these disk caching schemes, as it assumes exactly that? This policy should be extended to a more general form similar to what ReadyBoost does when you insert a USB thumb drive, and simply turns off most disk caching if the read/write speed of the drive is found to be above some certain threshold. Yet when I installed the latest Windows Vista SP1 on the Transcend SSD on the Dell, it stupidly enabled SuperFetch, enabled ReadyBoost, and set up a gigantic 1.5 gigabyte page file. Oops? Windows 7 team, I know you had yet another vice president flee just a few days ago and are probably being reshuffled and re-orged yet again, but please pay attention to this SSD matter before you release Windows 7!!!! Finally, I apologize, I spent so much time playing around with solid-state drives this month that I will need to continue writing up my Hyper-V discussion for next time. I am going to be contributing to Beijing's smog problem by driving down to Dallas Texas next week to catch Metallica headlining Ozzfest and then am off to some Judas Priest and Motorhead concerts up north. Until next posting (likely just before Labour Day), I'd love to hear about your own solid-state drive experiences and any more significant price drops that you find out about.
Qmemory 16GB compact flash drive
(total cost $75)SanDisk 4GB compact flash drive
(total cost $60)Transcend 32GB IDE SSD
(total cost $150)ASUS EEE built-in 4GB SSD Apple iMac 500GB
mechanical SATA 500GB driveWindows XP Pro SP3 boot time 41 seconds 28 seconds 28 seconds 45 seconds 53 seconds GETBLOCK 1MB raw disk read rate 14 MB/s 27 MB/s 55 MB/s 33 MB/s 60 MB/s HDTEST32 64K write speed 8 MB/s 7 MB/s 18 MB/s 4 MB/s 42 MB/s HDTEST32 256K write speed 8 MB/s 14 MB/s 19 MB/s 10 MB/s 43 MB/s HDTEST32 1MB write speed 8 MB/s 17 MB/s 21 MB/s 12 MB/s 46 MB/s IDE DMA Mode 2 4 5 4 5 Current draw, no disk activity <10 mA < 10 mA 150 mA n/a n/a Peak current draw, heavy disk activity 90 mA 110 mA 210 mA n/a n/a Peak power consumption @ 5V < 1/2 watt about 1/2 watt about 1 watt n/a n/a
[Part 1] [Part 2] [Part 3] [Part 4] [Part 5] [Part 6] [Part 7] [Part 8] [Part 9] [Part 10] [Part 11] [Part 12] [Part 13] [Part 14] [Part 15] [Part 16] [Part 17] [Part 18] [Part 19] [Part 20] [Part 21] [Part 22] [Next] [Return to Emulators.com]