Skip to main content

XProf Profiler Plugin

Project description

XProf (+ Tensorboard Profiler Plugin)

XProf includes a suite of tools for JAX, TensorFlow, and PyTorch/XLA. These tools help you understand, debug and optimize programs to run on CPUs, GPUs and TPUs.

XProf offers a number of tools to analyse and visualize the performance of your model across multiple devices. Some of the tools include:

  • Overview: A high-level overview of the performance of your model. This is an aggregated overview for your host and all devices. It includes:
    • Performance summary and breakdown of step times.
    • A graph of individual step times.
    • A table of the top 10 most expensive operations.
  • Trace Viewer: Displays a timeline of the execution of your model that shows:
    • The duration of each op.
    • Which part of the system (host or device) executed an op.
    • The communication between devices.
  • Memory Profile Viewer: Monitors the memory usage of your model.
  • Graph Viewer: A visualization of the graph structure of HLOs of your model.

Demo

First time user? Come and check out this Colab Demo.

Prerequisites

  • tensorboard-plugin-profile >= 2.19.0
  • (optional) TensorBoard >= 2.19.0

Note: XProf requires access to the Internet to load the Google Chart library. Some charts and tables may be missing if you run TensorBoard entirely offline on your local machine, behind a corporate firewall, or in a datacenter.

To profile on a single GPU system, the following NVIDIA software must be installed on your system:

  1. NVIDIA GPU drivers and CUDA Toolkit:

    • CUDA 12.5 requires 525.60.13 and higher.
  2. Ensure that CUPTI 10.1 exists on the path.

    $ /sbin/ldconfig -N -v $(sed 's/:/ /g' <<< $LD_LIBRARY_PATH) | grep libcupti
    

    If you don't see libcupti.so.12.5 on the path, prepend its installation directory to the $LD_LIBRARY_PATH environmental variable:

    $ export LD_LIBRARY_PATH=/usr/local/cuda/extras/CUPTI/lib64:$LD_LIBRARY_PATH
    

    Run the ldconfig command above again to verify that the CUPTI 12.5 library is found.

    If this doesn't work, try:

    $ sudo apt-get install libcupti-dev
    

To profile a system with multiple GPUs, see this guide for details.

To profile multi-worker GPU configurations, profile individual workers independently.

To profile cloud TPUs, you must have access to Google Cloud TPUs.

Quick Start

In order to get the latest version of the profiler plugin, you can install the nightly package.

To install the nightly version of profiler:

$ pip uninstall xprof
$ pip install xprof-nightly

Without TensorBoard:

$ xprof --logdir=profiler/demo --port=6006

With TensorBoard:

$ tensorboard --logdir=profiler/demo

If you are behind a corporate firewall, you may need to include the --bind_all tensorboard flag.

Go to localhost:6006/#profile of your browser, you should now see the demo overview page show up. Congratulations! You're now ready to capture a profile.

Next Steps

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

