

Benchmarking High Performance I/O with SSD for Cassandra on AWS  - riffraff
http://techblog.netflix.com/2012/07/benchmarking-high-performance-io-with.html

======
halayli
> Using sixty threads to write 2GB files at once using 64KB writes, results in
> 1099MBytes/s at 0.06ms service time.

It's not a good idea to scale disk writes using threads when you can use aio.
You've introduced unneeded scheduling and locking penalty from threads.
Additionally, such threads will be accessing and modifying kernel structures
frequently and that's going to cause additional locking inside the kernel.
They'll all be modifying same resources and structures while writing.

~~~
papercruncher
Using async write I/O wouldn't allow them to test the capabilities of the
underlying hardware as writes would return immediately.

Also, sixty threads on such a powerful machine is not really a big deal. Even
though 0.06ms service time seems small, it is large enough such that you won't
have more than a handful of threads competing for CPU resources (they'd
waiting for some I/O completion)

~~~
wmf
You certainly get notified when AIO O_DIRECT writes complete, so it is
possible to benchmark AIO. For example, using fio.

------
spleeyah

        TL;DR
    
        What follows is a more detailed explanation of the benchmark configuration and results. TL;DR is short for "too long; don't read". If you get all the way to the end and understand it, you get a prize...
    

I believe it's "Too Long; Didn't Read"

~~~
jmreid
Ya, they've got it backwards. I was a little confused when the TL;DR was
longer than the first part.

