Porting A Java-Based Brain Simulation Software To C++

Lukas Breitwieser, Roman Bauer, Marco Manca, Fons Rademakers · INFM-OAR (INFN Catania) · 2015

Abstract This report describes the process of porting the Java-based Brain Simulation Software Cortex3D (Cx3D) to C++. Cx3D was originally developed in Java, which is not ideal for high-performance computing. This is the first step towards the goal to create a software tonbsp;simulate richer and deeper structures of the brain. An iterative porting approach has beennbsp;chosen for this task. This means, that one Java class is translated at each iteration. Afternbsp;the C++ representation of this class has been created, it replaces the Java version. Interfacing C++ code from Java is done via Java Native Interface (JNI). The tool SWIG has beennbsp;used to minimize the amount of boilerplate code that must be written for this interlanguagenbsp;communication. The major benefitnbsp;of this approach is that each iteration results in an executable that can be automatically compared with the outcome of the original simulation.nbsp;This facilitates debugging of the C++ code as the number of added code lines remains manageable. Large parts of the spatial organization layer have already been ported using thisnbsp;procedure. nbsp;/p>

Read the paper · More papers on PaperTik