Otter Documentation =================== Developed under the `ExCALIBUR task parallelism cross-cutting research theme `__, Otter is a tool designed to facilitate data-driven parallelisation of serial code. Otter allows HPC developers to: - Annotate, trace & visualise loop/task-based serial code as a directed graph; - Recommend strategies for transforming serial code into effective task-based parallel code; - Non-invasively trace & visualise loop/task-based OpenMP 5.x programs. Check out the :doc:`installation ` page for instructions on installing Otter. .. note:: This project is under active development. .. toctree:: :hidden: :maxdepth: 2 Installation Otter Task Graph Otter OMPT PyOtter Otter Toolset ------------- The Otter toolset includes: - :doc:`Otter task-graph `: an API and runtime library for annotating & tracing the task-graph of a (possibly parallel) target application. - :doc:`Otter OMPT `: an OMPT plugin for non-invasive tracing of the loop/task-based structure of OpenMP 5.x programs. - :doc:`PyOtter `: The visualisation & reporting tool for use with Otter trace data. Issues, Questions and Feature Requests -------------------------------------- For **Otter task-graph** and **Otter-OMPT**, please post `here `__. For **PyOtter**, please post `here `__. Licensing --------- Otter is released under the BSD 3-clause license. See `LICENCE `__ for details. Copyright (c) 2021, Adam Tuft All rights reserved. Acknowledgements ---------------- Otter's development started as the subject of a final project and dissertation for the `Scientific Computing and Data Analysis MSc `__ (MISCADA) at Durham University, UK. The current research is supported by EPSRC's Excalibur programme through its cross-cutting project EX20-9 *Exposing Parallelism: Task Parallelism* (Grant ESA 10 CDEL). .. image:: /images/ExCALIBUR_colour.png :align: center :width: 250px :target: https://excalibur.ac.uk/projects/exposing-parallelism-task-parallelism/ :alt: /images/ExCALIBUR_colour.png