CFG Settings and Reports
This guide covers the cfg settings and the reports created.
- CFG Sections
- Report Files
- Notes for Developers
Logging
This section controls the logger
default
Default: info
Logging Level (in lower case) to be used.
instantiate
Default: True
Determines if logging is done or not
Machine
This section controls getting a spinnaker machine
- auto_detect_bmp
- bmp_names
- clear_routing_tables
- clear_tags
- disable_advanced_monitor_usage_for_data_in
- down_chips
- down_cores
- down_links
- enable_advanced_monitor_support
- enable_reinjection
- height
- ignore_bad_ethernets
- json_path
- machine_name
- machine_spec_file
- max_machine_core
- max_sdram_allowed_per_chip
- post_simulation_overrun_before_error
- remote_spinnaker_url
- repair_machine
- report_waiting_logs
- reset_machine_on_startup
- simulation_time_step
- spalloc_avoid_boards
- spalloc_group
- spalloc_machine
- spalloc_port
- spalloc_server
- spalloc_use_proxy
- spalloc_user
- time_scale_factor
- turn_off_machine
- version
- versions
- virtual_board
- width
auto_detect_bmp
Default: False
Only needed for physical board(s) with both am Ethernet and BMP cable connected. If True the assumption is the BMP ip addresss is one less than the Ethernet
bmp_names
Default: None
Only needed for physical board(s) with both am Ethernet and BMP cable connected.
format is:
- bmp_names =
[/( |board_id[,board_id]*) -
= -
where:
-
is the hostname or IP address of the BMP -
is a range of boards that the BMP can speak to -
is the ID of a single board in a frame
Note this no longer supports multiple host nor cabinet or frame
clear_routing_tables
Default: False
Clears the routing tables when end is called. Normally not needed.
clear_tags
Default: False
Clears the routing tables when end is called. Normally not needed.
disable_advanced_monitor_usage_for_data_in
Default: False
Truns off the usgae of the extra monitors for data in. This is now mainly a testing option aa the code will automatically disable the extra monitors for small simulations where it is not recommnded.
down_chips
Default: None
Testng Option to remove some chips from the Machine. See Syntax
down_cores
Default: None
Testng Option to remove some cores from the Machine.
Syntax for specifying a Chip, Core or Link in cfg values
format is:
down_cores = <down_core_id>[:<down_core_id]*
<down_core_id> = <chip_x>,<chip_y>,(<core_id>|<core_range>)[,<ip>]
<core_range> = <core_id>-<core_id>]*
down_chips = <down_chip_id>[:<down_chip_id]*
<down_chip_id> = <chip_x>,<chip_y>[,<ip>]
down_links = <down_link_id>:[:<down_link_id>]*
<down_link_id> = <chip_x>,<chip_y>,<link_id>[,<ip>]
where:
<chip_x> is the x-coordinate of a down chip
<chip_x> is the y-coordinate of a down chip
<core_id> is the virtual core ID of a core if > 0 or the physical core if <= 0
<link_id> is the link ID of a link between 0 and 5
<ip> is an OPTIONAL ip address in the 127.0.0.0 format.
If provided the <chip_x> <chip_y> will be considered local to the board with this ip address
down_links
Default: None
Testng Option to remove some links from the Machine. See Syntax
enable_advanced_monitor_support
Default: True
Enables the use of advance monitors. This delegate the transfer of data in and out of the machine to specific ocre. Highly recommnded unless using a physical board and needing all cores for your simulation to fit.
enable_reinjection
Default: True
Allows for the reinjection of packets if the first send fails. Highly recommnded unless testing the transceiver.
height
Default: None
Deprecated use version. Width for a virtual machine. If used requires width and virtual_board
ignore_bad_ethernets
Default: True
When True if any non ethernet chip claims it has a IP address this is logged and ignored When False the whole chip is removed
json_path
Default: None
A testing option. Creates a virtual board by reading a machine json file. If set other virtual_board options are ignored.
machine_name
Default: None
URL to physical board(s). Requires version
machine_spec_file
Default: None
This points to a second cfg file to read the machine details from This allows for easily switching your configs between different baords and spalloc. While designed for Machine settings can include any cfg setting. Technically each of the cfg except one pointed to by a machine_spec_file can have this option. It is read in directly after the pointer file. We recommend (and support) only using machine_spec_file in the cfg file in your home directory.
max_machine_core
Default: None
Testing Option. Decreases claimed per Chip if not None
max_sdram_allowed_per_chip
Default: None
Test option! Decreases claimed sdram if not None
post_simulation_overrun_before_error
Default: 5
Time in seconds that the simulation will wait for each board to be in the expected state. It is highly likely the core has errored after the default time has passed.
remote_spinnaker_url
Default: None
Used by HPAllocator. Will be a url
repair_machine
Default: False
Allows for temporary repair/hiding of hardware faults. This setting should always be False unless an error has been reported on spinnakerusers@googlegroups.com
report_waiting_logs
Default: False
Debugging option. If True adds logging while the host waits on cores to be in a particular state.
reset_machine_on_startup
Default: False
Will power cycle the boards at startup. Not needed normally.
simulation_time_step
Default: 1000
The time step of the simulations in microseconds. Ignored if setup is called with a timestep.
spalloc_avoid_boards
Default: None
An (optional) comma seperated list of ip addresses to avoid. This is a mainly for temporarily disabling boards that need to be blacklisted/ repaired.
spalloc_group
Default: None
The group to allocate the spalloc usage too. Ignored if the environment variable NMPI_JOB_ID (and optionaly) NMPI_USER are set. Also ignored if the current director points to a collab.
spalloc_machine
Default: None
Name of the Spalloc Machine to be used. Optional unless the URL points to multiple spalloc manchines.
spalloc_port
Default: 22244
The port for the spalloc server if used.
spalloc_server
Default: None
Url of the spalloc server.
spalloc_use_proxy
Default: True
Indicates that the spalloc proxy server is needed. Needed to access spalloc from a different network. Jupiter notebook users should leave this as set by the server admin.
spalloc_user
Default: None
The user for the spalloc server if used. Used if not part of the URL. If neither provided the environment variable SPALLOC_USERS will be tried. The matching password can only come from the URL or the environment variable SPALLOC_PASSWORD.
time_scale_factor
Default: None
Multiplicative factor to the machine time step (does not affect the neuron models accuracy) Ignored if setup is called with a time_scale_factor
turn_off_machine
Default: False
Adds an optional step to the end of the simulation to turn of physically connected boards.
version
Default: None
The hardware version of the spinnaker board being used
- version:
- 3: For a 4 chp board
- 5: For 1 or more 48 chip boards (including spalloc)
- 201: For a single chip spinnaker 2 board
- 248: Fot a 48 chip spinnaker 2 board
- This replaces deprecated “width” and “height” options
- “versions” option is for testing only and picks a version based on python version
versions
Default: None
Testing Option. Picks a valid version based on python version. Requires virtual_board
virtual_board
Default: False
If True a virtual board will be used. Requires version
width
Default: None
Deprecated use version. Width for a virtual machine. If used requires height and virtual_board
Database
This section covers the settings for the various databases used.
- create_database
- create_routing_info_to_neuron_id_mapping
- listen_port
- notify_hostname
- notify_port
- wait_on_confirmation
- wait_on_confirmation_timeout
create_database
Default: None
Testing Option. Overrides auto detection if an Input output database is needed.
create_routing_info_to_neuron_id_mapping
Default: True
Adds data abuout the routing to the Input output database Recommended to keep on unless you are absoltely sure it is not needed.
listen_port
Default: None
Port spinnaker uses to listen to database notifactions
notify_hostname
Default: localhost
IP adderess to which spiinaker will send database notifications
notify_port
Default: 19999
Port spinnaker uses to send database notifications
wait_on_confirmation
Default: True
Testing Option. Forces the NotificationProtocol to wait for confirmation when it send messages
wait_on_confirmation_timeout
Default: 10
Time in seconds for the NotificationProtocol to wait.
Mapping
Mapping options particularly which algorithms to run and how.
- compressor
- delay_support_adder
- external_binaries
- info_allocator
- placer
- precompressor
- router
- router_table_compress_as_far_as_possible
- routing_table_generator
- run_compression_checker
- validate_json
- validate_routes_uncompressed
- virtual_compressor
compressor
Default: PairOnChipRouterCompression
Which algorithm to use to generate the routing tables.</br> Supported values are:
- PairOnChipRouterCompression: Recommended! Looks for pairs with the same destination and tries to merge them. Make use of the order so late later merges may overlap with earlier ones.
- PairCompressor: On host/ virtual version
- PairUnorderedCompressor: Testing Option which does not make use of the order.
- OrderedCoveringOnChipRouterCompression: Older compressor which attempts to merge all routes with the ame desination at the same time Rarely more efficient that the Pair compressor. This is currently tested but not supported
- OrderedCoveringCompressor: On host version/ virtual version
Compression may not be needed.
delay_support_adder
Default: DelaySupportAdder
Algorthm for adding Delay verteices.</br> Currently supported options:
- DelaySupportAdder: Adds the standard Delays Vertcies if needed
- None: will skip the adder (Not Recommended) </br></br>
external_binaries
Default: None
Absolutele path to where user created and combined binaries are located.
info_allocator
Default: ZonedRoutingInfoAllocator
Which Key and mask allocator to use.</br> Supported values are:
- GlobalZonedRoutingInfoAllocator: Recommenned for most cases as produces the best results for compression.
- ZonedRoutingInfoAllocator: Less optimized so only use if the global one fails.</br></br>
placer
Default: ApplicationPlacer
Currently only ApplicationPlacer supported.
precompressor
Default: None
Testing option to add a second compressor before the name one. Only supported options are None and Ranged. No known case where compression only works with precompression.
router
Default: ApplicationRouter
Currently only ApplicationRouter supported
router_table_compress_as_far_as_possible
Default: False
Testing option. Will request the compressor to run/continue even if the tables are already small enough.
routing_table_generator
Default: MergedRoutingTableGenerator
Which algorithm to use to generate the routing tables</br> Supported values are:
- MergedRoutingTableGenerator: Recommenned as usually produces the best results.
- BasicRoutingTableGenerator: Less optimized so only use if the merged one fails.</br></br>
run_compression_checker
- key: run_compression_checker
- value: Debug
- key: path_compression_checker
- value: routing_compression_checker_report.rpt
Runs a check that the compressors worked and repors the results. Mainly used for testing changes to the algorithms or bugs.
validate_json
Default: Debug
Runs schema validation on json files created. Mainly used for testing changes to the algorithms or bugs.
validate_routes_uncompressed
Default: False
Runs a check that the routing tables are correct before compresssion. Mainly used for testing changes to the algorithms or bugs.
virtual_compressor
Default: PairCompressor
Which compressor to use when using a virtual_board As the “OnChip” version will fail! See compressor for legal values. If None the compressor option is used.
Reports
This section controls the reports being run and written.
- clear_iobuf_during_run
- default_report_file_path
- display_algorithm_timings
- draw_placements
- draw_placements_on_error
- extract_iobuf
- extract_iobuf_from_binary_types
- extract_iobuf_from_cores
- keep_data_database
- keep_dataspec_database
- keep_input_output_database
- keep_java_log
- keep_json_files
- keep_stack_trace
- max_reports_kept
- n_profile_samples
- network_graph_format
- path_drift_report
- path_ignores_report
- path_placement_errors_report
- provenance_report_cutoff
- read_graph_provenance_data
- read_placements_provenance_data
- read_profile_data
- read_provenance_data_on_end
- read_router_provenance_data
- remove_errored_folders
- tpath_global_provenance
- write_algorithm_timings
- write_application_graph_placer_report
- write_bit_field_compressor_report
- write_board_chip_report
- write_compressed
- write_compression_comparison
- write_compression_summary
- write_compressor_iobuf
- write_data_speed_up_reports
- write_energy_report
- write_expander_iobuf
- write_fixed_routes_report
- write_json_machine
- write_json_placements
- write_json_routing_tables
- write_memory_map_report
- write_network_graph
- write_network_specification_report
- write_partitioner_reports
- write_provenance
- write_redundant_packet_count_report
- write_router_info_report
- write_router_reports
- write_router_summary_report
- write_sdram_usage_report_per_chip
- write_tag_allocation_reports
- write_text_specs
- write_uncompressed
clear_iobuf_during_run
Default: True
At the end of each run the Chip iobuf can be cleared. Run after any extraction or if there is no extraction.
default_report_file_path
Default: DEFAULT
Directory into which the reports will be placed Should either an absolute path or “DEFAULT” to use the current directory In both cases a “reports” sub directory will be added
display_algorithm_timings
Default: True
Logs the time each algorithm took. Timings are always saved in the global provenance database They may also be written to file.
draw_placements
- key: draw_placements
- value: False
- key: path_placements
- value: placements.png
Developer debug option. Requires spinner to be manually installed otherwise is ignored. Not recently tested.
draw_placements_on_error
- key: draw_placements_on_error
- value: False
- key: path_placements_on_error
- value: placements_error.png
Developer debug option. Requires spinner to be manually installed otherwise is ignored. Not recently tested.
extract_iobuf
- key: extract_iobuf
- value: Debug
- key: path_iobuf_app
- value: provenance_data\app_provenance_data
- key: path_iobuf_system
- value: provenance_data\system_provenance_data
Reads the iobuf from the cores and saves them dividied by app and system cores.
extract_iobuf_from_binary_types
Default: None
Comma seperate list of binary names for cores to extract
extract_iobuf_from_cores
Default: ALL
Effects what iobuff is extrracted.
legal Values are:
- All: All cores . Ignores [extract_iobuf_from_binary_types)(extract_iobuf_from_binary_types)
- None: Use only cores specified by [extract_iobuf_from_binary_types)(extract_iobuf_from_binary_types)
- Some Syntax for some chips
keep_data_database
- key: keep_data_database
- value: Info
- key: path_data_database
- value: data(reset_str).sqlite3
Database file to hold data read back from the machine including Provenance. Always created as used during the run so this setting determines if it kept at the end.
keep_dataspec_database
- key: keep_dataspec_database
- value: Debug
- key: path_dataspec_database
- value: ds(reset_str).sqlite3
Database used to hold the data spec (to be) written to the cores. Always created as used during the run so this setting determines if it kept at the end.
keep_input_output_database
- key: keep_input_output_database
- value: Info
- key: path_input_output_database
- value: input_output_database.sqlite3
live event connection database. Includes metadata. Always created as used during the run so this setting determines if it kept at the end.
keep_java_log
- key: keep_java_log
- value: Debug
- key: path_java_log
- value: jspin.log
Log file always created when useing Java This determines if it is kept at the end.
keep_json_files
Default: Debug
If set False this will delete any json files written at the end of the run.
keep_stack_trace
- key: keep_stack_trace
- value: Info
- key: tpath_stack_trace
- value: stack_trace
If there is an error this is where the stack trace will be recorded. This determines if it is kept at the end.
max_reports_kept
Default: 10
The code will attempt to remove old directories in the Reports Folder if they have finished and/or possibly errored. This controls how many are kept.
n_profile_samples
Default: 0
Set to > 0 to allow profiler to gather samples (assuming enabled in the compiled aplx)
network_graph_format
Default: None
Format to use to draw a large graph Unless specified draw is disabled for large graphs For small graph the default format is used
path_drift_report
- key: path_drift_report
- value: clock_drift.csv
- key: write_drift_report_start
- value: Debug
- key: write_drift_report_end
- value: Debug
- key: drift_report_ethernet_only
- value: True
Reports the clock drift at the start and/or end of the run. Either all Chips or justthe ethernet ones.
path_ignores_report
Default: Ignores_report.rpt
Always written if there is a down core, chip or link declared
path_placement_errors_report
Default: placements_error.txt
Written if and only if there is a placement error.
provenance_report_cutoff
Default: 20
If provenace is being written to the database this will liit the amount that will be Logged
read_graph_provenance_data
Default: Debug
Reads graph provenance and writes it into the database
read_placements_provenance_data
Default: Debug
Reads placements provenance and writes it into the database
read_profile_data
Default: Debug
Reads profile provenance and writes it into the database
read_provenance_data_on_end
Default: Debug
Reads provenace data at the end and writes it into the database
read_router_provenance_data
Default: Debug
Reads router provenance and writes it into the database
remove_errored_folders
Default: True
If True will also Remove the older error runs.
tpath_global_provenance
Default: global_provenance.sqlite3
The database where provenance is stored. There is just one database no matter how many runs or resets are done. This database will hold logging if instantiated. This will always hold algorthm timing even if not displayed or written.
write_algorithm_timings
- key: write_algorithm_timings
- value: Debug
- key: tpath_algorithm_timings
- value: algorithm_timings.rpt
Writes a report of the time all algorithms took. Note this is a global report which covers all runs even after resets). Timings are always saved in the global provenance database They may also be logged.
write_application_graph_placer_report
- key: write_application_graph_placer_report
- value: Info
- key: path_application_graph_placer_report_vertex
- value: placement_by_vertex_using_graph.rpt
- key: path_application_graph_placer_report_core
- value: placement_by_core_using_graph.rpt
Writes both placement reports
write_bit_field_compressor_report
- key: write_bit_field_compressor_report
- value: Debug
- key: path_bit_field_compressor_report
- value: bit_field_compressed_summary.rpt
writes the bit rield compressor report. Run even without bitfield compression.
write_board_chip_report
- key: write_board_chip_report
- value: Debug
- key: path_board_chip_report
- value: board_chip_report.txt
Writes the reort of the board(s) in use
write_compressed
- key: write_compressed
- value: Debug
- key: path_compressed
- value: compressed_routing_tables_generated
Writes the compressed routing tables. Any report for compression may trigger reading these off the machine. Compression may only be as far as needed [See]router_table_compress_as_far_as_possible) not as far as possible.
write_compression_comparison
- key: write_compression_comparison
- value: Debug
- key: path_compression_comparison
- value: comparison_of_compressed_uncompressed_routing_tables.rpt
Compares the uncompressed and the compressed routing tables. See write_compressed
write_compression_summary
- key: write_compression_summary
- value: Debug
- key: path_compression_summary
- value: compressed_routing_summary.rpt
Write a summary of the compression done. See write_compressed
write_compressor_iobuf
Default: Debug
Reads and writes the commpressor iobuff. There will be no iobuf if a host compressor is used or there is no need to compress This will be written to path_iobuf_system
write_data_speed_up_reports
- key: write_data_speed_up_reports
- value: Debug
- key: path_data_speed_up_reports_speeds
- value: speeds_gained_in_speed_up_process.rpt
- key: path_data_speed_up_reports_routers
- value: routers_used_in_speed_up_process.rpt
Runs the reports relating to data speed up. In small runs advance monitors may not be used even if enabled in which case there will be no report.
write_energy_report
- key: write_energy_report
- value: False
- key: path_energy_report
- value: energy_report_(n_run).rpt
Runs the energy reports. This includes adding energy monitor cores which will change placements. Therefor the default value is not Info or Debug
write_expander_iobuf
Default: Debug
Reads and writes the iobuff from the onchip synapse expander. Will be written with System iobuff
write_fixed_routes_report
- key: write_fixed_routes_report
- value: Debug
- key: path_fixed_routes_report
- value: fixed_route_routers
Writes the report for fisxed yours if they are used. Unlikely to exist in enable_advanced_monitor_support is False
write_json_machine
- key: write_json_machine
- value: Debug
- key: path_json_machine
- value: json_files\machine.json
Write a description of the machine in json format. May be [Deleted at the end of the run].(keep_json_files)
write_json_placements
- key: write_json_placements
- value: Debug
- key: path_json_placements
- value: json_files\placements.json
Writes a description of the placements in json format May be [Deleted at the end of the run].(keep_json_files)
write_json_routing_tables
- key: write_json_routing_tables
- value: Debug
- key: path_json_routing_tables
- value: json_files\routing_tables.json
Writes a description of the routing tables in json format May be [Deleted at the end of the run].(keep_json_files)
write_memory_map_report
- key: write_memory_map_report
- value: Debug
- key: path_memory_map_report_map
- value: memory_map_from_processor_to_address_space
- key: path_memory_map_reports
- value: memory_map_reports
Writes all the memry map reports. the summary and one per Core..
write_network_graph
- key: write_network_graph
- value: Debug
- key: path_network_graph
- value: network_graph.gv
Draws a grpah of the network using graphviz (Which most be installed)
write_network_specification_report
- key: write_network_specification_report
- value: Info
- key: path_network_specification_report
- value: network_specification.rpt
Write the details of the network.
write_partitioner_reports
- key: write_partitioner_reports
- value: Info
- key: path_partitioner_reports
- value: partitioned_by_vertex.rpt
Reports how the Application Vertices/ Populations where partitioned into Machine Vertices/ Cores.
write_provenance
Default: Info
Reads other provenance and writes it into the database
write_redundant_packet_count_report
- key: write_redundant_packet_count_report
- value: Info
- key: path_redundant_packet_count_report
- value: redundant_packet_count.rpt
Writes a report showing how many redundant packets where recorded.
write_router_info_report
- key: write_router_info_report
- value: Info
- key: path_router_info_report
- value: virtual_key_space_information_report.rpt
Write reports showing the keys and masks
write_router_reports
- key: write_router_reports
- value: Debug
- key: path_router_reports
- value: edge_routing_info.rpt
Reports the routes used for each partition.
write_router_summary_report
- key: write_router_summary_report
- value: Debug
- key: path_router_summary_report
- value: routing_summary.rpt
Writes a summary of the routes used per Chip
write_sdram_usage_report_per_chip
- key: write_sdram_usage_report_per_chip
- value: Info
- key: path_sdram_usage_report_per_chip
- value: chip_sdram_usage_by_core.rpt
Generates a report on the Sdram usage per Chip and how it was calculated.
write_tag_allocation_reports
- key: write_tag_allocation_reports
- value: Debug
- key: path_tag_allocation_reports_host
- value: tags.rpt
- key: path_tag_allocation_reports_machine
- value: tags_on_machine.txt
writes both tag reports.
write_text_specs
- key: write_text_specs
- value: Debug
- key: path_text_specs
- value: data_spec_text_files
Writes a text version of the dataspecs. Note: The database is what is actually used for loading the data specs.
write_uncompressed
- key: write_uncompressed
- value: Debug
- key: path_uncompressed
- value: routing_tables_generated
Writes the uncompressed routing tables.
Buffers
This section control if runs are divided into smaller runs and how.
minimum_auto_time_steps
Default: 1000
If using Auto pause loops This will guarantee a minimum time of each of the loops. This will cause the cause the partititioner to divide the vertex/Population over enough cores.
use_auto_pause_and_resume
Default: True
For very long runs (that would run out of memory) this will split the run into multiple shorted runs with data extraction between them. As no affect for runs that do not need this.
Mode
Semantic sugar for enabling lots of reports at once.
mode
Default: Production
Mode allow to globally turn on groups of reports.
- Mode will never turn off a report set to True in the cfg file
- Only the value from the last cfg file read is used.
- Default file
- Home directory
- Script directory
- Mode acts after all cfg files have been read
- The values of mode supported are:
- Production: Does not turn on any cfg options. All cfg values of “info” and “debug” will be replaced with False This is the recommended value for users not interested in reports.
- Info: Turns on the the most import reports. All cfg values of “info” are replaced with True while “debug” will be replaced with False This is the recommended value or users interested in the main reports.
- Debug: Turns on all reports except ones which change the Placements All cfg values of “info” and “debug” will be replaced with True This is the value used by some tests.
- All: Testing option. Likely to be removed.
- To change what is included in each mode change the values True, Info or Debug
- Warning changing these values to False may break some tests.
violate_1ms_wall_clock_restriction
Default: False
Used if time_step * (timescale)[time_scale_factor] < 1000 as this may result in errors.
EnergyMonitor
Setting for the Energy Monitor
n_samples_per_recording_entry
Default: 100
The number of smaples taken in each recording of the Energy Monitor.
sampling_frequency
Default: 10
How often Energy Monitor will sample, in microseconds
Java
This section controls the seetting to active the use of Java
java_call
Default: java
Call to start a Java process. If there is no jdk../bin in your class path this must include the full path
java_jar_path
Default: None
Indirect method to find the jar file for Java to run. Should only be used if java_spinnaker_path and its default can not be used
java_properties
Default: None
Properties flag to be passed into every Java call. Unlikely to be needed unless Testing or debugging.
Default logging level is info so NO properties needed
Each Property must start with the -D flag To turn on debug level logging (lots) java_properties=-Dlogging.level=DEBUG
Multiple properties are supported. Properties must be separated with a space and without quotes. ex: java_properties=-Dspinnaker.compare.download -Dlogging.level=DEBUG
Supported properties are:
- spinnaker.compare.download: enables comparisons of multiple download methods; slow
- spinnaker.parallel_tasks: how many downloads to do in parallel; default: 4
- logging.level: defaults to INFO; DEBUG is also useful
- logging.udp enables low-level logging of UDP traffic; produces a lot of output
- spinnaker.scp_timeout how long to wait for SCP replies from SpiNNaker, in milliseconds, which may need to be raised on very busy networks; default: 1000
java_spinnaker_path
Default: None
Inidrect method to find the jar file for Java to run. Absolute path to where the JavaSpiNNaker git repository is located. This must point to a local copy of https://github.com/SpiNNakerManchester/JavaSpiNNaker It must also have been built! If none it will be assumed to be in the same parent directory as SpiNNFrontEndCommon Note: Do not quote even if path has spaces as these added by subprocess.call
path_json_java_placements
Default: json_files\java_placements.json
Path to the json file with the placement information needed by Java.
use_java
Default: False
Contorls if the sending of the data in and out is delegated to Java. Requires additional setup but will be faster especially for jobs using more than one board.
Simulation
The section covers settings which control how the models behave.
- drop_late_spikes
- error_on_non_spynnaker_pynn
- incoming_spike_buffer_size
- n_colour_bits
- ring_buffer_sigma
- spikes_per_second
- transfer_overhead_clocks
drop_late_spikes
Default: False
performance limiter to throw away packets not processed in a given time step
error_on_non_spynnaker_pynn
Default: True
Whether to error or just warn on non-spynnaker-compatible PyNN
incoming_spike_buffer_size
Default: 256
The amount of space to reserve for incoming spikes
n_colour_bits
Default: 4
The number of “colour” bits to use by default. This is used to account for delays over the network that are bigger than 1 time step
ring_buffer_sigma
Default: 5
The number of standard deviations from the mean to account for in the ring buffer in terms of how much safety in precision vs overflowing the end user is willing to risk
spikes_per_second
Default: 30
Maximum spikes per second of any neuron (spike rate in Hertz) Used by all neurons that need this for planning, unless a different value is provided.
transfer_overhead_clocks
Default: 200
The overhead to add to the transfer clocks when using a split synapse neuron model
Recording
Section for the sending of live spikes.
live_spike_host
Default: 0.0.0.0
Host for the Live Packe tGather
live_spike_port
Default: 17895
Port for the Live Packe tGather
Report Files
- Ignores_report.rpt
- algorithm_timings.rpt
- bit_field_compressed_summary.rpt
- board_chip_report.txt
- chip_sdram_usage_by_core.rpt
- clock_drift.csv
- comparison_of_compressed_uncompressed_routing_tables.rpt
- compressed_routing_summary.rpt
- compressed_routing_tables_generated
- data(reset_str).sqlite3
- data_spec_text_files
- ds(reset_str).sqlite3
- edge_routing_info.rpt
- energy_report_(n_run).rpt
- fixed_route_routers
- global_provenance.sqlite3
- input_output_database.sqlite3
- json_files\java_placements.json
- json_files\machine.json
- json_files\placements.json
- json_files\routing_tables.json
- jspin.log
- memory_map_from_processor_to_address_space
- memory_map_reports
- network_graph.gv
- network_specification.rpt
- partitioned_by_vertex.rpt
- placement_by_core_using_graph.rpt
- placement_by_vertex_using_graph.rpt
- placements.png
- placements_error.png
- placements_error.txt
- provenance_data\app_provenance_data
- provenance_data\system_provenance_data
- redundant_packet_count.rpt
- routers_used_in_speed_up_process.rpt
- routing_compression_checker_report.rpt
- routing_summary.rpt
- routing_tables_generated
- speeds_gained_in_speed_up_process.rpt
- stack_trace
- tags.rpt
- tags_on_machine.txt
- virtual_key_space_information_report.rpt
# Notes for Developers This section is aimed at developers writing code that uses cfg settings or adding new ones
- cfg rules
- Section names are case-sensitive with the recommend format being a single Capitalized word.
- Option names for users are not case or underscore sensitive.
- In code all options names must be exact matches (case and underscores). The recommended format is all lower with words seperated by underscore.
- Any cfg option used must be declared in the default files
- All cfg options declared must be used
- All cfg options must only be declared in one default file
- All cfg options keys should be unique even between sections and not be section names.
- Section “Mode” and option “mode” are a handled exception.
- Special @ options
- @: Adds documentation for this section
- @(option): Adds documentation for this option
- @group_(source_option) = target_option: The key and value of the source_option will be grouped with the target_option. This can be N - N, but transative is not supported.
- Start of option keys with special meanings.
(t)path ones will be removed and auto grouped with the matching one.
If and only if the part after the first underscore is an exact match.
- draw_: Flag to say file(s) should be created
- keep_: Flag to say if files should be kept at the end of the run. These ffiles may still be created.
- path_: Path to a file to be placed in the run folder
- run_: Flag to say something should run which may create files
- tpath_: Path to a file to be placed in the timestamp folder
- write_: Flag to say file/report should be written
- Notes on cfg documentation.
- Should be designed for an md file.
- Can be multline. Just indent from the key.
- Indent is stripped out.
- Newlines are kept but remember are often ignored in md files
- Use </br> at the end of a line (or leave a blank line) if a new line is needed.
- Use \t* to add a sub bullet. (Will replace \t(s) with spaces)
- Use \t (without the *) for a real none bullet indent. (Will replace \t with \ \ )
- Supports md links in the [Title](Link) format.
- Link can be any cfg option key except those tagged with @group.
- The # reguired by markdown will be added if needed.
- Where keys are auto grouped any of these can be used.
- Link can be an external url.