Skip to content
Snippets Groups Projects
Commit b5ac6ceb authored by Christopher Haine's avatar Christopher Haine
Browse files

tuning

parent d6dec3ed
Branches
No related tags found
No related merge requests found
Tuning
======
Make Maestro Core perform.
Knobs
-----
Maestro features a range of environment variables, the full list and doc follows.
Maestro is relying on OFI for network operations, therefore the usual OFI knobs
can also be played with.
.. doxygengroup:: MSTRO_ENV
Telemetry
---------
``MSTRO_LOG_LEVEL`` environment controls the verbosity of the Maestro logs, and
can take the following values: error, warning, info, debug, noise. By default
Maestro Core outputs to ``stderr``, one may also choose ``stdout`` or
``syslog`` via ``MSTRO_LOG_DST=syslog``
Log lines look like
.. code-block:: bash
[I:pm] Simple_Pool_Manager:0 1 CQ-H-0-0 (nid00001 777) 22222479341864000: mstro_pm__handle_join_phase2(pool_manager.c:2540) JOIN message received. Caller Client:2 is now known as app #2
Which reads as
.. code-block:: bash
[<log level>:<log module>] <component_name>:<rank_id> <app_id> <thread_id> (<hostname> <pid>) <timestamp>: <function>(<file>:<lineno>) <message>
Profiling
---------
A couple of utilities shipped with Maestro core may complement well existing profiling tools reports to analyse Maestro-enabled workflows:
* ``$(MAESTRO_PATH)/examples/core_bench`` runs a benchmark that shows some basic numbers
* ``$(MAESTRO_PATH)/visualise/vis.py`` proposes an in-browser interactive visualisation of a Maestro-enabled workflow
* ``$(MAESTRO_PATH)/examples/transport_bars.py`` plots timings of Maestro operations relative on transport, based on a Maestro logs input
Scheduling
----------
TODO
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment