# Nodify Tensorboard Plugin
<p align="center">
<img height='100px' src="https://www.ocf.berkeley.edu/~asai/static/images/trainy.png">
</p>
[![License](https://img.shields.io/badge/License-BSD_3--Clause-blue.svg)](https://opensource.org/licenses/BSD-3-Clause)
![GitHub Repo stars](https://img.shields.io/github/stars/Trainy-ai/nodify?style=social)
[![](https://img.shields.io/badge/Twitter-1DA1F2?style=for-the-badge&logo=twitter&logoColor=white)](https://twitter.com/TrainyAI)
[![](https://dcbadge.vercel.app/api/server/d67CMuKY5V)](https://discord.gg/d67CMuKY5V)
This is a tensorboard plugin by [Trainy](https://trainy.ai) to supplement the existing [PyTorch Profiler](https://pytorch.org/tutorials/intermediate/tensorboard_profiler_tutorial.html). This provides additional visualizations to effectively characterize traces for runs involving multiple GPUs. The plugin expects all traces to be collected using `torch.profile` and to be located in the same folder.
## Installation & Quickstart
Install tensorboard and the plugin.
```
pip install tensorboard
pip install nodify-plugin
```
Generate PyTorch profiler traces as shown [here](https://pytorch.org/tutorials/recipes/recipes/profiler_recipe.html) and bring up the tensorboard where your traces are living. A set of example logs are provided in this repo under `log/resnet18`
```
tensorboard --logdir log/resnet18/
```
## Development
To view the plugin for development, create a virtual environment, install the requirements, and install the plugin.
```
python -m venv venv
. venv/bin/activate
pip install -e .
```
## Feature roadmap
A lot of the features on the roadmap use Meta's [Dynolog](https://developers.facebook.com/blog/post/2022/11/16/dynolog-open-source-system-observability/), [kineto](https://github.com/pytorch/kineto), and [holistic trace analyzer](https://pytorch.org/blog/trace-analysis-for-masses/).
* On-demand tracing and metrics through dynologger
* Recommendations for fixing multinode bottlenecks
* reading from logs stored on cloud object-stores (e.g. Amazon S3, Azure Blob)
## Contributing
For feature requests or bug reports/fixes, feel free to open a Github issue or make a pull request. We'd love to connect with any interested developers and we check our [Discord](https://discord.gg/d67CMuKY5V) to discuss the direction of our projects everyday. Connect with us either throught the text channels or through DM's.
Raw data
{
"_id": null,
"home_page": "",
"name": "nodify-plugin",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "pytorch tensorboard profile plugin",
"author": "Trainy Team",
"author_email": "founders@trainy.ai",
"download_url": "https://files.pythonhosted.org/packages/a7/e9/81593ad6f39a869719b541c7ff7188c2de80084e6dfc6795b36ff93784f4/nodify_plugin-0.1.5.tar.gz",
"platform": null,
"description": "# Nodify Tensorboard Plugin\n\n<p align=\"center\">\n <img height='100px' src=\"https://www.ocf.berkeley.edu/~asai/static/images/trainy.png\">\n</p>\n\n[![License](https://img.shields.io/badge/License-BSD_3--Clause-blue.svg)](https://opensource.org/licenses/BSD-3-Clause)\n![GitHub Repo stars](https://img.shields.io/github/stars/Trainy-ai/nodify?style=social)\n[![](https://img.shields.io/badge/Twitter-1DA1F2?style=for-the-badge&logo=twitter&logoColor=white)](https://twitter.com/TrainyAI)\n[![](https://dcbadge.vercel.app/api/server/d67CMuKY5V)](https://discord.gg/d67CMuKY5V)\n\nThis is a tensorboard plugin by [Trainy](https://trainy.ai) to supplement the existing [PyTorch Profiler](https://pytorch.org/tutorials/intermediate/tensorboard_profiler_tutorial.html). This provides additional visualizations to effectively characterize traces for runs involving multiple GPUs. The plugin expects all traces to be collected using `torch.profile` and to be located in the same folder.\n\n## Installation & Quickstart\n\nInstall tensorboard and the plugin.\n```\npip install tensorboard\npip install nodify-plugin\n```\n\nGenerate PyTorch profiler traces as shown [here](https://pytorch.org/tutorials/recipes/recipes/profiler_recipe.html) and bring up the tensorboard where your traces are living. A set of example logs are provided in this repo under `log/resnet18`\n\n```\ntensorboard --logdir log/resnet18/\n```\n\n## Development\n\nTo view the plugin for development, create a virtual environment, install the requirements, and install the plugin.\n\n```\npython -m venv venv\n. venv/bin/activate\npip install -e .\n``` \n\n## Feature roadmap\n\nA lot of the features on the roadmap use Meta's [Dynolog](https://developers.facebook.com/blog/post/2022/11/16/dynolog-open-source-system-observability/), [kineto](https://github.com/pytorch/kineto), and [holistic trace analyzer](https://pytorch.org/blog/trace-analysis-for-masses/).\n\n* On-demand tracing and metrics through dynologger\n* Recommendations for fixing multinode bottlenecks\n* reading from logs stored on cloud object-stores (e.g. Amazon S3, Azure Blob)\n\n## Contributing\n\nFor feature requests or bug reports/fixes, feel free to open a Github issue or make a pull request. We'd love to connect with any interested developers and we check our [Discord](https://discord.gg/d67CMuKY5V) to discuss the direction of our projects everyday. Connect with us either throught the text channels or through DM's.\n",
"bugtrack_url": null,
"license": "BSD-3",
"summary": "Nodify Tensorboard Plugin.",
"version": "0.1.5",
"project_urls": null,
"split_keywords": [
"pytorch",
"tensorboard",
"profile",
"plugin"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "fdd7b109bcb2e83209b7361671b9107b28d04e6bc66a0fe81761f56284c2047e",
"md5": "5108a53b84e0d1e47c795c416558c0f8",
"sha256": "213a44eec3bb8b9120370da42de66811bd3e93574f72871c92a740b8a8f6de34"
},
"downloads": -1,
"filename": "nodify_plugin-0.1.5-py3-none-any.whl",
"has_sig": false,
"md5_digest": "5108a53b84e0d1e47c795c416558c0f8",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 1335285,
"upload_time": "2023-08-18T00:38:12",
"upload_time_iso_8601": "2023-08-18T00:38:12.462966Z",
"url": "https://files.pythonhosted.org/packages/fd/d7/b109bcb2e83209b7361671b9107b28d04e6bc66a0fe81761f56284c2047e/nodify_plugin-0.1.5-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "a7e981593ad6f39a869719b541c7ff7188c2de80084e6dfc6795b36ff93784f4",
"md5": "91e94f66c80204fd3f87c0025593c50e",
"sha256": "4c6b93645aca3409f57c273af91a5e225db13fce4f0bd41ab8596fc72396bfe1"
},
"downloads": -1,
"filename": "nodify_plugin-0.1.5.tar.gz",
"has_sig": false,
"md5_digest": "91e94f66c80204fd3f87c0025593c50e",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 1332765,
"upload_time": "2023-08-18T00:38:14",
"upload_time_iso_8601": "2023-08-18T00:38:14.222830Z",
"url": "https://files.pythonhosted.org/packages/a7/e9/81593ad6f39a869719b541c7ff7188c2de80084e6dfc6795b36ff93784f4/nodify_plugin-0.1.5.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-08-18 00:38:14",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "nodify-plugin"
}