Dennis Bautembach

PhD

About Me

At the age of 10 I was gifted my first PC which included a Basic compiler. I’ve been coding ever since.

Contents:

Publications/Projects

Simulating SNNs on Multiple GPUs - When a Microsecond is an Eternity

Unpublished PhD Thesis

In my PhD thesis I summarize and elaborate on my research work of the last three years, including never-before-released (implementation) details. If you want to learn how to write high-performance, parallel SNN simulators from scratch on GPGPU hardware, this will be of interest to you.

Resources:

Even Faster SNN Simulation with Lazy+Event-driven Plasticity and Shared Atomics

10.1109/HPEC49654.2021.9622805

We present two novel optimizations for SNN simulation. The first, called “shared memory-based spike delivery” is a blocking scheme that makes it possible to load neurons piecewise into shared memory and perform/deliver all updates/spikes there. The second is a variation of event-driven plasticity called “lazy event-driven plasticity” which performs fewer updates and in a more memory-efficient way compared to event-driven plasticity. Both optimizations combined sped up Spike by more than 2x, re-establishing ourselves as the fastest SNN simulator.

Resources:

Multi-GPU SNN Simulation with Static Load Balancing

10.1109/IJCNN52387.2021.9533921

We present the first SNN simulator to scale to 8 GPUs, allowing you to simulate larger models and in less time than ever before. Features include:

  • State of the art performance (incl. lightning fast setup)
  • Ability to define custom models in native C++
  • Modern, user-friendly API
  • No 3rd-party dependencies (except CUDA)

Resources:

Faster and Simpler SNN Simulation with Work Queues

10.1109/IJCNN48605.2020.9206752

“Spice” is a state of the art spiking neural network simulator written in C++ and CUDA. It

  • is up to 3x faster than the competition,
  • allows you to specify your own models through a modern and intuitive API (you simply inherit from a model base class and override callbacks),
  • builds out of the box without any 3rd-party dependencies (apart from CUDA), and
  • does not involve any proprietary compilation steps or domain-specific languages.

Resources:

Fully interactive robotics course

github.com/denniskb/hy475

As part of my TA duties I designed a fully interactive online course on robotic navigation. It allows you to code and simulate robots directly in your browser using JavaScript.

Student testimonials:

  • “I really felt that somebody cared about me as a student after all these years of studies.”
  • “I have to say you make the most interesting assignments. Most of the assignments of other courses do not have any meaning.”
  • “a big thanks for your help … no one had ever spend so much time … and actually helped us with immediate feedback, so please keep it up for the next years.”

A Comparative Study of Matrix Completion and Recovery Techniques for Human Pose Estimation

10.3390/technologies6040097

We estimate human poses by treating them as missing/incomplete rows in a “pose database” matrix and calculating missing entries via matrix completion.

Paper

Scalable Real-time Volumetric Surface Reconstruction

10.1145/2461912.2461940

KinectFusion is a well-known 3D scanner powered by Microsoft’s Kinect camera. It has recently found its way into the official Kinect for Windows SDK. While KinectFusion produces very high-quality scans in real-time, it is limited to relatively small spaces.

In this paper we extend KinectFusion with a sparse data structure and streaming, allowing us to scan areas of virtually infinite size while maintaining the quality and performance of the original algorithm.

Resources:

Animated Sparse Voxel Octrees

Unpublished BSc thesis

Voxels date back 20 years. They have many advantages over polygon meshes. However, they always suffered form the lack of a hardware-accelerated rendering pipeline and the infeasiblity of animating them. I tackled this age-old computer graphics problem in my BSc thesis. The (GPU-accelerated) animation technique I developed enables:

  • Skeletal animation of voxels models
  • Rendering of mixed polygon- and voxel-based content.

Resources:

Experience

Bautembach Consulting

Founder

2014

Founded a startup with the goal of bringing realtime 3D reconstruction to mobile phones, which ultimately failed. After bankrupting we open-sourced our protoype.

Consulted VRC on developing their 3D scanning booth “Shun’X”.

Crytek

crytek.com

Research Software Engineer

2013

Research areas:

  • Replacing polygon meshes with volumetric representations to unify the game content creation pipeline (combine modelling, texturing, animation into a single workflow).
  • Non-rigid 3D reconstruction as an alternative to performance capture.

Developed cutscene animation tools for CINEBOX®, a film preproduction software based on the CRYENGINE.

Microsoft Research

Researcher

2012 - 2013

Scaled KinectFusion to scenes of arbitrary size.

Authored “FuSci”, a non-invasive foliage measurement software for the University of Cambridge’s biology department.

siQnet

siqnet.de

Junior Software Developer

2007

Designed a task planning software (“Maschinenbelegung”) for a local fulfillment service in Hamburg.

Created personal and commercial webistes.

Education

University of Crete

PhD Computer Science

2015 - 2021

Area of specialization: Spiking Neural Networks (high-performance simulation on GPGPUs, multi-GPU parallelization, applications). See publications/projects for more.

University of Hamburg

BSc Computer Science

2007 - 2011

In my BSc thesis, tackled the decade-old Computer Graphics problem of animating voxels.

Co-developed a realtime strategy game called Ink Wars.