On 4/24/2015 10:24 PM, Vladimir Panteleev wrote:
On Friday, 24 April 2015 at 08:27:06 UTC, Walter Bright wrote:
http://codecapsule.com/2014/02/12/coding-for-ssds-part-6-a-summary-what-every-programmer-should-know-about-solid-state-drives/


An interesting article. Anyone want to see if there are any modifications we
should make to std.stdio to work better with SSDs? (Such as changing the
buffer sizes.)

This article seems to target operating system authors more than application
programmers, as OS caches will invalidate most application-side changes.

The HN comments are also mostly dismissive of this article:
https://news.ycombinator.com/item?id=9431571



"The high-level optimizations are important: * Choose a good SSD * Read and Write in "page" multiples and "page" aligned * Use lots of parallel IOs (high queue depth) * Do not put unrelated data in the same "page"

A page used to be 4KB, SSDs are now switching to 8KB and will switch to 16KB later on. Just pick a reasonable size around that (16KB if you can do it will last you a while). Don't sweat the page multiples too much, the SSDs will most likely have to handle 4KB pages for a long while due to databases and such so they will keep some optimization around that size anyhow, it will make it easier for them if you use a larger size.

I wouldn't heed any of the advice on single-threading, the biggest performance boost comes from parallelism and writes are anyway buffered by the SSD (a good SSD has a super-cap to have a good sized write cache)."

Reply via email to