xprof-2.20.0.tar.gz (5.9 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

xprof-2.20.0-cp312-none-win_amd64.whl (10.5 MB view details)

Uploaded CPython 3.12Windows x86-64

xprof-2.20.0-cp312-none-manylinux2014_x86_64.whl (12.5 MB view details)

Uploaded CPython 3.12

xprof-2.20.0-cp312-none-macosx_12_0_arm64.whl (10.7 MB view details)

Uploaded CPython 3.12macOS 12.0+ ARM64

xprof-2.20.0-cp311-none-win_amd64.whl (10.5 MB view details)

Uploaded CPython 3.11Windows x86-64

xprof-2.20.0-cp311-none-manylinux2014_x86_64.whl (12.5 MB view details)

Uploaded CPython 3.11

xprof-2.20.0-cp311-none-macosx_12_0_arm64.whl (10.7 MB view details)

Uploaded CPython 3.11macOS 12.0+ ARM64

xprof-2.20.0-cp310-none-manylinux2014_x86_64.whl (12.5 MB view details)

Uploaded CPython 3.10

xprof-2.20.0-cp310-none-macosx_12_0_arm64.whl (10.7 MB view details)

Uploaded CPython 3.10macOS 12.0+ ARM64

xprof-2.20.0-cp39-none-win_amd64.whl (10.5 MB view details)

Uploaded CPython 3.9Windows x86-64

xprof-2.20.0-cp39-none-manylinux2014_x86_64.whl (12.5 MB view details)

Uploaded CPython 3.9

xprof-2.20.0-cp39-none-macosx_12_0_arm64.whl (10.7 MB view details)

Uploaded CPython 3.9macOS 12.0+ ARM64

File details

Details for the file xprof-2.20.0.tar.gz.

File metadata

  • Download URL: xprof-2.20.0.tar.gz
  • Upload date:
  • Size: 5.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.10

File hashes

Hashes for xprof-2.20.0.tar.gz
Algorithm Hash digest
SHA256 a37817c6a9ca80e130a48ba7cf7edcc6cefcd0761c5b4764fd85fe4e23f28ea0
MD5 4f9a1724edad3d69d0c2183c78344e07
BLAKE2b-256 3e339381a740a18d61d7611d8118eb5865c489463e322f77429d1884537b7ba6

See more details on using hashes here.

File details

Details for the file xprof-2.20.0-cp312-none-win_amd64.whl.

File metadata

  • Download URL: xprof-2.20.0-cp312-none-win_amd64.whl
  • Upload date:
  • Size: 10.5 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.10

File hashes

Hashes for xprof-2.20.0-cp312-none-win_amd64.whl
Algorithm Hash digest
SHA256 b2e5babe6d30b5d4bca6bddc5ed5063d853f64bf8799872e46b7b7287b55771e
MD5 56524fc6c6ca66d4114828a9db92c3dd
BLAKE2b-256 cb4dcf00de920e232e7abac109fc6c8aa58bd511bb70c1b5faed6435b8415516

See more details on using hashes here.

File details

Details for the file xprof-2.20.0-cp312-none-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for xprof-2.20.0-cp312-none-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 94bf8a21a1ca8e5fc2b1954563165b5c04ec12551a39964d8ffd39a112232550
MD5 a6d74aa999305153d23c024186d93189
BLAKE2b-256 9517f73f13cfeb2ea055cbdfe104623349a381721116e90e139a96f083fb7e97

See more details on using hashes here.

File details

Details for the file xprof-2.20.0-cp312-none-macosx_12_0_arm64.whl.

File metadata

File hashes

Hashes for xprof-2.20.0-cp312-none-macosx_12_0_arm64.whl
Algorithm Hash digest
SHA256 c503976397f0c175d942f4b8504020af3a4796eeafea6e837e4e1c52ef4ff1de
MD5 3d57d678541f0105db3ea0804a18a862
BLAKE2b-256 844b98642cab66caa801852bde3428ebac70e351fce7b3f810f19e264679820d

See more details on using hashes here.

File details

Details for the file xprof-2.20.0-cp311-none-win_amd64.whl.

File metadata

  • Download URL: xprof-2.20.0-cp311-none-win_amd64.whl
  • Upload date:
  • Size: 10.5 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.10

File hashes

Hashes for xprof-2.20.0-cp311-none-win_amd64.whl
Algorithm Hash digest
SHA256 a98ac39be03177bad1409beb7d77088a62abea273b0013fe6d1e858d422cccb1
MD5 8ef0a64d5236ba0ad08e1ba362176a1a
BLAKE2b-256 bdf1a3ede9dc5c799bee2c810e89201be36a412517c66ebb2543f829599c9b26

See more details on using hashes here.

File details

Details for the file xprof-2.20.0-cp311-none-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for xprof-2.20.0-cp311-none-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 31b09afd31feac637d3137f1e2bdf92d86ba69891067a1298a5d1713ef067185
MD5 ce4774344d823921c1d6c76012f4d4cd
BLAKE2b-256 88b9ce29449eb433bd1b2b84fba23bb4c717c3325e4a2e214b9997cf1517cf32

See more details on using hashes here.

File details

Details for the file xprof-2.20.0-cp311-none-macosx_12_0_arm64.whl.

File metadata

File hashes

Hashes for xprof-2.20.0-cp311-none-macosx_12_0_arm64.whl
Algorithm Hash digest
SHA256 37ea3988fa6ca06c7fad34785160e48a6e64fa28abd1bd926c2f309b706fc884
MD5 4fc61a87923056a71c1f6ac3663746d5
BLAKE2b-256 e830f18fe2e3c393493264eb370122a298c1ba3d1e0f45d57f4bf6aed10a0082

See more details on using hashes here.

File details

Details for the file xprof-2.20.0-cp310-none-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for xprof-2.20.0-cp310-none-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 be71e558060b1a8dadd2b8a4dbbd22b92d252a82f20c47dd72737f77874e7c7a
MD5 e92f513a9a3af348063594f790dad889
BLAKE2b-256 7f0569f1851eb324a262ea29dcfd8251955c2ef775d96db7d918e5253b45c692

See more details on using hashes here.

File details

Details for the file xprof-2.20.0-cp310-none-macosx_12_0_arm64.whl.

File metadata

File hashes

Hashes for xprof-2.20.0-cp310-none-macosx_12_0_arm64.whl
Algorithm Hash digest
SHA256 d45c873c7a5c429c42423323683c371da5e200b159a7439549fb310cc049e7eb
MD5 b03873f8416d28f51d560232c1322db7
BLAKE2b-256 76a60d00830f6d563cdb0548bb7dba6da2cdd0900a7ca1c4baee519c3980b2c6

See more details on using hashes here.

File details

Details for the file xprof-2.20.0-cp39-none-win_amd64.whl.

File metadata

  • Download URL: xprof-2.20.0-cp39-none-win_amd64.whl
  • Upload date:
  • Size: 10.5 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.10

File hashes

Hashes for xprof-2.20.0-cp39-none-win_amd64.whl
Algorithm Hash digest
SHA256 6d5133f6f941294c6eb5af0e75fd13d46ca7ccf00ec349a2cbdfcf250375694f
MD5 fa2892e5b702f59a3f308f48014785b8
BLAKE2b-256 404128b6e3850ca00968abcd609bcc48710fd70f2f6340b5e401cc16b85e714b

See more details on using hashes here.

File details

Details for the file xprof-2.20.0-cp39-none-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for xprof-2.20.0-cp39-none-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 383d4126987fde188babf7aa4cf040ce5354ef5f8e49fe656cb579215456430f
MD5 fb7cdbd047fe65f5a4497705df8c2550
BLAKE2b-256 c80cf02b840a6740f3a1a79a37c4fe6279ede32a86bfc82bc756e0d8480e2bfe

See more details on using hashes here.

File details

Details for the file xprof-2.20.0-cp39-none-macosx_12_0_arm64.whl.

File metadata

File hashes

Hashes for xprof-2.20.0-cp39-none-macosx_12_0_arm64.whl
Algorithm Hash digest
SHA256 bdd7318d79fd0cbb7292778988c3e9e08ad3878760314d7974937e8fbb6175ea
MD5 d749442a6332c993cc6fc5595c36348d
BLAKE2b-256 124ec14e0791de2b4a4548ad643c22018e9b52c5094a980d0f0e74a8775bfa48

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page