.. _benchmark_tvb_261: ReferenceBackend vs NbMPRBackend --------------------------------- Since version 2.6, a simulation backend based on Numba is available in TVB. For now, only the ``MontbrioPazoRoxin`` model is supported with this backend and the other configurations of the simulator are also constrained to certain values or types. Nevertheless, this backend looks promising if we analyse the benchmarking results below: ********************** Benchmarks - TVB 2.6.1 ********************** +------------+-----------------------------------------------------------------+ | System Info | +============+=================================================================+ |OS | OS X Monterey 12.0.1 | +------------+-----------------------------------------------------------------+ |Memory | 16 GB | +------------+-----------------------------------------------------------------+ |Processor | Apple M1 Pro | +------------+-----------------------------------------------------------------+ |TVB version | 2.6.1 - Mac x64 | +------------+-----------------------------------------------------------------+ |Run on | 19.08.2022 | +------------+-----------------------------------------------------------------+ Below are the results of benchmarking the ``ReferenceBackend`` vs the ``NbMPRBackend``. All unspecified parameters have the default values. +--------------------+------------------------------------+ | Case A | +====================+====================================+ |Model | MontbrioPazoRoxin | +--------------------+------------------------------------+ |Coupling | Linear | +--------------------+------------------------------------+ |Dimension | 2 state variables | +--------------------+------------------------------------+ |Integration method | HeunStochastic | +--------------------+------------------------------------+ |Monitor | TemporalAverage | +--------------------+------------------------------------+ |Monitor period | 0.1 | +--------------------+------------------------------------+ +-----------------------+------------------------+--------+-------+-----------+---------+-----------+ | Results | +-----------------------+------------------------+--------+-------+-----------+---------+-----------+ | Backend | Model | Sim. | Nodes |Conduction | time | Execution | | | | Length | |speed | step | time | +-----------------------+------------------------+--------+-------+-----------+---------+-----------+ | | | (ms)| | (mm/ms)| (ms)| min:sec | +=======================+========================+========+=======+===========+=========+===========+ | ReferenceBackend | MontbrioPazoRoxin | 1000 | 100 | inf | 0.005 | 01:18 | +-----------------------+------------------------+--------+-------+-----------+---------+-----------+ | NbMPRBackend | MontbrioPazoRoxin | 1000 | 100 | inf | 0.005 | 00:07 | +-----------------------+------------------------+--------+-------+-----------+---------+-----------+ | ReferenceBackend | MontbrioPazoRoxin | 20000 | 100 | inf | 0.005 | 26:15 | +-----------------------+------------------------+--------+-------+-----------+---------+-----------+ | NbMPRBackend | MontbrioPazoRoxin | 20000 | 100 | inf | 0.005 | 01:55 | +-----------------------+------------------------+--------+-------+-----------+---------+-----------+ | ReferenceBackend | MontbrioPazoRoxin | 1000 | 76 | inf | 0.005 | 00:40 | +-----------------------+------------------------+--------+-------+-----------+---------+-----------+ | NbMPRBackend | MontbrioPazoRoxin | 1000 | 76 | inf | 0.005 | 00:05 | +-----------------------+------------------------+--------+-------+-----------+---------+-----------+