Slashdot Mirror


New PCIe SSDs Load Games, Apps As Fast As Old SATA Drives

crookedvulture writes Slashdot has covered a bunch of new PCI Express SSDs over the past month, and for good reason. The latest crop offers much higher sequential and random I/O rates than predecessors based on old-school Serial ATA interfaces. They're also compatible with new protocols, like NVM Express, which reduce overhead and improve scaling under demanding loads. As one might expect, these new PCIe drives destroy the competition in targeted benchmarks, hitting top speeds several times faster than even the best SATA SSDs can muster. The thing is, PCIe SSDs don't load games or common application data any faster than current incumbents—or even consumer-grade SSDs from five years ago. That's very different from the initial transition from mechanical to solid-state storage, where load times improved noticeably for just about everything. Servers and workstations can no doubt take advantage of the extra oomph that PCIe SSDs provide, but desktop users may struggle to find scenarios where PCIe SSDs offer palpable performance improvements over even budget-oriented SATA drives.

25 of 162 comments (clear)

  1. SATA Slots. by TechyImmigrant · · Score: 3, Insightful

    A PCIe SSD opens up the sole SATA slot for the backup disk in the small form factor PCs that are currently in vogue.

    --
    I should use this sig to advertise my book ISBN-13 : 978-1501515132.
    1. Re:SATA Slots. by TechyImmigrant · · Score: 2

      Since when is a disc mounted permanently in the computer case considered even remotely a backup option?

      When it's a second disc with a copy of files from the first disk, or a raid-0 mirror disk.

      Good for backup from hardware failures. Not so good at backup from malware. Back up from malware needs to be on a remote machine that isn't mounted into the file space of the backed up machine so the malware can't infect it. That's why I have both. Local mirroring and a backup system that scp's the files periodically over the network.

      --
      I should use this sig to advertise my book ISBN-13 : 978-1501515132.
    2. Re:SATA Slots. by YrWrstNtmr · · Score: 3, Informative

      When it's a second disc with a copy of files from the first disk, or a raid-0 mirror disk.

      And that is sooo wrong. RAID 0 is not a mirror of any kind.

      Raid 1 - data is mirrored across multiple drives
      RAIND 0 - data is striped across multiple drives.

    3. Re:SATA Slots. by ArsenneLupin · · Score: 3, Insightful

      Yes. I mean't disk mirroring...

      So, there's still another mistake then.

      Indeed, disk mirroring is not a replacement for backup. Disk mirroring only protects against (some...) hardware failures, but not against human error (such as accidentally removing the wrong file). Backups protect against human errors too (... and natural disasters, if kept offsite, and plenty of other error conditions which mirroring doesn't protect against).

  2. So? by iamwhoiamtoday · · Score: 4, Interesting

    Most folks who need the throughput of a PCI-E SSD won't use it for just gaming. These same users are likely power users. Everything from running test VMs locally to Video / Audio editing would see a huge improvement from this tech.

    Loading apps? games? That's nice and all, but those are far from the only use cases of fast storage media.

    Personally, the new PCI-E SSDs have gotten a good amount of use from me as ZFS cache drives, where they've been wonderful for saturating 10gbps Ethernet.

  3. SSDs by HBI · · Score: 2

    Particularly, an X-25M 3gbps SATA drive. Which was pretty fast a few years ago. These are, in practical terms, no faster. I doubt enough data is being moved to see the difference.

    --
    HBI's Law: Frequency of calling others Nazis is directly correlated with the likelihood of the accuser being Communist.
    1. Re:SSDs by Cowclops · · Score: 4, Interesting

      I have an x25-m G2 80GB and a crucial M500. The crucial drive has substantially better random iops, and the system does feel faster booting off it than the x25-m. But the difference in "feel" is like a 7200rpm platter drive vs a 10,000rpm platter drive... same ballpark but the 10k is just a bit snappier.

      Newer SSDs are definitely faster than earlier ones, but we've kind of hit a wall with needs for even more speed. The slowest (non-broken) SSD you can buy today will be no less beneficial in real world home-user operation than the fastest SSD you can buy. Its just that there is a little bit of room for improvement over 2008-2009 era SSDs. (Don't take this as a disagreement, just an elaboration).

    2. Re:SSDs by hairyfeet · · Score: 2

      I can back this up, as I have a couple of "gamer" customers (which you can replace "gamer" with "must spend stupid amounts of money trying to stay atop the leaderboards") and when they brought in these new "top o' the line" SSDs I ran a few informal tests, boot times, game load times, basic shit....honestly you couldn't tell without a stopwatch, the new ones were so close to the 2 year old SSD I have in the shop it wasn't even funny.

      I have to wonder if we are getting to the point the drive speed just isn't a factor, that the other components like CPU, GPU, and RAM will be bottlenecking before the drive, because no matter how faster you get the data off the drive you still gotta process it.

      --
      ACs don't waste your time replying, your posts are never seen by me.
    3. Re:SSDs by DigiShaman · · Score: 2

      840 EVO by chance? There's a confirmed bug (with firmware update and reconditioning process) that will slow an 840 EVP to a crawl. I've personally seen it happen with several laptops recently upgraded. Once I applied the update, performance resumed back to original spec. And, these were full from anywhere from 60% to 80%; didn't matter much. Link below for update

      Samsung SSD 840 EVO Performance Restoration Software

      --
      Life is not for the lazy.
    4. Re:SSDs by AcquaCow · · Score: 2

      This is because you get stuck leaving the CPU to handle all the context switching between virtual block storage in DRAM and memory. The CPU has to copy data out of block and into memory before it can actually use it, so by making a ram disk you end up giving the CPU 2-4x the amount of work to do for what should be a DMA read/write, which would normally be offloaded.

      Also, your reads from your game are going to be single-threaded, and a single read/write thread is going to be pretty slow.

      --

      up 12 days, 22:30, 2 users, load averages: 993.20, 994.21, 994.56
      *makes note to limit user processes...
  4. Blame the game developers by 0123456 · · Score: 4, Insightful

    Since so many games make you sit through crappy videos, copyright screens and other garbage for thirty seconds while they start up, or at least make you hit a key or press a mouse button to skip them and that damn 'Press Any Key To Start' screen that they couldn't even take five minutes to remove when porting from a console, faster load time is pointless once you've eliminated the worst HDD delays.

  5. ISTR hearing something about that... by Just+Some+Guy · · Score: 4, Insightful

    A guy named Amdahl had something to say on the subject. SSDs excel at IOPS, but that buys you little if you're not IOPS-constrained.

    Examples of things that eat operations as fast as you can throw them at 'em: databases, compilation, most server daemons.

    Examples of things that couldn't care less: streaming large assets that are decompressed in realtime, like audio or video files. Loading a word processing document. Downloading a game patch. Encoding a DVD. Playing RAM-resident video games.

    It should be a shock to roughly no one that buffing an underused part won't make the whole system faster. I couldn't mow my lawn any faster if the push mower had a big block V8, nor would overclocking my laptop make it show movies any faster.

    TL;DR non-IO-bound things don't benefit from more IO.

    --
    Dewey, what part of this looks like authorities should be involved?
    1. Re:ISTR hearing something about that... by m.dillon · · Score: 2

      Actually, large compiles use surprisingly little actual I/O. Run a large compile... e.g. a parallel buildworld or a large ports bulk build or something like that while observing physical disk I/O statistics. You'll realize very quickly that the compiles are not I/O constrained in the least.

      'most' server demons are also not I/O constrained in the least. A web server can be IOPS-constrained when asked to load, e.g. tons of small icons or thumbnails. If managing a lot of video or audio streams a web server typically becomes network-constrained but the IOPS will be high enough to warrant at least a SATA SSD and not a HDD.

      Random database accesses are I/O constrained if not well-cached in ram, which depends on the size of the database too, of course. Very large databases which cannot be well cached are the best suited for PCIe SSDs. Not a whole lot else.

      -Matt

    2. Re:ISTR hearing something about that... by Just+Some+Guy · · Score: 2

      On a PC environment when you've got multiple browser windows open, IRC, email client, etc. getting constrained for IOPS is easier than expected.

      An off-the-shelf SATA 840 EVO SDD hits 98,000 read IOPS, and all those tasks you mention added together wouldn't hit more than 1% of that. They're the very definition of network bound operations. The average email in my IMAP spool right now is 43KB and would take 11 4KB operations to completely read from or write to storage. Browsers site there idle 99.9% of the time. IRC? Not that I've ever seen.

      Do it in a real world environment, and I'm willing to bet PCIe will show it's worth. I don't think that games will run any faster than the baseline results of no load, but I'm willing to guess it'll do better than the SATA equivalents.

      I haven't bothered to look at their methodology but I tentatively agree with their conclusion: almost no desktop users would be able to tell the difference. I mean, even a HDD benching at 103 read IOPS seems spritely for most use cases. A SATA SSD working 950 times faster is as close to instantaneous as most desktop uses could ever hope for.

      --
      Dewey, what part of this looks like authorities should be involved?
    3. Re:ISTR hearing something about that... by LordLimecat · · Score: 3, Insightful

      IOPS are like cores: for any one single task, more doesnt mean faster. But in the real world, on a multitasking OS, the more you have the better things will be and the fewer times you'll ever be stuck waiting on your PC to stop thrashing.

  6. Not surprising by m.dillon · · Score: 4, Informative

    I mean, why would anyone think images would load faster? The cpu is doing enough transformative work processing the image for display that the storage system only has to be able to keep ahead of it... which it can do trivially at 600 MBytes/sec if the data is not otherwise cached.

    Did the author think that the OS wouldn't request the data from storage until the program actually asked for it? Of course the OS is doing read-ahead.

    And programs aren't going to load much faster either, dynamic linking overhead puts a cap on it and the program is going to be cached in ram indefinitely after the first load anyway.

    These PCIe SSDs are useful only in a few special mostly server-oriented cases. That said, it doesn't actually cost any more to have a direct PCIe interface verses a SATA interface so I these things are here to stay. Personally though I prefer the far more portable SATA SSDs.

    -Matt

  7. Re:Latency vs bandwidth by bored · · Score: 2

    Gosh, stupid html tags ate most of my posting. Anyway here it is.

    I don't understand why people still don't understand the difference between latency and bandwidth, and the fact that a huge amount of the desktop IO load is still less than 4k with a queue depth of basically 1.

    If you look at many of the benchmarks you will notice that the .5-4k IO performance is pretty similar for all of these devices and that is with deep queues. Why is that? Because the queue depth and latency to complete a single command dictate the bandwidth. So you either need deeper queues or lower latency to go faster at those block sizes.

    So the latency on PCIe is not that much better, but the queue depth can be much deeper than what is possible with a normal AHCI controller. This helps a lot with benchmarks, but not so much for a single user.

    Anyway, boot times, and general single user performance is bottle necked mostly by latency. Especially when the throughput of larger transfers is greater than a few hundred MB/sec. So, the pieces large enough to take advantage of the higher bandwidth is a smaller (and growing smaller) portion of the pie.

    Next time you start your favorite game look at the CPU/DISK IO. Its likely the game never gets anywhere close to the max IO performance of your disk, and if it does its only for a short period.

    Anyway, its like multicore, beyond a fairly low core count most desktop type operations are better off with faster CPU's rather than more of them.

    And just like desktop benchmarks, the guys running benchmarks seem lothe to heavily weigh single thread operations, or queue depth 1 1k IO loads in the overall performance picture even though its a large portion of actual system performance running everyday tasks.

  8. Re:why? by TheGratefulNet · · Score: 2

    sata has overhead of the, well, sata and scsi layers.

    the pci-e ssd stuff is going to be based on NVMe and that cuts thru all the old layers and goes more direct. its also network-able (some vendors).

    this is really NOT for consumers, though. consumers are just fine with ssd on sata ports.

    --

    --
    "It is now safe to switch off your computer."
  9. Is this a big surprise? by fuzzyfuzzyfungus · · Score: 4, Informative

    The PCIe devices are faster; but (since they also tend to be either substantially similar to SATA devices; but packaged for the convenience of OEMs who want to go all M.2 on certain designs and clean up the mini-PCIe/SATA-using-mini-PCIe's-pinout-for-some-horrible-reason/mini-SATA/SATA mess that crops up in laptops and very small form factor systems; or tend to be markedly more expensive enterprise oriented devices that focus on IOPS) it isn't clear why you'd expect much improvement on application loading workloads.

    SSDs are at their best, and the difference between good and merely adequate SSDs most noticeable, under brutal random I/O loads, the heavier the better. Those are what make mechanical disks entirely obsolete, cheap SSD controllers start to drop the ball, and more expensive ones really shine. Since application makers generally still have to assume that many of their customers are running HDDs(plus the console ports that may only be able to assume an optical disk and a tiny amount of RAM, and the mobile apps that need to work with cheap and mediocre eMMC flash), they would do well to avoid that sort of load.

    HDD vs. SSD was a pretty dramatic jump because even the best HDDs absolutely crater if forced to seek(whether by fragmentation or by two or more programs both trying to access the same disk); but there aren't a whole lot of desktop workloads where 'excellent at obnoxiously seeky workloads' vs. 'damned heroic at obnoxiously seeky workloads' makes a terribly noticeable difference. Plus, a lot of desktop workloads still involve fairly small amounts of data, so a decent chunk of RAM is both helpful and economically viable. Part of the appeal of crazy-fast SSDs is that the cost rather less per GB than RAM does, while not being too much worse, which allows you to attack problems large enough that the RAM you really want is either heroically expensive or just not for sale. On the desktop, a fair few programs in common use are still 32 bit, and much less demanding.

  10. Re:Latency vs bandwidth by m.dillon · · Score: 5, Interesting

    That's isn't correct. The queue depth for a normal AHCI controller is 31 (assuming 1 tag is reserved for error handling). It only takes a queue depth of 2 or 3 for maximum linear throughput.

    Also, most operating systems are doing read-ahead for the program. Even if a program is requesting data from a file in small 4K read() chunks, the OS itself is doing read-ahead with multiple tags and likely much larger 16K-64K chunks. That's assuming the data hasn't been cached in ram yet.

    For writing, the OS is buffering the data and issuing the writes asynchronously so writing is not usually a bottleneck unless a vast amount of data is being shoved out.

    -Matt

  11. Re:It all depends on the workload... by slinches · · Score: 2

    Booting from PCIe is not well supported at this point and that may be interfering with the boot times. As for the game loading benchmark results, these drives are usually used for high speed working file space in servers/workstations (e.g. latency critical databases, video editing, scientific computing). If you aren't trying to solve an I/O bottleneck problem for a specific application, PCIe SSDs probably aren't what you're looking for. And even if you are, you have to know exactly what type of I/O is critical for your application because the different models target different needs (various combinations of IOPS, sequential speeds, read/write balance, write endurance).

    --
    Knowledge Brings Fear
  12. That's because they're not much faster by Solandri · · Score: 5, Insightful

    Slashdot has covered a bunch of new PCI Express SSDs over the past month, and for good reason. The latest crop offers much higher sequential and random I/O rates than predecessors based on old-school Serial ATA interfaces.

    That's just it. Their speeds are not "much higher." They're only slightly faster. The speed increase is mostly an illusion created by measuring these things in MB/s. Our perception of disk speed is not MB/s, which is what you'd want to use if you only had x seconds of computing time and wanted to know how many MB of data you could read.

    Our perception of disk speed is wait time, or sec/MB. If I have y MB of data I need read, how many seconds will it take? This is the inverse of MB/s. Consequently, the bigger MB/s figures actually represent progressively smaller reductions in wait times. I posted the explanation a few months ago, the same one I post to multiple tech sites. And oddly enough Slashdot was the only site where it was ridiculed.

    If you measure these disks in terms of wait time to read 1 GB, and define the change in wait time from a 100 MB/s HDD to a 2 GB/s NVMe SSD as 100%, then:

    A 100 MB/s HDD has a 10 sec wait time.
    A 250 MB/s SATA2 SSD gives you 63% of the reduction in wait time (6 sec).
    A 500 MB/s SATA3 SSD gives you 84% of the reduction in wait time (8 sec).
    A 1 GB/s PCIe SSD gives you 95% of the reduction in wait time (9 sec).
    The 2 GB/s NVMe SSD gives you 100% of the reduction in wait time (9.5 sec).

    Or put another way:

    The first 150 MB/s speedup results in a 6 sec reduction in wait time.
    The next 250 MB/s speedup results in an extra 2 sec reduction in wait time.
    The next 500 MB/s speedup results in an extra 1 sec reduction in wait time.
    The next 1000 MB/s speedup results in an extra 0.5 sec reduction in wait time.

    Each doubling of MB/s results in half the reduction in wait time of the previous step. Manufacturers love waving around huge MB/s figures, but the bigger those numbers get the less difference it makes in terms of wait times.

    (The same problem crops up with car gas mileage. MPG is the inverse of fuel consumption. So those high MPG vehicles like the Prius actually make very little difference despite the impressively large MPG figures. Most of the rest of the world measures fuel economy in liters/100 km for this reason. If we weren't so misguidedly obsessed with achieving high MPG, we'd be correctly attempting to reduce fuel consumption by making changes where it matters the most - by first improving the efficiency of low-MPG vehicles like trucks and SUVs even though this results in tiny improvements in MPG.)

  13. SSD's and seek times, multiple operations. by phorm · · Score: 2

    Examples of things that couldn't care less: streaming large assets that are decompressed in realtime, like audio or video files. Loading a word processing document. Downloading a game patch. Encoding a DVD. Playing RAM-resident video games.

    Yes, any one of those things. However, if you're downloading a game patch while playing a game and maybe playing some music in the background, at the same time as perhaps download a few torrents or copying files, whatever... SSD's kick ass.

    Why? Because singularly those things aren't IO-bound, but once you start doing 2+ things that require semi-hefty disk access then on an HDD you're going to have a lot of thrashing and speed goes out the window.

  14. Re:Access time latency by m.dillon · · Score: 2

    Huh? This sounds like nonsense. Operating systems already cache frequently used data in ram.

    -Matt

  15. Re:This is the long way to say... by Microlith · · Score: 2

    We've reached the limits of the flash technology which drives both the SATA and PCIe versions of the storage device

    Individual chips have an upper cap on speed, but that's why every SSD on the market accesses numerous devices in parallel. All you need to do to make an SSD go faster is add more NAND devices in parallel and a slightly faster controller to support them.

    Flash is not all that fast and it quickly becomes the limiting factor on how fast you can read data out of it.

    Maybe if you have no idea what you're talking about.