Creating pmem.io

Posted August 25, 2014         Next post »

The pmem project in GitHub has been created as an open source project focused on persistent memory programming. Everything on this web site and the associated GitHub repositories is open source under the “three-clause” BSD license.

Some educational Linux examples are included, which demonstrate the SNIA NVM programming model and some of the interesting features and challenges associated with persistent memory.

The team’s initial focus is the Linux NVM Library which will provide useful APIs for memory allocation, transactions, etc. built on top of the NVM programming model.

This site includes a pmem blog based on Jekyll so over time we can write up our experiences working with persistent memory programming. There are many ways to get involved and we welcome your contributions!

GitHub Pages and Jekyll

Since we will surely keep our focus on persistent memory and immediately forget the steps taken to create this site, here’s a quick summary for reference. First, any GitHub user or project area can have GitHub Pages associated with them with almost no effort. We simply created a repository named pmem.github.io to hold the pages. GitHub pages use Jekyll automatically, but it is convenient to install it locally for previewing content before pushing changes to the repo. On the Debian-based distro known as CrunchBang, these steps did the trick:

$ sudo apt-get install ruby ruby-dev node python-pygments
$ sudo gem install jekyll
$ sudo gem install jekyll-mentions

After creating the appropriate Jekyll files in the local copy of the repo, we used this command:

$ jekyll serve --watch

This watches for changes, re-generating the web pages as necessary, and provides the content for preview at the local URL http://0.0.0.0:4000/.

The rest of the details (like how to write a _config.yml or create templates or includes) can all be found in the Jekyll documentation or you can look at the source for this web site for details.



Posted by @andyrudoff         Next post »