@inproceedings{TamimiBernhardtStocketal.2023, author = {Tamimi, Sajjad and Bernhardt, Arthur and Stock, Florian and Petrov, Ilia and Koch, Andreas}, title = {NVMulator: a configurable open-source non-volatile memory emulator forĀ FPGAs}, booktitle = {Applied reconfigurable computing : Architectures, tools, and applications; 19th International Symposium, ARC 2023, Cottbus, Germany, September 27-29, 2023, proceedings (LNCS ; 14251)}, isbn = {978-3-031-42920-0}, issn = {0302-9743}, doi = {10.1007/978-3-031-42921-7_3}, institution = {Informatik}, pages = {35 -- 50}, year = {2023}, abstract = {Near-Data Processing (NDP) is a key computing paradigm for reducing the ever growing time and energy costs of data transport versus computations. With their flexibility, FPGAs are an especially suitable compute element for NDP scenarios. Even more promising is the exploitation of novel and future non-volatile memory (NVM) technologies for NDP, which aim to achieve DRAM-like latencies and throughputs, while providing large capacity non-volatile storage. Experimentation in using FPGAs in such NVM-NDP scenarios has been hindered, though, by the fact that the NVM devices/FPGA boards are still very rare and/or expensive. It thus becomes useful to emulate the access characteristics of current and future NVMs using off-the-shelf DRAMs. If such emulation is sufficiently accurate, the resulting FPGA-based NDP computing elements can be used for actual full-stack hardware/software benchmarking, e.g., when employed to accelerate a database. For this use, we present NVMulator, an open-source easy-to-use hardware emulation module that can be seamlessly inserted between the NDP processing elements on the FPGA and a conventional DRAM-based memory system. We demonstrate that, with suitable parametrization, the emulated NVM can come very close to the performance characteristics of actual NVM technologies, specifically Intel Optane. We achieve 0.62\% and 1.7\% accuracy for cache line sized accesses for read and write operations, while utilizing only 0.54\% of LUT logic resources on a Xilinx/AMD AU280 UltraScale+ FPGA board. We consider both file-system as well as database access patterns, examining the operation of the RocksDB database when running on real or emulated Optane-technology memories.}, language = {en} }