I recommend taking a look at the special issue  on ‘Integrating Hebbian and Homeostatic plasticity’ which was just published in Phil Trans of the Royal Society B. You can find the table of contents at http://rstb.royalsocietypublishing.org/content/372/1715. The issue is based on a fruitful discussion meeting in London in April 2016 and combines multiple contributions from both theory and experiment. It offers an excellent overview of the state of the art in research on Hebbian and homeostatic plasticity.

The issue also includes a paper by Wulfram and myself and our take on the role of negative feedback processes on different timescales. In this paper we suggest a division of labor between rapid compensatory processes (RCP) which act on short timescales, which are comparable with the timescales of plasticity induction, and homeostatic mechanisms which act on homeostatic timescales of hours or days.

Tagged with: , , , ,

I just enjoyed reading Romain Brette’s post about how to move towards a better scientific publication system. Maybe you will find it interesting too.

My new year resolution : to help move science to the post-journal world


Tagged with: ,

The stable Auryn version 0.8 is available now. The new version comes with extensive refactoring under the hood an now supports complex synapse models and improved vectorization for neuron models. The new version is available on github

Tagged with: , ,

Last week I put up a release branch for Auryn v0.8 which is currently in alpha stage. The code can be found here https://github.com/fzenke/auryn/releases

The main perks: Further increase of performance. Class-based state vectors for neuronal and synaptic states for ease of code writing and readability.

Increased performance

The main changes from Auryn v0.7 to Auryn v0.8.0-alpha happened under the hood. Auryn’s core vector class for state updates and its core class for MPI communication between nodes were both completely rewritten. This increase Auryn’s performance even further by about 10%. Here are the results of a series of benchmarks on  how execution speed increased with development:

Ease of writing code

By re-factoring Auryn’s state vector class which is the heart of neuronal and synaptic updates, not only performance was increased, but also the code has now become more readable and easier to write. Before, vector operations were based on a functional framework inherited from older versions which still used the GSL. To implement an exponential decay of an AMPA conductance stored in a state vector g_ampa for instance you had to write

auryn_vector_float_scale( mul, g_ampa);

where mul is a float and g_ampa is a the vector containing all AMPA conductances of the NeuronGroup. Now, state vectors are classes with their own functions. The above expression now reduces to:

g_ampa->scale( mul );

Or similarly, to compute the current caused by an inhibitory conductance up to know you had to write:


which first computes the distance from the inhibitory reversal potential (e_rev), stores it in the state vector t_inh and then multiplies it with the conductances in g_gaba. In Auryn v0.8 the same is achieved by


Don’t worry, though. All the legacy functions will also still work.

New devices, models and perks

In addition to that Auryn 0.8 comes with a bunch of nice new tools. For instance there is a BinaryStateMonitor now. Both, BinaryStateMonitor and StateMonitor can now compress their output if desired. Moreover, I laid out the basis for supporting AVX instructions in the future. There are new neuron models available such as the Izhikevich model and plenty of more …

Go take a look! I hope you like it.


Tagged with: ,

I will have a poster at the Discussion Meeting “Integrating Hebbian and homeostatic plasticity” in London next week April 19–20, 2016

I am happy about the opportunity to present a poster which summarizes the key insights I gained during my PhD at an exciting looking discussion meeting “Integrating Hebbian and homeostatic plasticity” organized by Kevin Fox and Michael Stryker at the Royal Society in London.


Tagged with: , ,

… just got a lot easier with the new AurynVector class.

Because Auryn originally used GSL vectors (which predates C++) it was still using non object oriented syntax for vector data types internally. That made writing code for new neuron models particularly ugly and also hard to read. People who were struggling with this will be happy to hear that this now just got a little easier.

In the current development version of Auryn’s code I re-factored the central vector data type (auryn_vector_float) to a class template type AurynVectorFloat which now brings its own constructor and methods to manipulate it. I was also happy to see that performance was not notably affected by the change. In time I might even be able to drop the explicit use of SIMD instructions. For the new code the current GNU C++ compiler detects automatically where its use is advantageous. The old legacy code will still remain in Auryn’s code base for a while for backward compatibility. For details see



Tagged with:

The new stable Auryn version is now online

After a couple of months of testing, Auryn 0.7.0 is now available for download. The new version now finally uses cmake throughout and can thus be built on Windows PCs and Macs as well without a hassle. Enjoy!


Tagged with:

This concludes our Special Issue in Frontiers Computational Neuroscience

Cristina, Matt and me are happy to successfully conclude the Frontiers Research Topic that we have organized over the past year. I would like to express my thanks to all the authors and reviewers who made this endeavor happen. We have summarized the main outcomes of this work in our editorial article which is now online.