/
Lava v0.1.0 has been released!

Lava v0.1.0 has been released!

Today, Intel’s Neuromorphic Computing Lab is releasing the first version of the

Lava Software Framework for Neuromorphic Computing!

Our first release, at GitHub - lava-nc/lava: A Software Framework for Neuromorphic Computing comes with the core Magma layer of Lava and an updated Lava project website at https://lava-nc.org/ including…

  • An introduction to the Lava architecture

  • A getting started section with install instructions and a first set of foundational tutorials

  • API documentation

  • An initial developer guide to kick-start this open-source project.

What can you do with it?

This first release of Lava introduces its high-level, hardware-agnostic API for developing algorithms of distributed, parallel, and asynchronous processes that communicate with each other via message-passing over channels. The API is released together with the Lava compiler and runtime which together form the Magma layer of the Lava software framework.

Our initial version of Magma allows you to familiarize yourself with the Lava user interface and to build first algorithms in Python that can be executed on CPU without requiring access to physical or cloud based Loihi resources.

The Lava architecture overview published on the Lava project page provides an introductory—yet detailed—look under the hood of the Lava architecture to explain some of its defining features and capabilities. This summary is accompanied by several foundational guides and tutorials that walk you step by step through the concepts behind Lava. Lava’s documentation is growing steadily, allowing you to dive deeper into the code base once you are ready.

What’s still missing?

A lot! We are on our path to migrating our internal comprehensive Lava code base into the open-source domain. The most important and most anticipated features, which allow running Lava on neuromorphic HW such as Intel Loihi, will still need a few more weeks to be ready.

In the meantime, we will complete the release of the hardware-agnostic Python user interface to expose the full range of functional capabilities first. In parallel, we are getting ready to release several algorithm libraries on deep learning, constraint optimization and dynamic neural fields.

What comes next?

The sequence of release stages has been detailed in our release plan that we published earlier this month. Our next release in about 2 weeks will contain a first drop of Lava’s Deep Learning library called lava-dl, an expanding library of generic processes for algorithm development, as well as additional API features and more fundamental tutorials going deeper into Lava’s architectural concepts. We expect to provide support for Lava execution on Intel Loihi towards the end of the year.

Go and get started!

To get started with development in Lava, read the architectural overview, follow along with the tutorials and try building your own Lava processes.

We hope to hear from you and look forward to your feedback. The best way to contact us is by starting a discussion on Github or by filing issues that cover bugs you discover or new features that you would like to see in Lava.

If you would like to take your engagement to the next level, get involved in the Intel Neuromorphic Research Community by contacting us via inrc_interest@intel.com. This community is open to researchers from academia, government labs, corporations, and startups if you are ready to propose a concrete project requiring access to Loihi 1 or 2 resources.

Don’t forget to take a look at the Lava developer guide or reach out to us via if you would like to contribute to Lava in the future and stay tuned for our upcoming releases.

Release notes:

New Features and Improvements

  • New Lava API to build networks of interacting Lava processes

  • New Lava Compiler to map Lava processes to executable Python code for CPU execution (support for Intel Loihi will follow)

  • New Lava Runtime to execute Lave processes

  • A range of fundamental tutorials illustrating the basic concepts of Lava

Bug Fixes and Other Changes

  • This is the first release of Lava. No bug fixes or other changes.

Thanks to our Contributors

Intel Corporation: Gabriel Fonseca Guerra, Joyesh Mishra, Harry Liu, Philipp Plank, Danielle Rager, Mathis Richter, Sumedh Risbud, Yashwardhan Singh, Philipp Stratmann, Marcus Williams, Andreas Wild

Breaking Changes

  • This is the first release of Lava. No breaking or other changes.

Known Issues

  • No support for Intel Loihi yet.

  • Multiprocessing and channel-based communication not very performant yet.

  • Virtual ports for reshaping and concatenation are not supported yet.

  • No support for direct memory access via RefPorts yet.

  • Connectivity from one to many or from many to one port not supported yet.

  • No support for live state monitoring yet.

  • Still limited API documentation.

Related content