Monday, September 12, 2011

Solid State Devices (SSDs): PerformanceModeling and Analysis of Flash-based Storage Devices

This paper discusses the black box modeling of SSD devices.

The work extends previous works by coming up with an improved model which performs linear regression, not only on read/write ratio, queue depth, request size, and randomness, but also on write size, read size, write stride, read stride, read randomness, and write randomness. The authors evaluate their models on synthetic I/O traces and 4 real traces, looking for latency, bandwidth, and I/O throughput. Overall, it shows that incorporating the new workload characteristics improve previous models of hard drives significantly and that SSDs are much easier to predict than HDs.

The paper is really great in that it shows a lot of data and a lot of graphs. The authors did a great job capturing the asymmetry between reads/writes to SSD devices through the extra characteristics; the workloads really do capture the different corner cases very well.

It would have been nice if the authors had come up with some use cases to motivate the different workload cases. This could have also expanded into different common setups that people have, like a journaling file-systems or running multiple applications with various I/O needs. It would have been interesting to look at the modeling of SSDs from this high level perspective.

The authors should have mentioned the page sizes for the SSD devices or said that they didn't know.

The steep increase in slope of random writes in Figure 6(c) is truly puzzling. I was under the impression that random and sequential accesses to SSDs are supposed to have similar performance. What could be causing this huge slope? Too bad, the authors didn't talk about it.

It seems, from the results, although prediction of reads are quite good, predictions of writes still need a lot of work. It would have been nice if the authors had included a section that described how future researchers may progress on this problem. What additional characteristics would help better model write performance; perhaps a counter that would count the number of updated pages in the current block. That way the model can be better prepared for block erases and updates.

No comments:

Post a Comment