Blog from June, 2019

We are excited to announce that we will be kicking off a new monthly Intel Neuromorphic Research Community (INRC) Tech Talk Forum!  Please join us for the inaugural INRC Tech Talk Forum to take place on June 26th, 9:00-10:30am PDT. 

The goals of this monthly tech talk forum are to educate the broader INRC community of recent research findings within each INRC project and to deepen collaboration across groups.  Each month we will invite 2 to 3 speakers to give updates on their latest INRC research in a 30 minute presentation in a virtual meeting to allow participation from members across geos.  The audience will include both INRC members and Intel researchers. 

A tentative schedule for upcoming tech talk dates is provided below, please feel free to volunteer to give a tech talk on any of the open dates.  Many thanks to Prof. Sommer and Prof. Michmizos for helping us kick off this series!

Speakers:

Prof. Friedrich Sommer, UC Berkeley

Prof. Konstantinos Michmizos, Rutgers University

Talk titles and abstracts to be updated ahead of the meeting.

When:

Wednesday, June 26th, 9:00-10:30am PDT

Who:

INRC Tech Talks are open to all engaged INRC members. For more information about the engagement process, please see INRC Membership and Engagement Process.

Where:

Event logistics and the skype meeting invitation will be sent to all engaged INRC members. If you would like to sign up to give a tech talk, please email melissa.a.cowan@intel.com.

INRC Tech Talk Forum Schedule:

Date

Time

Speakers

Wednesday, June 26th, 2019

9:00-10:30am PDT

Prof. Friedrich Sommer, UC Berkeley

Prof. Konstantinos Michmizos, Rutgers University

Tuesday, July 30th, 2019

9:00-10:30am PDT

Dr. Christian Tetzlaff, University of Göttingen

Open

Friday, August 30th, 2019

9:00-10:30am PDT

Open

Wednesday, September 25th, 2019

9:00-10:30am PDT

Open

Wednesday, October 16th, 2019

9:00-10:30am PDT

Open

Wednesday, November 20th, 2019

9:00-10:30am PDT

Open

Wednesday, December 18th, 2019

9:00-10:30am PDT

Open

We are pleased to announce the release of NxSDK 0.8.5. The installation files are located at /nfs/ncl/releases.

Please refer to getting started guides within /wiki/spaces/NAP/pages/4522014[also available in nxsdk-apps-0.8.5.tar.gz/docs] for installation instructions as additional steps have been added to the setup. There are few API changes in this release which have been enlisted in the API Changes/Deprecation section below.

The release is available for all participants who have signed the INRC participation agreement and have access to the INRC Cloud.

New Features/Improvements

NxNet

  • Composable networks

  • Connection sharing (i.e. synapse sharing)

  • Following modules have been added under nxsdk_modules (Each module comes with tutorials to demonstrate applications or re-usable feature set)

    • noise filter : Performs noise filtering on a DVS stream.

    • dvs : Provides an interface to DVS sensors. Currently only supports the DAVIS240C.

    • trace injection : A module showing how non-local information can be injected into traces available to the learning rules.

    • path planning : Path planning model is based on the planning algorithm modeled after the operational principles of hippocampal place cells. The algorithm infers associations between neurons in a network from the asymmetric effects of STDP on a propagating sequence of spikes.

    • epl : A neuromorphic one-shot learning algorithm which can learn and recall patterns using a spatio-temporal attractor network inspired by the neural circuitry of the external plexiform layer (EPL) of the mammalian olfactory bulb.

Jupyter Tutorials

Feature Covered

Description

Category

p_composable_networks.ipynb

Composable networks

This tutorial illustrates how to connect multiple NxNet objects

NxNet

q_connection_sharing.ipynb

Connection sharing

This tutorial illustrates the use of shared connections

NxNet

r_stubs_and_netmodules.ipynb

Stubs and NetModules

This tutorial illustrates the use of connection stubs and making a module

NxNet

NxCore

  • Axon Compiler now supports remote population axons

  • BasicSpikeGenerator now supports pop16 and pop32 spike type

General

  • Several improvements in transfer performance (Network/IO) should speed up data transfer. Speedup has been observed in configuring chips/registers and probe post-processing.

  • Speed and memory use for creating large compartment groups and connection groups have both been significantly improved.

  • SpikeOutputPorts allow fast communication of spikes from Loihi to a pipe on the host when using Kapoho Bay

  • Improved DVS support for Kapoho Bay

  • Support for custom partitioners

  • Setup instructions have been updated for KapohoBay and boards which are maintained outside INRC. Please revisit getting started guides

  • Following modules have been added under nxsdk_modules :

    • Path Planning : Path planning module is based on the planning algorithm modeled after the operational principles of hippocampal place cells. The algorithm infers associations between neurons in a network from the asymmetric effects of STDP on a propagating sequence of spikes.

API Changes/Deprecations

  • NxNet.createConnection(src, dst, ...) and NxNet.createConnectionGroup(src, dst, ...) are no longer supported. The supported way to create connections is src.connect(dst, ...).

  • Spike Probes will only start accumulating spikes only after tstart has been configured and any previous spikes are discarded.

  • Synapse recompilation is not supported. Re-encoding should be done via SNIPs which provide a faster way for re-configuration.

  • The group id property (for example, CompartmentGroup.id) has been renamed to groupId (i.e. CompartmentGroup.groupId) to avoid confusion with python id() function.

  • nxDriver is deprecated as a property of Graph/N2Board. Instead please use board.executor.

  • startDriver is being deprecated. Instead please use board.start.

  • Spike Generators have been moved within nxsdk.graph.nxinputgen module. For e.g. to import BasicSpikeGenerator you would import nxsdk.graph.nxinputgen.nxinputgen.BasicSpikeGenerator.

  • Spike Receivers will now only send incremental data since the last invocation.

  • board.dump() and board.load() have been renamed to board.dumpNeuroCores() and board.loadNeuroCores() respectively.

  • The DVS noise filter interface has changed. See the corresponding tutorials for examples of how to use it.

Major bug fixes for release

  • Add proper handling when a compartment prototype is used multiple times in a compartment prototype tree (neuron API)