4.4 Memory Consumption Overhead
We measure the FTL memory consumption for main data
structures of each protocol and show the composition of
the memory overhead in Figure 17. Except for the FTL
mapping table and block management data shared in
all protocols, the specific memory breakdown of each
protocol varies. SCC and BPCC have higher memory
overhead, and the others have low memory overhead.
Active TxTable is a shared data structure to keep the
metadata of active transactions in all protocols except
AW. It consumes 0.31MB of memory. In addition, SCC
keeps the uncommitted pages in memory, which consumes
3.60MB of memory. BPCC maintains the straddle
responsibility set, consuming 5.51MB of memory. In contrast,
MHL-D/MHL-M and LightTx keep only the live
transaction IDs, which consumes only several kilobytes.
Specific memory consumption of each protocol becomes
more significant when the demand-based FTL
(DFTL) technique [31] is used to reduce the memory
consumption of the mapping table. DFTL leverages the
phenomenon of mapping locality. A small portion of
the mapping table can be cached in DRAM with little
performance loss while a large portion is kept in the
flash media. LightTx and MHL-D can use this kind of
mapping table, and SCC and BPCC can also be easily
extended with such a page mapping table. In contrast,
the log-based FTL used by AW and MHL-M can hardly
leverage the mapping locality to reduce the memory
usage of mapping table. Block management can be optimized
in a similar way. Therefore, we conclude that the
memory consumption of previous protocols (AW, SCC
and BPCC) and MHL-M can be significant while LightTx
and MHL-D achieve low memory overhead.
4.5 Mapping Persistence Overhead
The goal of mapping persistence is to reduce the recovery
time. In this section, we will evaluate the recovery
time as well as the mapping persistence overhead.
Recovery Time. As shown in Figure 18, the recovery
time in SCC/BPCC is 6.957 seconds, while that in