Be part of creating a new software ecosystem and fully utilize Samsung’s latest memory and storage products
Open Memory Platform Development Kit (OpenMPDK)
Be part of creating a new software ecosystem and fully utilize Samsung’s latest state-of-the-art memory and storage products now.
No more waiting for exhaustive implementation process from OEM host vendors.
A Software Platform for Storage Solutions
Open Memory Platform Development Kit (OpenMPDK) is a collection of softwares bridging the gap between host applications and devices: user drivers, APIs, application- specific user level file systems, sample applications, test suits, management and others (Refer to the figure below).
OpenMPDK is offered via Github.com (since May 2018) as an “open source.” Being “open” means that anyone can make a contribution with his/her new ideas or enhancements, and the exiting reference software can continuous evolve in its ecosystem. As a result, a better performing and more optimized system will emerge while shortening the development and integration time.
Reference Software Download Links
Please visit OpenMPDK section on Github (https://github.com/OpenMPDK) and download the reference software. Once integration and testing are completed, your system product may be released per your needs.
uNVMe Driver (https://github.com/OpenMPDK/uNVMe)
A user space NVMe driver which can reduce overhead and provide lower latency than kernel driver. Samsung will upload reference softwares to use uNVMe driver on the “uNVMe” repository of Github. (FIO, RocksDB, etc.)
HPB (Host-aware Performance Booster) Driver (https://github.com/OpenMPDK/HPBDriver)
SW-centric solution which transfers HPB entry through COMMAND/RESPONSE UPIU, bringing UFS Performance improvement by using Host DRAM.
OpenMPDK for KV SSD (https://github.com/OpenMPDK/KVSSD)
With a different interface from conventional SSDs, KV SSD requires modified host software to demonstrate its full potential. Device drivers and other tools such as KvRocks, KV Bench, and KV Emulator are included in the development kit.