snudda.utils.benchmark_logging

class snudda.utils.benchmark_logging.BenchmarkLogging(network_path, parallel_flag=False, log_file=None, running_neuron=False)[source]

Saves benchmark logging when running snudda from command line.

Trivial example below:

import time bl = BenchmarkLogging(“/home/hjorth/HBP/Snudda/snudda”) bl.start_timer(“test”) time.sleep(1) bl.start_timer(“test2”) time.sleep(2) bl.stop_timer(“test2”) bl.stop_timer(“test”) bl.write_log()

Constructor.

Parameters
  • network_path (str) – Path to network

  • parallel_flag (bool) – Running in parallel, should we determine number of workers?

  • log_file (str) – Log file to save text to

  • running_neuron (bool) – Are we running NEURON? (Sets method for determining number of workers)

static get_network_name(network_path)[source]

Returns network name based on network_path.

get_number_of_workers(running_neuron)[source]

Returns number of workers.

Parameters

running_neuron (bool) – Are we running NEURON? Used when determining number of workers).

start_timer(item_name)[source]

Start benchmark timer for item_name.

stop_timer(item_name)[source]

Stops benchmark timer for item_name.

write_log()[source]

Writes to log.