Member-only story

While we cannot expect the performance of our SSD simulation to be anywhere close and consistent as if we would be running the firmware on a hardware ASIC platform, it is still quite depressing to see how slow it is currently. The following captures the benchmark for the master branch at commit d6471b4*.

Let’s see if there’s anything we could do to get something faster than just under 1MiB/s bandwidth. Furthermore, when we talk about performance improvements for the firmware and algorithms, it might be easier to realize the difference if we can lift some of the bottlenecks that are inherent with the simulation.

One simple and intuitive thing to do is to profiling. Let’s fire-up Visual Studio, it already has a useful tool we need for this. I’m using Visual Studio Community 2017.

Going straight to the TEST_F(SimpleFtlTest, BasicWriteReadBenchmark) in the SimpleFtl.cpp file. We’ll first do a high-level profile so set a breakpoint right before we start to issue commands and another at the point where all command completions are processed.

Figure 2

--

--

No responses yet