A host-based framework that transparently extends the GPU addressable global memory space beyond the host memory using NVM-backed data pointers
DRAGON is a host-based framework that transparently extends the GPU addressable global memory space beyond the host memory using NVM-backed data pointers. DRAGON allows storing the binary memory dump of application data in a file on NVM and mapping it to the global memory space of the GPU. This enables GPU kernels to access the data via regular load/store instructions, similar to how mmap() operates in CPUs.
To people who reach this page from our paper:
My university email address, which is written on the paper, will be expired soon. You can contact me via "pak.markthub+dragon at gmail dot com", or by opening an issue on GitHub.
Pak Markthub
This project composes of multiple components. To install DRAGON, follow the instructions in the INSTALL.md file. To compile or run provided example applications, see the README.md file in the examples folder.
Move to private repo for now.
All features are tracked in branch dev.
DRAGON-DIRECT
DRAGON-Resident
For the versions available, see the tags on this repository.
This project is licensed under the MIT License - see the LICENSE file for details
This project was partially supported by JST CREST Grant Numbers JPMJCR1303 (EBD CREST) and JPMJCR1687 (DEEP CREST), and performed under the auspices of Real-World Big-Data Computation Open Innovation Laboratory (RWBC-OIL), Japan. This project was also supported in part by Oak Ridge National Laboratory ASTRO Program sponsored by the US Department of Energy and administered by the Oak Ridge Institute for Science and Education, USA.
This material is based upon work supported by the U.S. Department of Energy, Office of Science, Office of Advanced Scientific Computing Research, under contract number DE-AC05-00OR22725. This manuscript has been authored by UT-Battelle, LLC, under contract DE-AC05-00OR22725 with the US Department of Energy (DOE). The US government retains and the publisher, by accepting the article for publication, acknowledges that the US government retains a nonexclusive, paid-up, irrevocable, worldwide license to publish or reproduce the published form of this manuscript, or allow others to do so, for US government purposes. DOE will provide public access to these results of federally sponsored research in accordance with the DOE Public Access Plan (http://energy.gov/downloads/doe-public-access-plan).
nvmgpu is the former name of this project. We use nvmgpu and dragon interchangeably throughout the source code.
If you want to reproduce the results we reported in our SC18 paper DRAGON: Breaking GPU Memory Capacity Limits with Direct NVM Access, look at the README.md file in the examples folder for the up-to-dated instructions.
If you use this work, please cite our paper.