javaspinnaker

Implementation of the SpiNNaker host software in Java

https://github.com/spinnakermanchester/javaspinnaker

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (14.5%) to scientific vocabulary

Keywords

java spinnaker
Last synced: 4 months ago · JSON representation ·

Repository

Implementation of the SpiNNaker host software in Java

Basic Info
  • Host: GitHub
  • Owner: SpiNNakerManchester
  • License: apache-2.0
  • Language: Java
  • Default Branch: master
  • Homepage:
  • Size: 119 MB
Statistics
  • Stars: 0
  • Watchers: 6
  • Forks: 2
  • Open Issues: 19
  • Releases: 5
Topics
java spinnaker
Created over 7 years ago · Last pushed 4 months ago
Metadata Files
Readme License Citation Codeowners Security

README.md

Build and Test Coverage Status Documentation Status

JavaSpiNNaker

This is an implementation of the SpiNNaker host software in Java. It requires at least Java 11. We test regularly with OpenJDK 11, 14 and 17. It also includes the new implementation of the Spalloc (SpiNNaker Allocator) service and associated support tools.

This code currently supports these operations:

  1. Executing a collection of Data Specifications (in a SQLite database) and uploading the resulting data to SpiNNaker.

  2. Downloading the contents of recording regions and storing the downloaded data in a SQLite database.

The implementation of these operations is parallelised (to speed up multi-board SpiNNaker jobs) and uses high-speed protocols to move data, allowing large data to be moved on and off SpiNNaker systems far more rapidly (accelerations of 10× or more have been measured, depending on the details of job configuration).

Usage

Check out this repository beside your checkout of SpiNNFrontEndCommon, using the directory name JavaSpiNNaker.

Build this software with Apache Maven:

mvn package

Configure your SpiNNaker software to include these settings:

[Machine]
enable_advanced_monitor_support = True

[Java]
use_java = True

The enable_advanced_monitor_support option is turned on by default. The use_java option is turned off by default. You may also need to set these options in the [Java] section:

java_call

This option says how to run the Java language runtime. You only need to specify it when Java is not on your path. (On Windows, do not specify it to use javaw.exe; that will make the system fail.)

java_call = /path/to/bin/java

java_spinnaker_path

This option says where to find the built version of JavaSpiNNaker. If you have followed the build and usage instructions above, you shouldn't need to specify this (as the built-in autodiscovery code in SpiNNFrontEndCommon handles it). Otherwise, the path needs to be the full path to the spinnaker-exe.jar file produced by the JavaSpiNNaker build.

java_spinnaker_path = /path/to/spinnaker-exe.jar

Spalloc Server

Spalloc Server is its own sub-project.

Documentation

API documentation (Javadoc)
Maven metadata

Owner

  • Name: SpiNNaker - University of Manchester
  • Login: SpiNNakerManchester
  • Kind: organization
  • Email: spinnakerusers@googlegroups.com
  • Location: Manchester, UK

Software for the SpiNNaker Million Core Neuromorphic Machine. Part of the Human Brain Project and EBRAINS

Citation (CITATION.cff)

# Copyright (c) 2017 The University of Manchester
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

