From f7adf54286cabd0f60939dc02f30256a13409735 Mon Sep 17 00:00:00 2001 From: Mazdak Fatahi <mazdak.fatahi@univ-lille.fr> Date: Thu, 17 Nov 2022 13:41:05 +0100 Subject: [PATCH] Upload New File --- SpiNNaker/SpiNNakerRun.ipynb | 752 +++++++++++++++++++++++++++++++++++ 1 file changed, 752 insertions(+) create mode 100644 SpiNNaker/SpiNNakerRun.ipynb diff --git a/SpiNNaker/SpiNNakerRun.ipynb b/SpiNNaker/SpiNNakerRun.ipynb new file mode 100644 index 0000000..6aed942 --- /dev/null +++ b/SpiNNaker/SpiNNakerRun.ipynb @@ -0,0 +1,752 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "# Imports\n", + "import SpiNNakerHelpers as mySpiNNaker\n", + "import torch\n", + "import snntorch \n", + "from snntorch import utils, spikegen\n", + "from torchvision import transforms,datasets\n", + "from pacman import exceptions\n", + "from spinn_utilities.progress_bar import ProgressBar\n", + "import time\n", + "import pyNN.utility.plotting as plot\n", + "from torch.utils.data import SubsetRandomSampler\n", + "import matplotlib.pyplot as plt\n", + "import random\n", + "import torch\n", + "import torchvision\n", + "import numpy as np\n", + "import seaborn as sns\n", + "import os\n", + "import os.path\n", + "import datetime\n", + "\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [], + "source": [ + "# Initialization\n", + "\n", + "# Encoding parameters\n", + "SMAPLES_INTERVAL=10#\n", + "TIME_STEP=1\n", + "NUM_STEPS=20#20\n", + "\n", + "# Simulator parameters\n", + "timestep=[1]\n", + "time_scale_factor=[1]\n", + "neuron_tpye=mySpiNNaker.sim.IF_curr_exp\n", + "number_of_neurons_per_cores=[1000]\n", + "\n", + "\n", + "# Model Parameters\n", + "INPUT_SIZE=784\n", + "EXC_POP_SIZE=[400, 1600]\n", + "INH_POP_SIZE=[]\n", + "\n", + "# General parameters\n", + "path = os.getcwd()\n", + "now=datetime.datetime.now()\n", + "os.mkdir(f'{path}/{str(now)}') " + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|██████████| 10/10 [00:00<00:00, 771.89it/s]\n" + ] + } + ], + "source": [ + "# Dataset and preparation\n", + "transform=transforms.Compose([\n", + " transforms.Resize((28,28)),\n", + " transforms.Grayscale(),\n", + " transforms.ToTensor(),\n", + " transforms.Normalize((0,),(1,))])\n", + "dataPath='~/datasets' # download MNIST in the path\n", + "mnistTrain=datasets.MNIST(dataPath,train=True,download=True,transform=transform)\n", + "mnistTest=datasets.MNIST(dataPath,train=False,download=True,transform=transform)\n", + "\n", + "selected_data=mnistTest.data[0:10]\n", + "time,spikes_list_flatten=mySpiNNaker.convert_to_latency_code_V4(selected_data, tarnsposed=False, samples_intervel=SMAPLES_INTERVAL, time_step=TIME_STEP, num_steps=NUM_STEPS)\n", + "runtime =time" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "2022-11-17 13:29:49 INFO: Read configs files: /home/bbpnrsoa/sPyNNakerGit/SpiNNUtils/spinn_utilities/spinn_utilities.cfg, /home/bbpnrsoa/sPyNNakerGit/SpiNNMachine/spinn_machine/spinn_machine.cfg, /home/bbpnrsoa/sPyNNakerGit/PACMAN/pacman/pacman.cfg, /home/bbpnrsoa/sPyNNakerGit/SpiNNMan/spinnman/spinnman.cfg, /home/bbpnrsoa/sPyNNakerGit/DataSpecification/data_specification/data_specification.cfg, /home/bbpnrsoa/sPyNNakerGit/SpiNNFrontEndCommon/spinn_front_end_common/interface/spinnaker.cfg, /home/bbpnrsoa/sPyNNakerGit/sPyNNaker/spynnaker/pyNN/spynnaker.cfg, /home/bbpnrsoa/.spynnaker.cfg\n", + "2022-11-17 13:29:49 INFO: Will search these locations for binaries: /home/bbpnrsoa/sPyNNakerGit/sPyNNaker/spynnaker/pyNN/model_binaries : /home/bbpnrsoa/sPyNNakerGit/SpiNNFrontEndCommon/spinn_front_end_common/common_model_binaries\n", + "2022-11-17 13:29:49 WARNING: /home/bbpnrsoa/FromSep2022/test_For_Paper/ForReportOnTheResults(ToSeeWaySpikesMoveUpAndDone)/improved_2/reports has 46 old reports that have not been closed\n", + "2022-11-17 13:29:49 INFO: Setting hardware timestep as 1000 microseconds based on simulation time step of 1000 and timescale factor of 1\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "===============#############************ ====>>>> -55.4\n", + "['/home/bbpnrsoa/sPyNNakerGit/SpiNNUtils/spinn_utilities/spinn_utilities.cfg', '/home/bbpnrsoa/sPyNNakerGit/SpiNNMachine/spinn_machine/spinn_machine.cfg', '/home/bbpnrsoa/sPyNNakerGit/PACMAN/pacman/pacman.cfg', '/home/bbpnrsoa/sPyNNakerGit/SpiNNMan/spinnman/spinnman.cfg', '/home/bbpnrsoa/sPyNNakerGit/DataSpecification/data_specification/data_specification.cfg', '/home/bbpnrsoa/sPyNNakerGit/SpiNNFrontEndCommon/spinn_front_end_common/interface/spinnaker.cfg', '/home/bbpnrsoa/sPyNNakerGit/sPyNNaker/spynnaker/pyNN/spynnaker.cfg', '/home/bbpnrsoa/.spynnaker.cfg']\n", + "exp_pop_number_0 has 400 neurons\n", + "exp_pop_number_1 has 1600 neurons\n", + "Porjection from Input ot Excitatory pop_0 is created\n", + "============================================================\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "2022-11-17 13:29:54 INFO: Starting execution process\n", + "2022-11-17 13:29:54 INFO: Simulating for 295 1.0 ms timesteps using a hardware timestep of 1000 us\n", + "2022-11-17 13:29:54 INFO: SpYNNakerNeuronGraphNetworkSpecificationReport skipped as cfg Reports:write_network_graph is False\n", + "2022-11-17 13:29:54 INFO: Network Specification report took 0:00:00.000399 \n", + "2022-11-17 13:29:54 INFO: Splitter reset took 0:00:00.000016 \n", + "Adding Splitter selectors where appropriate\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:29:54 INFO: Spynnaker splitter selector took 0:00:00.008500 \n", + "Adding delay extensions as required\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:29:54 INFO: DelaySupportAdder took 0:00:00.009230 \n", + "Partitioning Graph\n", + "|0% 50% 100%|\n", + " ====================" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Porjection from Excitatory pop_0 ot Excitatory pop_1 is created\n", + "============================================================\n", + "============================================================\n", + "Runing simulator for 295ms ...\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "========================================\n", + "2022-11-17 13:29:55 INFO: SpynnakerSplitterPartitioner took 0:00:00.329034 \n", + "2022-11-17 13:29:55 INFO: 0.02 Boards Required for 1 chips\n", + "2022-11-17 13:29:55 INFO: Requesting job with 1 boards\n", + "Created spalloc job 6868457\n", + "2022-11-17 13:29:55 INFO: Created spalloc job 6868457\n", + "Waiting for board power commands to complete.\n", + "2022-11-17 13:29:55 INFO: Waiting for board power commands to complete.\n", + "2022-11-17 13:30:00 INFO: boards: [(0, 0): '10.11.193.129']\n", + "2022-11-17 13:30:00 INFO: SpallocAllocator took 0:00:05.051999 \n", + "2022-11-17 13:30:00 INFO: Creating transceiver for 10.11.193.129\n", + "2022-11-17 13:30:00 INFO: Working out if machine is booted\n", + "2022-11-17 13:30:04 INFO: Attempting to boot machine\n", + "2022-11-17 13:30:10 INFO: Found board with version [Version: SC&MP 3.4.2 at SpiNNaker:0:0:0 (built Fri Jun 10 17:21:19 2022)]\n", + "2022-11-17 13:30:10 INFO: Machine communication successful\n", + "2022-11-17 13:30:10 INFO: Detected a machine on IP address 10.11.193.129 which has 856 cores and 120.0 links\n", + "2022-11-17 13:30:10 INFO: Machine generator took 0:00:09.938177 \n", + "2022-11-17 13:30:10 INFO: Json machine skipped as cfg Reports:write_json_machine is False\n", + "Writing the board chip report\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:10 INFO: Board chip report took 0:00:00.007856 \n", + "Adding commands\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:10 INFO: Command Sender Adder took 0:00:00.008324 \n", + "2022-11-17 13:30:10 INFO: Split Live Gather Vertices took 0:00:00.000016 \n", + "Adding Chip power monitors to Graph\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:10 INFO: Insert chip power monitors took 0:00:00.028792 \n", + "2022-11-17 13:30:10 INFO: Insert extra monitor vertices took 0:00:00.000021 \n", + "Inserting extra monitors into graphs\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "Generating partitioner report\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:10 INFO: Partitioner report took 0:00:00.002853 \n", + "2022-11-17 13:30:10 INFO: Local TDMA builder took 0:00:00.000282 \n", + "Placing Vertices\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:10 INFO: Application Placer took 0:00:00.009743 \n", + "Generating placement report\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "Generating placement by core report\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:10 INFO: Placements wth application graph report took 0:00:00.040097 \n", + "2022-11-17 13:30:10 INFO: Json placements skipped as cfg Reports:write_json_placements is False\n", + "Generating routing tables for data in system processes\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:10 INFO: System multicast routing generator took 0:00:00.010410 \n", + "Generating fixed router routes\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:10 INFO: Fixed route router took 0:00:00.009081 \n", + "Routing\n", + "|0% 50% 100%|\n", + " /home/bbpnrsoa/sPyNNakerGit/sPyNNaker/spynnaker/pyNN/models/neural_projections/connectors/from_list_connector.py:157: VisibleDeprecationWarning: Creating an ndarray from ragged nested sequences (which is a list-or-tuple of lists-or-tuples-or ndarrays with different lengths or shapes) is deprecated. If you meant to do this, you must specify 'dtype=object' when creating the ndarray.\n", + " split_indices = numpy.array(numpy.split(\n", + "============================================================\n", + "2022-11-17 13:30:10 INFO: Application Router took 0:00:00.070109 \n", + "Allocating tags\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:10 INFO: Basic tag allocator took 0:00:00.046999 \n", + "Reporting Tags\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:10 INFO: Tag allocator report took 0:00:00.007281 \n", + "Calculating zones\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "Allocating routing keys\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:10 INFO: Zoned routing info allocator took 0:00:00.015057 \n", + "Generating Routing info report\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "\n", + "2022-11-17 13:30:10 INFO: Router info report took 0:00:00.009632 \n", + "Generating routing tables\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:10 INFO: Merged routing table generator took 0:00:00.007850 \n", + "Generating Router table report\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:10 INFO: Uncompressed routing table report took 0:00:00.008746 \n", + "2022-11-17 13:30:10 INFO: Router report skipped as cfg Reports:write_router_reports is False\n", + "2022-11-17 13:30:10 INFO: Router summary report skipped as cfg Reports:write_router_summary_report is False\n", + "2022-11-17 13:30:10 INFO: Json routing tables skipped as cfg Reports:write_json_routing_tables is False\n", + "Finding executable start types\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:10 INFO: Locate executable start type took 0:00:00.047623 \n", + "Initialising buffers\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:10 INFO: Buffer manager creator took 0:00:00.051204 \n", + "Allocating SDRAM for SDRAM outgoing egde partitions\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:10 INFO: SDRAM outgoing partition allocator took 0:00:00.005000 \n", + "Preparing Routing Tables\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:10 INFO: Routing setup took 0:00:00.008774 \n", + "Finding binaries\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:10 INFO: Graph binary gatherer took 0:00:00.052777 \n", + "2022-11-17 13:30:10 INFO: Pair on chip router compression skipped as Tables already small enough\n", + "Generating data specifications\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:12 INFO: Spynnaker data specification writer took 0:00:02.085197 \n", + "2022-11-17 13:30:12 INFO: Control Sync took 0:00:00.000550 \n", + "loading fixed routes\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:12 INFO: Load fixed routes took 0:00:00.080855 \n", + "Executing data specifications and loading data for system vertices using Java\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:14 INFO: Execute system data specification took 0:00:01.437735 \n", + "Loading system executables onto the machine\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:14 INFO: Load executable system Images took 0:00:00.281579 \n", + "Clearing tags\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "Loading Tags\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:14 INFO: Tags Loader took 0:00:00.020705 \n", + "Executing data specifications and loading data for application vertices using Java\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:17 INFO: Host data specification took 0:00:02.514094 \n", + "Preparing to Expand Synapses\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "Expanding Synapses\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "\n", + "\n", + "2022-11-17 13:30:17 INFO: Synapse expander took 0:00:00.569950 \n", + "Finding cores where bitfields are to be generated\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "Expanding bitfields on the machine\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "\n", + "2022-11-17 13:30:18 INFO: Execute on chip bitfield generator took 0:00:00.651393 \n", + "Finalising Retrieved Connections\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:18 INFO: Finish connection holders took 0:00:00.016954 \n", + "Loading routing data onto the machine\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:18 INFO: Routing table loader took 0:00:00.013469 \n", + "2022-11-17 13:30:18 INFO: Bitfield compressor report skipped as cfg Reports:write_bit_field_compressor_report is False\n", + "2022-11-17 13:30:18 INFO: Tags from machine report took 0:00:00.002937 \n", + "2022-11-17 13:30:18 INFO: Memory report skipped as cfg Reports:write_memory_map_report is False\n", + "2022-11-17 13:30:18 INFO: Memory report skipped as cfg Reports:write_memory_map_report is False\n", + "Generating compressed router table report\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "Generating comparison of router table report\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "Generating Routing summary report\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "Reading Routing Tables from Machine\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:18 INFO: Compressor report took 0:00:00.109426 \n", + "Writing fixed route report\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:18 INFO: Fixed route report took 0:00:00.046543 \n", + "Loading executables onto the machine\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:19 INFO: Load executable app images took 0:00:00.593514 \n", + "2022-11-17 13:30:19 INFO: Running for 1 steps for a total of 295.0ms\n", + "2022-11-17 13:30:19 INFO: Run 1 of 1\n", + "Generating SDRAM usage report\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:19 INFO: Sdram usage per chip report took 0:00:00.087471 \n", + "2022-11-17 13:30:19 INFO: Drift report skipped as cfg Reports:write_drift_report_start is False\n", + "2022-11-17 13:30:19 INFO: Creating live event connection database in /home/bbpnrsoa/FromSep2022/test_For_Paper/ForReportOnTheResults(ToSeeWaySpikesMoveUpAndDone)/improved_2/reports/2022-11-17-13-29-49-630243/run_1/input_output_database.sqlite3\n", + "Creating graph description database\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:19 INFO: Create database interface took 0:00:00.031109 \n", + "2022-11-17 13:30:19 INFO: ** Notifying external sources that the database is ready for reading **\n", + "2022-11-17 13:30:19 INFO: Create notification protocol took 0:00:00.001314 \n", + "Waiting for cores to be either in PAUSED or READY state\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "Updating run time\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:19 INFO: Runtime Update took 0:00:00.063686 \n", + "2022-11-17 13:30:19 INFO: *** Running simulation... *** \n", + "Loading buffers\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:19 INFO: ** Awaiting for a response from an external source to state its ready for the simulation to start **\n", + "2022-11-17 13:30:19 INFO: ** Sending start / resume message to external sources to state the simulation has started or resumed. **\n", + "2022-11-17 13:30:19 INFO: ** Awaiting for a response from an external source to state its ready for the simulation to start **\n", + "2022-11-17 13:30:19 INFO: Application started; waiting 0.395s for it to stop\n", + "2022-11-17 13:30:19 INFO: ** Sending pause / stop message to external sources to state the simulation has been paused or stopped. **\n", + "2022-11-17 13:30:19 INFO: Application runner took 0:00:00.551099 \n", + "2022-11-17 13:30:19 INFO: Extract IO buff skipped as cfg Reports:extract_iobuf is False\n", + "Extracting buffers from the last run\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "\n", + "2022-11-17 13:30:23 INFO: Buffer extractor took 0:00:03.608964 \n", + "clearing IOBUF from the machine\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:23 INFO: Clear IO buffer took 0:00:00.045705 \n", + "Getting provenance data from application graph\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:23 INFO: Graph provenance gatherer took 0:00:00.011807 \n", + "Getting provenance data\n", + "|0% 50% 100%|\n", + " ======================================================2022-11-17 13:30:23 WARNING: On Slice Slice(lo_atom=0, hi_atom=255, n_atoms=256, shape=(256,), start=(0,)) of EXC_POP_0 on 0,0,5, 156 packets were dropped from the input buffer, because they arrived too late to be processed in a given time step. Try increasing the time_scale_factor located within the .spynnaker.cfg file or in the pynn.setup() method.\n", + "2022-11-17 13:30:23 WARNING: A maximum of 2 background tasks were queued on Slice Slice(lo_atom=0, hi_atom=255, n_atoms=256, shape=(256,), start=(0,)) of EXC_POP_0 on 0,0,5. Try increasing the time_scale_factor located within the .spynnaker.cfg file or in the pynn.setup() method.\n", + "=2022-11-17 13:30:23 WARNING: On Slice Slice(lo_atom=256, hi_atom=399, n_atoms=144, shape=(144,), start=(256,)) of EXC_POP_0 on 0,0,6, 64 packets were dropped from the input buffer, because they arrived too late to be processed in a given time step. Try increasing the time_scale_factor located within the .spynnaker.cfg file or in the pynn.setup() method.\n", + "2022-11-17 13:30:23 WARNING: A maximum of 2 background tasks were queued on Slice Slice(lo_atom=256, hi_atom=399, n_atoms=144, shape=(144,), start=(256,)) of EXC_POP_0 on 0,0,6. Try increasing the time_scale_factor located within the .spynnaker.cfg file or in the pynn.setup() method.\n", + "=2022-11-17 13:30:23 WARNING: The input buffer for Slice Slice(lo_atom=0, hi_atom=255, n_atoms=256, shape=(256,), start=(0,)) of EXC_POP_1 on 0,0,7 lost packets on 1629 occasions. This is often a sign that the system is running too quickly for the number of neurons per core. Please increase the timer_tic or time_scale_factor or decrease the number of neurons per core.\n", + "2022-11-17 13:30:23 WARNING: On Slice Slice(lo_atom=0, hi_atom=255, n_atoms=256, shape=(256,), start=(0,)) of EXC_POP_1 on 0,0,7, 8147 packets were dropped from the input buffer, because they arrived too late to be processed in a given time step. Try increasing the time_scale_factor located within the .spynnaker.cfg file or in the pynn.setup() method.\n", + "2022-11-17 13:30:23 WARNING: A maximum of 4 background tasks were queued on Slice Slice(lo_atom=0, hi_atom=255, n_atoms=256, shape=(256,), start=(0,)) of EXC_POP_1 on 0,0,7. Try increasing the time_scale_factor located within the .spynnaker.cfg file or in the pynn.setup() method.\n", + "2022-11-17 13:30:23 WARNING: The input buffer for Slice Slice(lo_atom=256, hi_atom=511, n_atoms=256, shape=(256,), start=(256,)) of EXC_POP_1 on 0,0,8 lost packets on 1629 occasions. This is often a sign that the system is running too quickly for the number of neurons per core. Please increase the timer_tic or time_scale_factor or decrease the number of neurons per core.\n", + "2022-11-17 13:30:23 WARNING: On Slice Slice(lo_atom=256, hi_atom=511, n_atoms=256, shape=(256,), start=(256,)) of EXC_POP_1 on 0,0,8, 8149 packets were dropped from the input buffer, because they arrived too late to be processed in a given time step. Try increasing the time_scale_factor located within the .spynnaker.cfg file or in the pynn.setup() method.\n", + "2022-11-17 13:30:23 WARNING: A maximum of 4 background tasks were queued on Slice Slice(lo_atom=256, hi_atom=511, n_atoms=256, shape=(256,), start=(256,)) of EXC_POP_1 on 0,0,8. Try increasing the time_scale_factor located within the .spynnaker.cfg file or in the pynn.setup() method.\n", + "=2022-11-17 13:30:23 WARNING: The input buffer for Slice Slice(lo_atom=512, hi_atom=767, n_atoms=256, shape=(256,), start=(512,)) of EXC_POP_1 on 0,0,9 lost packets on 1629 occasions. This is often a sign that the system is running too quickly for the number of neurons per core. Please increase the timer_tic or time_scale_factor or decrease the number of neurons per core.\n", + "2022-11-17 13:30:23 WARNING: On Slice Slice(lo_atom=512, hi_atom=767, n_atoms=256, shape=(256,), start=(512,)) of EXC_POP_1 on 0,0,9, 8151 packets were dropped from the input buffer, because they arrived too late to be processed in a given time step. Try increasing the time_scale_factor located within the .spynnaker.cfg file or in the pynn.setup() method.\n", + "2022-11-17 13:30:23 WARNING: A maximum of 4 background tasks were queued on Slice Slice(lo_atom=512, hi_atom=767, n_atoms=256, shape=(256,), start=(512,)) of EXC_POP_1 on 0,0,9. Try increasing the time_scale_factor located within the .spynnaker.cfg file or in the pynn.setup() method.\n", + "2022-11-17 13:30:23 WARNING: The input buffer for Slice Slice(lo_atom=768, hi_atom=1023, n_atoms=256, shape=(256,), start=(768,)) of EXC_POP_1 on 0,0,10 lost packets on 1629 occasions. This is often a sign that the system is running too quickly for the number of neurons per core. Please increase the timer_tic or time_scale_factor or decrease the number of neurons per core.\n", + "2022-11-17 13:30:23 WARNING: On Slice Slice(lo_atom=768, hi_atom=1023, n_atoms=256, shape=(256,), start=(768,)) of EXC_POP_1 on 0,0,10, 8151 packets were dropped from the input buffer, because they arrived too late to be processed in a given time step. Try increasing the time_scale_factor located within the .spynnaker.cfg file or in the pynn.setup() method.\n", + "2022-11-17 13:30:23 WARNING: A maximum of 4 background tasks were queued on Slice Slice(lo_atom=768, hi_atom=1023, n_atoms=256, shape=(256,), start=(768,)) of EXC_POP_1 on 0,0,10. Try increasing the time_scale_factor located within the .spynnaker.cfg file or in the pynn.setup() method.\n", + "=2022-11-17 13:30:23 WARNING: The input buffer for Slice Slice(lo_atom=1024, hi_atom=1279, n_atoms=256, shape=(256,), start=(1024,)) of EXC_POP_1 on 0,0,11 lost packets on 1629 occasions. This is often a sign that the system is running too quickly for the number of neurons per core. Please increase the timer_tic or time_scale_factor or decrease the number of neurons per core.\n", + "2022-11-17 13:30:23 WARNING: On Slice Slice(lo_atom=1024, hi_atom=1279, n_atoms=256, shape=(256,), start=(1024,)) of EXC_POP_1 on 0,0,11, 8150 packets were dropped from the input buffer, because they arrived too late to be processed in a given time step. Try increasing the time_scale_factor located within the .spynnaker.cfg file or in the pynn.setup() method.\n", + "2022-11-17 13:30:23 WARNING: A maximum of 4 background tasks were queued on Slice Slice(lo_atom=1024, hi_atom=1279, n_atoms=256, shape=(256,), start=(1024,)) of EXC_POP_1 on 0,0,11. Try increasing the time_scale_factor located within the .spynnaker.cfg file or in the pynn.setup() method.\n", + "2022-11-17 13:30:23 WARNING: Additional interesting provenace items in /home/bbpnrsoa/FromSep2022/test_For_Paper/ForReportOnTheResults(ToSeeWaySpikesMoveUpAndDone)/improved_2/reports/2022-11-17-13-29-49-630243/run_1/provenance_data/provenance.sqlite3\n", + "==\n", + "2022-11-17 13:30:23 INFO: Placements provenance gatherer took 0:00:00.332423 \n", + "Getting Router Provenance\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:24 INFO: Router provenance gatherer took 0:00:00.219347 \n", + "Getting profile data\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:24 INFO: Profile data gatherer took 0:00:00.048060 \n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(0, 0)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(0, 1)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(0, 2)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(0, 3)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(1, 0)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(1, 1)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(1, 2)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(1, 3)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(1, 4)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(2, 0)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(2, 1)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(2, 2)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(2, 3)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(2, 4)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(2, 5)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(3, 0)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(3, 1)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(3, 2)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(3, 3)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(3, 4)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(3, 5)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(3, 6)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(4, 0)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(4, 1)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(4, 2)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(4, 3)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(4, 4)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(4, 5)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(4, 6)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(4, 7)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(5, 1)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(5, 2)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(5, 3)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(5, 4)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(5, 5)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(5, 6)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(5, 7)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(6, 2)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(6, 3)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(6, 4)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(6, 5)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(6, 6)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(6, 7)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(7, 3)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(7, 4)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(7, 5)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(7, 6)\n", + "2022-11-17 13:30:24 WARNING: Chip Power monitor has lost data on chip(7, 7)\n", + "2022-11-17 13:30:26 INFO: Energy report took 0:00:02.003967 \n", + "2022-11-17 13:30:26 INFO: Redundant packet count report took 0:00:00.017027 \n", + "2022-11-17 13:30:26 INFO: Drift report skipped as cfg Reports:write_drift_report_end is False\n", + "2022-11-17 13:30:26 INFO: Control Sync took 0:00:00.000503 \n", + "2022-11-17 13:30:26 WARNING: Second call to end ignored\n", + "2022-11-17 13:30:26 INFO: Read configs files: /home/bbpnrsoa/sPyNNakerGit/SpiNNUtils/spinn_utilities/spinn_utilities.cfg, /home/bbpnrsoa/sPyNNakerGit/SpiNNMachine/spinn_machine/spinn_machine.cfg, /home/bbpnrsoa/sPyNNakerGit/PACMAN/pacman/pacman.cfg, /home/bbpnrsoa/sPyNNakerGit/SpiNNMan/spinnman/spinnman.cfg, /home/bbpnrsoa/sPyNNakerGit/DataSpecification/data_specification/data_specification.cfg, /home/bbpnrsoa/sPyNNakerGit/SpiNNFrontEndCommon/spinn_front_end_common/interface/spinnaker.cfg, /home/bbpnrsoa/sPyNNakerGit/sPyNNaker/spynnaker/pyNN/spynnaker.cfg, /home/bbpnrsoa/.spynnaker.cfg\n", + "2022-11-17 13:30:26 INFO: Will search these locations for binaries: /home/bbpnrsoa/sPyNNakerGit/sPyNNaker/spynnaker/pyNN/model_binaries : /home/bbpnrsoa/sPyNNakerGit/SpiNNFrontEndCommon/spinn_front_end_common/common_model_binaries\n", + "2022-11-17 13:30:26 WARNING: /home/bbpnrsoa/FromSep2022/test_For_Paper/ForReportOnTheResults(ToSeeWaySpikesMoveUpAndDone)/improved_2/reports has 46 old reports that have not been closed\n", + "2022-11-17 13:30:26 INFO: Setting hardware timestep as 1000 microseconds based on simulation time step of 1000 and timescale factor of 1\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "==========================================================================\n", + "| Simulation terminated after 295.0 ms \n", + "==========================================================================\n", + "['/home/bbpnrsoa/sPyNNakerGit/SpiNNUtils/spinn_utilities/spinn_utilities.cfg', '/home/bbpnrsoa/sPyNNakerGit/SpiNNMachine/spinn_machine/spinn_machine.cfg', '/home/bbpnrsoa/sPyNNakerGit/PACMAN/pacman/pacman.cfg', '/home/bbpnrsoa/sPyNNakerGit/SpiNNMan/spinnman/spinnman.cfg', '/home/bbpnrsoa/sPyNNakerGit/DataSpecification/data_specification/data_specification.cfg', '/home/bbpnrsoa/sPyNNakerGit/SpiNNFrontEndCommon/spinn_front_end_common/interface/spinnaker.cfg', '/home/bbpnrsoa/sPyNNakerGit/sPyNNaker/spynnaker/pyNN/spynnaker.cfg', '/home/bbpnrsoa/.spynnaker.cfg']\n", + "exp_pop_number_0 has 400 neurons\n", + "exp_pop_number_1 has 1600 neurons\n", + "Porjection from Input ot Excitatory pop_0 is created\n", + "============================================================\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "2022-11-17 13:30:31 INFO: Starting execution process\n", + "2022-11-17 13:30:31 INFO: Simulating for 295 1.0 ms timesteps using a hardware timestep of 1000 us\n", + "2022-11-17 13:30:31 INFO: SpYNNakerNeuronGraphNetworkSpecificationReport skipped as cfg Reports:write_network_graph is False\n", + "2022-11-17 13:30:31 INFO: Network Specification report took 0:00:00.000576 \n", + "2022-11-17 13:30:31 INFO: Splitter reset took 0:00:00.000016 \n", + "Adding Splitter selectors where appropriate\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:31 INFO: Spynnaker splitter selector took 0:00:00.009812 \n", + "Adding delay extensions as required\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:31 INFO: DelaySupportAdder took 0:00:00.014613 \n", + "Partitioning Graph\n", + "|0% 50% 100%|\n", + " ====================" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Porjection from Excitatory pop_0 ot Excitatory pop_1 is created\n", + "============================================================\n", + "============================================================\n", + "Runing simulator for 295ms ...\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "========================================\n", + "2022-11-17 13:30:31 INFO: SpynnakerSplitterPartitioner took 0:00:00.331901 \n", + "2022-11-17 13:30:31 INFO: 0.02 Boards Required for 1 chips\n", + "2022-11-17 13:30:31 INFO: Requesting job with 1 boards\n", + "Created spalloc job 6868458\n", + "2022-11-17 13:30:31 INFO: Created spalloc job 6868458\n", + "Waiting for board power commands to complete.\n", + "2022-11-17 13:30:31 INFO: Waiting for board power commands to complete.\n", + "2022-11-17 13:30:36 INFO: boards: [(0, 0): '10.11.193.65']\n", + "2022-11-17 13:30:36 INFO: SpallocAllocator took 0:00:05.051264 \n", + "2022-11-17 13:30:36 INFO: Creating transceiver for 10.11.193.65\n", + "2022-11-17 13:30:36 INFO: Working out if machine is booted\n", + "2022-11-17 13:30:40 INFO: Attempting to boot machine\n", + "2022-11-17 13:30:46 INFO: Found board with version [Version: SC&MP 3.4.2 at SpiNNaker:0:0:0 (built Fri Jun 10 17:21:19 2022)]\n", + "2022-11-17 13:30:46 INFO: Machine communication successful\n", + "2022-11-17 13:30:46 INFO: Detected a machine on IP address 10.11.193.65 which has 854 cores and 120.0 links\n", + "2022-11-17 13:30:46 INFO: Machine generator took 0:00:09.939491 \n", + "2022-11-17 13:30:46 INFO: Json machine skipped as cfg Reports:write_json_machine is False\n", + "Writing the board chip report\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:46 INFO: Board chip report took 0:00:00.010967 \n", + "Adding commands\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:46 INFO: Command Sender Adder took 0:00:00.017361 \n", + "2022-11-17 13:30:46 INFO: Split Live Gather Vertices took 0:00:00.000031 \n", + "Adding Chip power monitors to Graph\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:46 INFO: Insert chip power monitors took 0:00:00.037982 \n", + "2022-11-17 13:30:46 INFO: Insert extra monitor vertices took 0:00:00.000019 \n", + "Inserting extra monitors into graphs\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "Generating partitioner report\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:46 INFO: Partitioner report took 0:00:00.009063 \n", + "2022-11-17 13:30:46 INFO: Local TDMA builder took 0:00:00.000318 \n", + "Placing Vertices\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:46 INFO: Application Placer took 0:00:00.010321 \n", + "Generating placement report\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "Generating placement by core report\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:46 INFO: Placements wth application graph report took 0:00:00.032126 \n", + "2022-11-17 13:30:46 INFO: Json placements skipped as cfg Reports:write_json_placements is False\n", + "Generating routing tables for data in system processes\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:46 INFO: System multicast routing generator took 0:00:00.009102 \n", + "Generating fixed router routes\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:46 INFO: Fixed route router took 0:00:00.008056 \n", + "Routing\n", + "|0% 50% 100%|\n", + " /home/bbpnrsoa/sPyNNakerGit/sPyNNaker/spynnaker/pyNN/models/neural_projections/connectors/from_list_connector.py:157: VisibleDeprecationWarning: Creating an ndarray from ragged nested sequences (which is a list-or-tuple of lists-or-tuples-or ndarrays with different lengths or shapes) is deprecated. If you meant to do this, you must specify 'dtype=object' when creating the ndarray.\n", + " split_indices = numpy.array(numpy.split(\n", + "============================================================\n", + "2022-11-17 13:30:47 INFO: Application Router took 0:00:00.048389 \n", + "Allocating tags\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:47 INFO: Basic tag allocator took 0:00:00.038553 \n", + "Reporting Tags\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:47 INFO: Tag allocator report took 0:00:00.008431 \n", + "Calculating zones\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "Allocating routing keys\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:47 INFO: Zoned routing info allocator took 0:00:00.016840 \n", + "Generating Routing info report\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "\n", + "2022-11-17 13:30:47 INFO: Router info report took 0:00:00.009516 \n", + "Generating routing tables\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:47 INFO: Merged routing table generator took 0:00:00.007993 \n", + "Generating Router table report\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:47 INFO: Uncompressed routing table report took 0:00:00.008344 \n", + "2022-11-17 13:30:47 INFO: Router report skipped as cfg Reports:write_router_reports is False\n", + "2022-11-17 13:30:47 INFO: Router summary report skipped as cfg Reports:write_router_summary_report is False\n", + "2022-11-17 13:30:47 INFO: Json routing tables skipped as cfg Reports:write_json_routing_tables is False\n", + "Finding executable start types\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:47 INFO: Locate executable start type took 0:00:00.041289 \n", + "Initialising buffers\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:47 INFO: Buffer manager creator took 0:00:00.039382 \n", + "Allocating SDRAM for SDRAM outgoing egde partitions\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:47 INFO: SDRAM outgoing partition allocator took 0:00:00.009337 \n", + "Preparing Routing Tables\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:47 INFO: Routing setup took 0:00:00.012468 \n", + "Finding binaries\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:47 INFO: Graph binary gatherer took 0:00:00.045896 \n", + "2022-11-17 13:30:47 INFO: Pair on chip router compression skipped as Tables already small enough\n", + "Generating data specifications\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:49 INFO: Spynnaker data specification writer took 0:00:02.053899 \n", + "2022-11-17 13:30:49 INFO: Control Sync took 0:00:00.000535 \n", + "loading fixed routes\n", + "|0% 50% 100%|\n", + " ============================================================\n", + "2022-11-17 13:30:49 INFO: Load fixed routes took 0:00:00.038028 \n", + "Executing data specifications and loading data for system vertices using Java\n", + "|0% 50% 100%|\n", + " " + ] + } + ], + "source": [ + "\n", + "for test_num, mySpiNNaker.excitatory_neuron_parameters['tau_refrac'] in enumerate(range(5,10,5)):\n", + " v_th=mySpiNNaker.excitatory_neuron_parameters['v_thresh']\n", + " tau_refrac=mySpiNNaker.excitatory_neuron_parameters['tau_refrac']\n", + " print(f'===============#############************ ====>>>> {v_th}')\n", + " for number_of_neurons_per_core in number_of_neurons_per_cores:\n", + " for time_step, timeScaleFactor in zip(timestep, time_scale_factor):\n", + " param_name='number_of_neurons_per_core_time_step_timeScaleFactor_tau_refrac'\n", + " param_val=[number_of_neurons_per_core, time_step, timeScaleFactor, tau_refrac]\n", + "\n", + " if not os.path.exists(f'{path}/{str(now)}/{param_name}_{str(param_val)}'): # 1\n", + " os.mkdir(f'{path}/{str(now)}/{param_name}_{str(param_val)}')\n", + "\n", + " tests_name=['0_0_25_0.7_Zero_Removed_False_not_transposed', '1_1_25_0.7_Zero_Removed_False_not_transposed']\n", + "\n", + " if not os.path.exists(f'{path}/{str(now)}/{param_name}_{str(param_val)}/{str(time)}'): # 2\n", + " os.mkdir(f'{path}/{str(now)}/{param_name}_{str(param_val)}/{str(time)}')\n", + "\n", + " total_mem=[]\n", + " spikes_count=[[] for _ in range(len(tests_name))]\n", + " for n_test, test_name in enumerate(tests_name):\n", + "\n", + " if not os.path.exists(f'{path}/{str(now)}/{param_name}_{str(param_val)}/{str(time)}/{test_name}'): # 3\n", + " os.mkdir(f'{path}/{str(now)}/{param_name}_{str(param_val)}/{str(time)}/{test_name}')\n", + " save_path=f'{path}/{str(now)}/{param_name}_{str(param_val)}/{str(time)}/{test_name}'\n", + " v_th=mySpiNNaker.excitatory_neuron_parameters['v_thresh']\n", + " postfix=f'{test_name}_simulation_time_{time}_{param_name}_{str(param_val)}_V_th_{str(v_th)}_tau_refrac_{tau_refrac}'\n", + "\n", + " weights_files=[f'weights_fc1_{test_name}.txt', f'weights_fc2_{test_name}.txt']\n", + " #============================== Populations and kernels( input<---> kernel (Connections) <--->output) \n", + " mySpiNNaker.init_sim(time_step, timeScaleFactor, neuron_tpye, number_of_neurons_per_core)\n", + " INPUT_POP, EXC_POPs, INH_POPs = mySpiNNaker.make_populations(spikes_list_flatten, EXC_POP_SIZE, INH_POP_SIZE)\n", + " INPUT_EXC_PRJ, EXC_EXC_PRJs = mySpiNNaker.make_projections_from_file(INPUT_POP, EXC_POPs, INH_POPs, weights_files)\n", + " #============================== Set what to be recorded\n", + " activities=['v', 'spikes']\n", + " mySpiNNaker.record_activities(activities, INPUT_POP, EXC_POPs, INH_POPs) \n", + " print(f'Runing simulator for {runtime}ms ...')\n", + " #============================== Run simulation\n", + " elapsed_time = mySpiNNaker.sim.run(runtime)\n", + " print('==========================================================================')\n", + " print(f'| Simulation terminated after {elapsed_time} ms ')\n", + " print('==========================================================================')\n", + "\n", + " mySpiNNaker.sim.end()\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "snntorch", + "language": "python", + "name": "snntorch" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.10" + }, + "vscode": { + "interpreter": { + "hash": "20a24a3a4007955ef5ee2dc9fb7716c1a03a2c0fc0e1cbee0d7177cafa6993b3" + } + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} -- GitLab