Photo Credit: Martin Grund


Hi, my name is Martin. Currently, I'm a post-doctoral researcher at the eXascale Infolab in Switzerland and my research topic is in-memory databases. When I'm not researching databases, I'm a happy father of two and open source coder.

Most of the Projects I'm working on in my spare time are tools. Optimizing work-flows is of great importance for me.

Latest Posts

  • Emacs Mode for Sublime Text 2

    For quite some time now, I’ve been using Sublime Text 2 as my daily editor and I have to admit I’m really happy with this choice. The only thing that was bothering me, was that while the keyboard shortcuts are extensive they did not match my preferred way. Basically what I was missing was a possibility to use the Emacs shortcuts that I know and love.

  • Time to change

    It’s been a while since anything happened here on my page, so I thought I need to give it some change and so I moved most of my old blog posts from to this new location. Basically nothing will change.

  • Your Style ? Stylish presentations without Powerpoint or Keynote
    For the last few days I've been investigating possibilities to create presentations that will output a mixture of HTML / CSS / JS and are created by either using plain HTML or some kind of markup language. The general idea behind this approach is that for 90% of the presentation you create you will follow a simple set of styles and you will not need some special visualizations.
  • C++11 / C++0x Documentation

    You want to improve your “old” C++ code base by allowing new features or bug fixes to be enhanced with C++11? The questions you will face on the way are manifold. First, what exactly allows me C++11 to do? Where is some documentation? What is the purpose of those features. Compared to languages like Ruby or Python the C++ standard library and language itself is not too well documented online.

  • Easy parsing of sysfs to get CPU topology data using libsystopo

    When you are working with main memory it is crucial to make sure that all the data structures are correctly sized and aligned. A typical approach is to create blocks of data that are processed independently. For the developer, the question is how large such blocks should be? The answer is that those blocks should always be either cache sized.