cff-version: 1.2.0
message: If you use this software, please cite it as below.
preferred-citation:
  type: article
  doi: 10.3389/fnins.2019.00231
  issn: 1662-453X
  url: https://www.frontiersin.org/articles/10.3389/fnins.2019.00231
  title: "SpiNNTools: The Execution Engine for the SpiNNaker Platform"
  journal: Frontiers in Neuroscience
  volume: 13
  year: 2019
  month: 3
  abstract: SpiNNaker is a massively parallel distributed architecture primarily focused on real time simulation of spiking neural networks. The largest realization of the architecture consists of one million general purpose processors, making it the largest neuromorphic computing platform in the world at the present time. Utilizing these processors efficiently requires expert knowledge of the architecture to generate executable code and to harness the potential of the unique inter-processor communications infra-structure that lies at the heart of the SpiNNaker architecture. This work introduces a software suite called SpiNNTools that can map a computational problem described as a graph into the required set of executables, application data and routing information necessary for simulation on this novel machine. The SpiNNaker architecture is highly scalable, giving rise to unique challenges in mapping the problem to the machines resources, loading the generated files to the machine and subsequently retrieving the results of simulation. In this paper we describe these challenges in detail and the solutions implemented.
  authors:
  - given-names: Andrew
    family-names: Rowley
    affiliation: University Of Manchester
    email: Andrew.Rowley@manchester.ac.uk
    orcid: https://orcid.org/0000-0002-2646-8520
    website: https://www.researchgate.net/profile/Andrew_Rowley2
  - given-names: Christian Y.
    family-names: Brenninkmeijer
    affiliation: University Of Manchester
    email: christian.brenninkmeijer@manchester.ac.uk
    orcid: https://orcid.org/0000-0002-2937-7819
    website: https://www.researchgate.net/profile/Christian_Brenninkmeijer
  - given-names: Simon
    family-names: Davidson
    affiliation: University Of Manchester
    orcid: https://orcid.org/0000-0001-5385-442X
    website: https://research.manchester.ac.uk/en/persons/simon.davidson
  - given-names: Donal
    family-names: Fellows
    affiliation: University Of Manchester
    orcid: https://orcid.org/0000-0002-9091-5938
    website: https://www.researchgate.net/profile/Donal-Fellows
  - given-names: Andrew
    family-names: Gait
    affiliation: University Of Manchester
    orcid: https://orcid.org/0000-0001-9349-1096
    website: https://personalpages.manchester.ac.uk/staff/andrew.gait/
  - given-names: David R.
    family-names: Lester
    affiliation: University Of Manchester
    orcid: https://orcid.org/0000-0002-7267-291X
  - given-names: Luis A.
    family-names: Plana
    affiliation: University Of Manchester
    orcid: https://orcid.org/0000-0002-6113-3929
    website: https://research.manchester.ac.uk/en/persons/luis.plana
  - given-names: Oliver
    family-names: Rhodes
    affiliation: University Of Manchester
    orcid: https://orcid.org/0000-0003-1728-2828
    website: https://research.manchester.ac.uk/en/persons/oliver.rhodes
  - given-names: Alan B.
    family-names: Stokes
    affiliation: University Of Manchester
    orcid: https://orcid.org/0000-0002-6110-1484
  - given-names: Steve B.
    family-names: Furber
    affiliation: University Of Manchester
    orcid: https://orcid.org/0000-0002-6524-3367
    website: https://research.manchester.ac.uk/en/persons/steve.furber

title: Java host code for working with SpiNNaker machines.
authors:
    - name: SpiNNaker Software Team
      alias: For a list of contributors see https://github.com/SpiNNakerManchester/JavaSpiNNaker/graphs/contributors or for a combined list see https://spinnakermanchester.github.io/latest/LicenseAgreement.html#contributors
      address: University of Manchester, Oxford Road
      city: Manchester
      country: GB
      email: spinnakerusers@googlegroups.com
      post-code: M13 9PL
      website: https://apt.cs.manchester.ac.uk/projects/SpiNNaker/
url: https://spinnakermanchester.github.io/
contact:
- address: University of Manchester, Oxford Road
  city: Manchester
  country: GB
  email: spinnakerusers@googlegroups.com
  name: SpiNNaker Software Team
  post-code: M13 9PL
license: Apache-2.0
repository-code: https://github.com/SpiNNakerManchester/JavaSpiNNaker
keywords:
  - spinnaker
  - "client software"
  - neuromorphics
  - "spiking neural networks"

GitHub Events

Total
  • Issues event: 15
  • Delete event: 112
  • Issue comment event: 64
  • Push event: 270
  • Pull request review event: 19
  • Pull request review comment event: 12
  • Pull request event: 118
  • Create event: 118
Last Year
  • Issues event: 15
  • Delete event: 112
  • Issue comment event: 64
  • Push event: 270
  • Pull request review event: 19
  • Pull request review comment event: 12
  • Pull request event: 118
  • Create event: 118

Issues and Pull Requests

Last synced: 4 months ago

All Time
  • Total issues: 55
  • Total pull requests: 197
  • Average time to close issues: 6 months
  • Average time to close pull requests: 28 days
  • Total issue authors: 4
  • Total pull request authors: 4
  • Average comments per issue: 2.91
  • Average comments per pull request: 0.95
  • Merged pull requests: 140
  • Bot issues: 0
  • Bot pull requests: 104
Past Year
  • Issues: 6
  • Pull requests: 83
  • Average time to close issues: 4 days
  • Average time to close pull requests: 12 days
  • Issue authors: 2
  • Pull request authors: 3
  • Average comments per issue: 0.17
  • Average comments per pull request: 0.63
  • Merged pull requests: 46
  • Bot issues: 0
  • Bot pull requests: 63
Top Authors
Issue Authors
  • alan-stokes (21)
  • Christian-B (16)
  • rowleya (12)
  • dkfellows (5)
Pull Request Authors
  • dependabot[bot] (106)
  • Christian-B (38)
  • dkfellows (37)
  • rowleya (20)
Top Labels
Issue Labels
minor (22) bug (12) enhancement (9) nmpi service (6) question (3) wontfix (3) blocker (1) help wanted (1) invalid (1) python too (1)
Pull Request Labels
bug (120) dependabot (106) enhancement (39) minor (31) blocker (3) invalid (1)