Slashdot Mirror


Are SSD Accelerators Any Good?

MrSeb writes "When solid-state drives first broke into the consumer market, there were those who predicted the new storage format would supplant hard drives in a matter of years thanks to radically improved performance. In reality, the shift from hard drives (HDDs) to SSDs has thus far been confined to the upper end of the PC market. For cost-conscious buyers and OEMs, the higher performance they offer is still too expensive and the total capacity is insufficient. SSD cache drives have emerged as a means of addressing this situation. They are small, typically containing between 20-60GB of NAND flash and are paired with a standard hard drive. Once installed, drivers monitor which applications and files are accessed most often, then cache those files on the SSD. It can take the software 1-2 runs to start caching data, but once this process is complete, future access and boot times are significantly enhanced. This article compares the effect of SSD cache solutions — Intel Smart Response Technology, and Nvelo Dataplex — on the performance of a VelociRaptor, and a slow WD Caviar drive. The results are surprisingly positive."

34 of 331 comments (clear)

  1. bcache by Anonymous Coward · · Score: 5, Informative

    For Linux users: http://bcache.evilpiepirate.org/

    Lets you use any SSD as a cache in front of another filesystem.

    1. Re:bcache by drinkypoo · · Score: 4, Informative

      Lets you use any SSD as a cache in front of another filesystem.

      It would be niftier if it would let you use it as a block cache in front of any filesystem, instead of just one located on a specially-prepared partition. dm-cache will do this but isn't up to date.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    2. Re:bcache by antifoidulus · · Score: 4, Informative

      Flashcache is a block-level caching algorithm, which means that it will work with any device, but it takes a metric TON of memory as it has to retain cache info for every block on the device. If you have the memory then yeah, you can get some speedup from it, but if you are memory constrained eating up that much memory for the small performance boost isn't worth it.

    3. Re:bcache by Anonymous Coward · · Score: 4, Informative

      For Linux users: http://bcache.evilpiepirate.org/

      Lets you use any SSD as a cache in front of another filesystem.

      For ZFS users:
      * read cache: zpool add {pool} cache {device}
      * write cache: zpool add {pool} log {device}

    4. Re:bcache by Gaygirlie · · Score: 3, Interesting

      That's what I use on my laptop: I've got a 16GB class10 SDHC-card formatted as NTFS and fully dedicated to ReadyBoost and I do notice some speed-up in boot and firing up applications. Nothing spectacular and obviously an SSD would be ideal, but it is still better than nothing, especially with the prices SDHC-cards go for nowadays.

    5. Re:bcache by ShoulderOfOrion · · Score: 5, Interesting

      Why bother? I have an HDD mounted as /, and an SSD mounted as /usr on my Gentoo system. Using atop I consistently see the HDD receive 10-20 times the writes the SSD receives but only about 2x the reads. In other words, on Linux the SSD is already serving primarily as a read-only caching filesystem just by mounting it correctly.

    6. Re:bcache by ToasterMonkey · · Score: 3, Interesting

      For Linux users: http://bcache.evilpiepirate.org/

      Lets you use any SSD as a cache in front of another filesystem.

      Solaris and Windows have been shipping with production ready L2 FS cache for years already, L2ARC/ReadyBoost. I'll give Apple a pass because their systems are mostly not designed for adding drives, and they were apparently betting on high capacity SSDs coming down in price by now. Desktops have less of a need for caches in the tens of GB anyway. Linux, as a server OS doesn't have much of a good excuse, why wasn't L2 cache worked out years ago when everyone was racing for TRIM support? Using smaller cheaper SSD drives as L2 cache almost makes too much sense. It covers up the short write cycle lifetime and poor sequential read performance. 60 some odd GB of cache starts to look pretty dang good for a lot of server workloads.

      I feel I should point this out because these cheesy Linux +1 MeToo posts are _really_ aggravating to people who use it professionally. It's a tool. We're not in love with it.

      http://arstechnica.com/civis/viewtopic.php?f=21&t=1114013
      The developer apparently didn't even know what the ARC algorithm is... which is just bizarre, like developing a race car without knowing what variable valve timing is. Not saying it is needed, but what level of quality do you expect out of this?

    7. Re:bcache by Gaygirlie · · Score: 5, Informative

      You should not expect much speedup from using a 10Mbyte/s memory card in front of a standard 150 MByte/s sustained transfer drive.

      You said it yourself: "sustained." The whole point with ReadyBoost is that it uses these Flash-devices for matters where low latency is more important, sustained transfer-rate is therefore not important. It doesn't even try to cache multi-megabyte files, it caches small files and details that are accessed frequently: a regular HDD is quite bad at reading dozens of small files from all over the disk due to seek times.

      If the small files are stored in your cache, you might save some seek time. But you can't compare some ultra-slow USB / SDHC card to a 2-300 Mbyte/s SSD.

      That's what I said.

      I tried the SDHC, did not work well. A fast USB 3.0 stick in a USB 2.0 port was way better, but still does not compare to SSD.

      If you were expecting SSD-level performance then you clearly didn't understand fully what you were doing in the first place. It is not meant to replace an SSD, it is simply meant to speed up your system as compared to only using a regular HDD.

    8. Re:bcache by Skal+Tura · · Score: 4, Informative

      USB latency is actually rather high. Infact, rather VERY high.

      Absolute minimum latency for a fetch is 16ms on USB port. It seems this has had some work on it, now being 125Hz rate by default, instead of 90.
      But still 8ms for sending request for file, device gets it, let's assume it's ultra fast and takes just 3ms to find, fetch and prep reply packet (and assuming fits on 1 packet), it means 16ms has been spent BEFORE the data can be sent back, 24ms for the whole round trip.

      HDDs seek faster than this, SO if your HDD is not having other activity, for single fetch your HDD is faster. Unless it's Caviar Green.

  2. No. by Anonymous Coward · · Score: 5, Insightful

    Hybrid drives or mixed mode setups kinda suck ass now that actual ss drives are getting to a reasonable price/size.

    SSD for os/programs.

    Giant TB+ drive for storage and media files.

    1. Re:No. by wbr1 · · Score: 5, Insightful

      For the average joe, they dont want to have to manage putting os/apps/frequent files on one drive and split the rest elsewhere. Software that automagically does this and keeps the cache up to date is a boon for the non power user.

      --
      Silence is a state of mime.
    2. Re:No. by afidel · · Score: 3, Interesting

      I assure you that there are MANY 800 GB SAS/SATA SSD's that can beat your hybrid drive, they just cost more than most people will spend on their entire computer =)

      --
      There are 4 boxes to use in the defense of liberty: soap, ballot, jury, ammo. Use in that order. Starting now.
    3. Re:No. by Eskarel · · Score: 4, Insightful

      I'm sick of this myth. The math I've done indicates that, presuming that the drive is doing a halfway decent job of spreading the writes around, most cheap SSDs are rated to allow you to write the entire volume of the drive every day for about 30 years. Now personally I don't even come close to doing that, and your average physical HDD is rated for about 5 years, with 10 being a seriously long life.

      If you buy a reasonable quality SSD at present your drive will not last long enough to see a significant level of NAND failure and what will kill it will be one of the million things that kills HDDs on a regular basis.

    4. Re:No. by DigiShaman · · Score: 3, Interesting

      SSDs have a propensity to just die like a normal HDD. Not sure why. Could be overheating, poor quality in materials making the ICs, buggy code in the firmware someplace. Who knows. But I've seen plenty OEM Samsung and OCZ Vertex 2 drives go tits up in a nanosecond. Either you can't read the data of the drives, or flat out wont enumerate SATA side (effectively bricked).

      So why SSDs look great on paper in "theory", real-world stats say otherwise above and beyond just my own experiences.

      OTOH, like the SSD crackwhore bitch that I am; once I tasted the speed of SSDs, I'll never go back. I just schedule daily backups to a standard HDD. Windows 7 Backup or Apple Time Machine for you Mac heads.

      --
      Life is not for the lazy.
    5. Re:No. by DigiShaman · · Score: 3, Informative

      Standard desktop chipsets can get real flaky with 16GB of RAM and above. So be sure you get a single Quad kit and not 2x Dual kits like most people get (because it's cheaper). But then again, if you're serious about needing that much RAM, I suggest going workstation level with an Intel Xeon or AMD chip. Those are the only to line of CPUs that will support ECC. Last thing you want to have to worry about is some bit flips happening someplace and then the corruption being committed back to disk. Ugh!!! The though alone is enough to give me ulcers. Seriously, go with ECC when working with that much memory.

      --
      Life is not for the lazy.
    6. Re:No. by Sir_Sri · · Score: 3, Interesting

      That was true back when you were talking about MB numbers. It's definitely not true when talking in that rage of GB.

      To use windows as an example, it will try and cache what it thinks you're going to load based on I think a fairly simple algorithm. Which means it's usually wrong. If you never access more than 32 GB worth of data from your HDD then sure, 32 GB of Ram will do the trick. But, for example, if you play WoW or SWTOR (both of which flutter around 20GB), any other game + web browser + windows you could fairly easily waltz past 32 GB of data, at which point you're into 'cache misses'. And yes, this is conceptually the exact same problem as cache hit ratios, just working at a different level (logical files or directories rather than lines of memory).

      I had virtually no performance increase going from 12 to 24 GB of RAM on general disk use.

      You can get a big boost from an SSD, and especially, getting something that will actually work a SATAIII connection at full speed. My x58 board is lucky to pull more than 200MB/s from even a very good SSD, whereas the same drive on a sandy bridge board will do 450-550 range.

      Now keep in mind, a regular HDD is about 70MB/s for sustained data. Put that in a raid 1 (mobo hardware, or software) and you can see 120-130, so an SSD on a bad connection may not be that much better than much less expensive RAID.

    7. Re:No. by tlhIngan · · Score: 3, Informative

      Now keep in mind, a regular HDD is about 70MB/s for sustained data. Put that in a raid 1 (mobo hardware, or software) and you can see 120-130, so an SSD on a bad connection may not be that much better than much less expensive RAID.

      You're ignoring a very important fact.

      An SSD is at least an order of magnitude faster still because the seek time is in the microsecond range. So even an SSD on a bad interface can easily peg the interface for random I/O, while the super RAID array doing the same accesses can bog down to a halt.

      The reason? Seek times. A typical hard drive is around 7ms or so, which means if you're doing lots of seeks, you'll never get that sustained transfer rate. Worst case, you can easily get less than 1MB/sec if the hard drive is reading 4kB blocks at random locations.

      A hard drive is great for long reads and writes. An SSD excels at random I/O and OS/application usage tends to be random I/O. It just makes the whole system feel "snappier" purely because read requets are fulfilled immediately versus skittering the head over the platters.

      In fact, Windows 7 does a quick test to determine if it's running on an SSD - it does a bunch of random I/O. If the drive is capable of more than 50MB/sec, it's an SSD because no spinning rust can meet that requirement due to seek time.

    8. Re:No. by isorox · · Score: 3, Interesting

      I'm well aware of seek times. And honestly, they don't matter all that much. For a very small file they take you from 1-2 seconds to effectively instant yes, but for a significant file you're throughput limiting yourself anyway.

      The problem comes when you try to read a small file while reading the large file. If you want to preview 1,000 files (say thumbnails for a directory full of pictures), that's 1000 reads. At 10ms each (hdd), that's 10 seconds. At 10ns each (ssd), that's 10ms.

      Sure, keep your read-only media on a large hard drive, as you'll tend to be pulling it off as a single stream, with only one open file, but keep the majority of your files on an SSD.

    9. Re:No. by Miamicanes · · Score: 3, Informative

      > SSDs have a propensity to just die like a normal HDD.

      No, normal drives tend to become flaky, then get super-slow, then start to make grinding noises and die outright a short time later. SSDs just commit data-suicide, then go into "panic" mode and lock the entire drive if they sense that you're trying to do data recovery on them. Ask anybody unfortunate enough to own a drive based on the Sandforce SF-1200 controller, like the OCZ Velocity2. OCZ's forums are *littered* with post after post after post (continuing to the present) from people who've had the drive just spontaneously decide to fail.

      The problem isn't flash-wear... the problem is a perfect storm of buggy firmware, drive-level encryption, and paranoid firmware that views aggressive attempts to recover data lost due to that buggy firmware as a hacking attempt & locks out the entire drive in a way that can't be fixed by end users (mostly, because Sandforce won't allow the recovery/repair tools to be released to end users). IMHO, it's completely inexcusable. At the VERY least, they should have made the encryption and protection something that can be disabled by end users (probably requiring complete reformatting, but at least present as an option). Then, they could have made a recovery mode that allows drives that had the encryption disabled to just sequentially rip the raw bits from the flash for offline recovery. But no. They have to protect their shit IP that nobody who's been burned by them will EVER purchase again anyway, and casually write off petabytes of lost user data due to their brittle embedded firmware and protection as "not our problem".

      OCZ and Sandforce are the best poster children for a class-action lawsuit since the day HP decided to sell CD writers without cache (that their engineers GUARANTEED would turn at least a quarter of the discs they touched into coasters). The sad part is that such a suit could only have things like piddling amounts of money as the penalty, instead of compelling Sandforce to furnish all source, signing keys, and in-house utilities relevant to the SF-1200 to anybody who's ever had the misfortune of purchasing a drive based on it.

  3. No way. Too late. SSDs already cheap enough by Anonymous Coward · · Score: 3, Insightful

    240GB SSDs are bouncing around 200. 2 bills for the boot SSD and your old drive gets the data partition and you are beating these hybrids on performance AND price.

    1. Re:No way. Too late. SSDs already cheap enough by lightknight · · Score: 3, Informative

      Exactly. I have a 240GB SSD for my laptop and desktop's main drives, with oodles of secondary storage (7200 RPM, of course). The difference is magnificent. If you've never used a SSD before, you simply do not understand -> Adobe Photoshop CS5 loads in only 3 or 4 seconds. Try doing that on a mechanical hard drive, and it's just PAIN.

      --
      I am John Hurt.
  4. Re:I have seen SSDs used just to load the OS by pla · · Score: 5, Informative

    To me it is not worth it to watch your os boot faster.

    First of all, putting the OS on a disk by itself doesn't only mean that Windows runs faster - The OS reads and writes to its files on a near continuous basis. For years before SSDs, we've known that simply getting that activity segregated onto its own disk, away from "real" file activity, gives a decent performance boost across the board; moving it to an ultra-fast random-access media helps even more (and even if you don't care about boot time, how about "responsiveness"? Every time Windows needs to wait for some stupid little icon to load, you need to wait for Windows to wait for some stupid little icon to load).

    Second, SSDs have gotten a lot bigger and a lot cheaper. You no longer need to decide between spending a fortune or segregating your apps out; a $60 SSD will hold the OS and every app you could ever possibly run, with plenty of room to spare. Yes, you'll still want that second big-slow-and-cheap HDD for general purpose storage, but you haven't needed to carefully weigh "on which disk should I install this program" for at least a year.


    Flash ram is not a permanent solution and will die due to the limited number of writes.

    And you think a drive with actual moving parts will live forever?


    Make no mistake, SSDs have their flaws, and cost definitely still counts as one of them. But once you really use a system set up with SSD system / HDD data, you'll never even consider going back. And mere boot time has nothing to do with it.

  5. Re:I have seen SSDs used just to load the OS by cdrudge · · Score: 5, Informative

    What also is not addressed in the article is the reliability of the SSDs. Flash ram is not a permanent solution and will die due to the limited number of writes. If you use mysql or MS access or run low on space and use XP that thing will be dead in a matter of months. It can only handle so much paging and writes before it dies. Tricks in the firmware move the write bits to random places in memory to prevent this but as it fills up the paging needs to keep to keep hiting the same memory addresses.

    There are a variety of different ongoing tests to look at how long drives actually last. Looking at a fairly standard older Intel 320 40GB drive, it went 190TB written before the MWI threshold was reached, and continued on until 685TB. That means it completely rewrote the drive 17500+ times.

    No, it won't last forever. And it's not ideally suited for every single industry and use. But for the typical user, they are more likely to need a larger drive or otherwise upgrade then wear out the drive.

  6. All software is not created equal by Nemilar · · Score: 3, Informative

    It seems that SSD accelerators can be hit/miss. If you take a look at http://www.theregister.co.uk/2012/07/12/velobit_demartek/ for example, some of these products don't seem to do anything - while some seem to actually work.

    Like any young industry, it'll probably a while to shake out field until only a few decent contenders remain.

    --
    Nemilar http://www.techthrob.com - Visit Me!
  7. Surprisingly why? by Sycraft-fu · · Score: 3, Informative

    It would be surprising if it weren't the case. We've been doing the same thing with memory for years. Our CPUs need memory that can perform in the realm of 100GB/sec or more with extremely low latency, but we can't deliver that with DRAM. So we cache. When you have multiple levels of proper caching you can get like 95%+ of the theoretical performance you'd get having all the RAM be the faster cache, but at a fraction of the price.

    This is just that taken to HDDs. Doesn't scale quite as well but similar idea. Have some high speed SSD for cache and slower HDD for storage and you can get some pretty good performance.

    I love Seagate's little H-HDDs for laptops. I have an SSD in my laptop, but only 256GB. Fine for apps, but I can't hold all my data on there (music, virtual instruments, etc). They are just too pricey to get all the storage I'd need. So I also have an H-HDD (laptop has two drive bays). It's performance is very good, quite above what you'd expect for a laptop drive, but was only $150 for 750GB instead of $900 for 600GB (the closest I can find in SSDs).

  8. Pointless by AlienIntelligence · · Score: 4, Informative

    SSD's were recently @ $1/Gig. That's when I upgraded everything.

    I've seen them as low as 55-65c a gig now. Yeah... gotta love how
    tech drops in price RIGHT AFTER you decide to adopt.

    Buy a WHOLE SSD drive. Put all the programs you use daily on it.

    120G ~ $70

    That is all.

    FWIW, except for bulk storage, I will NEVER buy a spinning HD again.
    I experienced a RIDICULOUS speed up, going from a 7200rpm drive.

    -AI

    --
    For me, it is far better to grasp the Universe as it really is than to persist in delusion
  9. No mention of OS requirements by antifoidulus · · Score: 4, Informative

    The article doesnt mention any other software(mostly OS) requirements for the accelerators, which is a pretty big deal. Basically there are 2 ways to cache:
    1. On the file level, which isnt very resource intensive(there aren't nearly as many files as blocks on a disk), but requires that the accelerator be able to read file system metadata(and of course be able to intercept OS calls) which severely restricts what kind of file system, and really even operating systems, you can use with the accelerator
    or
    2. Block-level caching. Much more generic, can really be used with any file system as the blocks, not any file system metadata, are the only thing that is used. However managing all that block information comes at a cost, either in main memory or more expensive hardware. For instance Flashcache requires about 500 megs of memory to manage a 300GB disk. Depending on your usage this may be acceptable(though is memory really that much cheaper than ssds nowadays?) but for most it isnt.

    From the article I can assume that they only tested Windows, and that really limits its usefulness.

  10. Single Article - Multiple Pages by Taco+Cowboy · · Score: 4, Interesting

    TFA at extremetech isn't that feature rich, nor embarking on a brand new frontier that none of us had ever been

    TFA could have been made into ONE PAGE, but no, extremetech ain't gonna let us, the readers, enjoy it in one shot - we had to click through all the 5 pages

    Please, Slashdot !

    Next time you give us a link to a single TFA with multiple pages, please indicate it right upfront

    Thank you !
     

    --
    Muchas Gracias, Señor Edward Snowden !
    1. Re:Single Article - Multiple Pages by sortius_nod · · Score: 5, Informative

      Not only this, the claims are at least 12 months out of date. SSD's are now less than $1/GB, & the average drive sold now is 120 or 128GB.

      I upgraded my desktop with a cheap solution (AMD A8, 990FX, 16GB RAM, 128GB SSD, 2TB HDD) all for less than my last upgrade cost ($669 vs $955) 3 years ago. SSDs are definitely part of the norm now, we order many machines with dual 128MB SSDs in them, both laptops & desktops. The price difference is negligible, so this article seems more like a cry by someone attempting to hold onto the old way of doing things.

    2. Re:Single Article - Multiple Pages by obarthelemy · · Score: 4, Informative

      Not all of us are gamerz ?

      --
      The Cloud - because you don't care if your apps and data are up in the air.
    3. Re:Single Article - Multiple Pages by jawtheshark · · Score: 3, Informative

      AMD A8 (and A6 and A4) have a graphics core on board. Those graphics cores even are quite sufficient for non-hardcore gaming. I'm a fan of the FM1 platorm, and think it is way underrated. It has decent processing power, decent graphics, is very quiet (even with stock cooler) and not expensive at all. Example: A6-3650 (86.90€), 2x8GB kit RAM DDR3-1333 from ADATA (67.98€), motherboard GIGABYTE GA-A75-D3H (99.90€). That's quite some power for 254.78€ (including taxes, excluding shipping -- prices taken at Alternate). Like many of us, we just reuse the disk and the case we already own. There is no need for a graphics card in such a system, unless you're a hardcore gamer.

      --
      Ahhh...the great dumpster continuum. Many a free computer will be found there. -- sowth (748135)
  11. Re:Simpler solutions tend to be superior. by gman003 · · Score: 4, Informative

    I would recommend buying an SSD, putting the OS and all applications on it, and then using a magnetic drive as the "users" volume. Any sanely laid out OS makes this very easy.

    Just an FYI for everyone, Windows does not count as a sane OS for this purpose. I managed to render a Windows install unusable trying to do that.

    The best trick is to move just specific user's folders, not the whole Users directory, over, and then symlink it back to the original location. Trying to move the entire \Users folder almost always breaks something, often rendering it impossible to log in. Other methods either require setting up your own unattended install disks with odd config files, or do not work completely.

    The general process:
    1) Install Windows to the SSD as normal
    2) Create a user account and a backup account. For this demonstration, their original, default home folders will be C:\Users\GMan and C:\Users\Admin
    3) Reboot (to log both out completely)
    4) Log into the backup account, otherwise the system will choke while copying your registry files
    5) use Robocopy to copy the user folder to the hard drive (robocopy C:\Users\GMan D:\Users\GMan /COPYALL /E)
    6) Delete the user folder (rmdir C:\Users\GMan)
    7) Symlink the folder on the hard drive back to the SSD (mklink /J C:\Users\GMan D:\Users\GMan)
    8) Repeat for any other users, but note that you only need one "backup" account

    This gives a few advantages:
    1) It works transparently with programs that assume you are at C:\Users\[username]
    2) It copies all user data, not just documents/images/videos
    3) If the hard drive fails, you don't break the OS - you can log in using the alternate account (Admin in my example) to try to recover things
    4) If you really wanted to, you could try to set some specific files in your user directory to be on the SSD
    5) If you have a Windows install, or at least recovery partition, on the hard drive, either drive can fail without rendering the system unusable.

  12. complete BS by slashmydots · · Score: 4, Interesting

    SSD aren't just for high end systems. Out of my 300 or so past customers, approx 3 filled their hard drives to over 60GB total. I built several Kingston HyperX 90Gb and OCZ Agility 4 128GB drives without problems and they were all $500-600 final cost. I use an H77MA-G43 from MSI + 4GB Gskill 1333-CL7 memory and i3-2100 or 4GB 1333-CL9 and a Pentium B940-960. Put it in a decent $30-40 case, use an Antec VP450 or Basiq or other respectable but medium end PSU, and wait for a sale on Win7 64-bit OEM copies for $80 instead of $100 and you've got yourself an unbeatable, 7 year anticipated lifetime machine. Here's the kicker.

    I have an i5 (sandy) ridiculous gaming computer with a GTS450, 8GB of CL7 RAM, P67 chipset, and a pretty fast 7200 RPM 1TB Seagate main drive. It's custom built and would be around $1000 retail at my shop (at the time at least). It takes over a minute to log in and it takes forever to load games.

    I also built a system I'm selling for $520 with a Pentium B950, 4GB of pretty standard RAM, and a Maplecrest 60GB SSD. It logs into Windows in 4 seconds. The glowing balls don't even touch while loading the Windows 7 logo.

    SSDs are not for high end systems only! They're specifically exactly the opposite. They're the best way to make a really cheap budget PC seem extremely fast.

  13. Comment removed by account_deleted · · Score: 3, Informative

    Comment removed based on user account deletion