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 tensorboard-plugin-profile
$ pip install tbp-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.19.8.tar.gz (3.9 kB view details)

Uploaded Source

Built Distributions

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

xprof-2.19.8-cp312-none-win_amd64.whl (3.7 kB view details)

Uploaded CPython 3.12Windows x86-64

xprof-2.19.8-cp312-none-manylinux2014_x86_64.whl (3.7 kB view details)

Uploaded CPython 3.12

xprof-2.19.8-cp312-none-macosx_12_0_arm64.whl (3.7 kB view details)

Uploaded CPython 3.12macOS 12.0+ ARM64

xprof-2.19.8-cp311-none-win_amd64.whl (3.7 kB view details)

Uploaded CPython 3.11Windows x86-64

xprof-2.19.8-cp311-none-manylinux2014_x86_64.whl (3.7 kB view details)

Uploaded CPython 3.11

xprof-2.19.8-cp311-none-macosx_12_0_arm64.whl (3.7 kB view details)

Uploaded CPython 3.11macOS 12.0+ ARM64

xprof-2.19.8-cp310-none-win_amd64.whl (3.7 kB view details)

Uploaded CPython 3.10Windows x86-64

xprof-2.19.8-cp310-none-manylinux2014_x86_64.whl (3.7 kB view details)

Uploaded CPython 3.10

xprof-2.19.8-cp310-none-macosx_12_0_arm64.whl (3.7 kB view details)

Uploaded CPython 3.10macOS 12.0+ ARM64

xprof-2.19.8-cp39-none-win_amd64.whl (3.7 kB view details)

Uploaded CPython 3.9Windows x86-64

xprof-2.19.8-cp39-none-manylinux2014_x86_64.whl (3.7 kB view details)

Uploaded CPython 3.9

xprof-2.19.8-cp39-none-macosx_12_0_arm64.whl (3.7 kB view details)

Uploaded CPython 3.9macOS 12.0+ ARM64

File details

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

File metadata

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

File hashes

Hashes for xprof-2.19.8.tar.gz
Algorithm Hash digest
SHA256 832bac89b750cffc652d8628567cb4e1c6d834ce53b4a86472d79920657908c0
MD5 73616d0ce7d6e2b9d6deea0c81cca62e
BLAKE2b-256 21e547d88f0206faebeab8e4195e13f3ea932aeebc1ad07e7f8fb013154a097f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: xprof-2.19.8-cp312-none-win_amd64.whl
  • Upload date:
  • Size: 3.7 kB
  • 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.19.8-cp312-none-win_amd64.whl
Algorithm Hash digest
SHA256 e12a2e3b09d56d7344ff72912aa149a141df7500fe937dfb823a316a3ee0cb97
MD5 f4104aa3be600d189122a1d16cbf6354
BLAKE2b-256 89f53ccc36a28eb993d8d0b02c98f3f0bfbacb03df1f769c4bdd5561a0e11a2d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for xprof-2.19.8-cp312-none-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 319e475e20053e4b680818dd01a0fc3959e59020463e38b840126bccc2ad6ef9
MD5 a52e6b2c75f7ff0e80f2402617ba30e7
BLAKE2b-256 e1a405295a71e3eaddb73b57e843374255875917023de439e304438911536132

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for xprof-2.19.8-cp312-none-macosx_12_0_arm64.whl
Algorithm Hash digest
SHA256 772219ccab0c4eff69a7897ecd1996062c7738e30e6f8c88a3958c886fea344b
MD5 72b6fe95fa90496e7ac9a19c7dab7375
BLAKE2b-256 b5584f6b0fbfd95267887dd61762ecce4a839e17f7aad55171cd6105beb45c71

See more details on using hashes here.

File details

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

File metadata

  • Download URL: xprof-2.19.8-cp311-none-win_amd64.whl
  • Upload date:
  • Size: 3.7 kB
  • 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.19.8-cp311-none-win_amd64.whl
Algorithm Hash digest
SHA256 4b06610b70af6fda2ff32c3d5726ecaf534a9bd8b658ababc25384fb6068e18a
MD5 9d0724264e4c10019489237c1eb2e223
BLAKE2b-256 b997cb291ea902779c33c78a7d359bbaf535a90905f4c4bc0edba163ddda0fad

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for xprof-2.19.8-cp311-none-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b6636a15f1273b689fd0b7a3822612a8bd3ef3bb1d9a0f010b5d8493fa00f557
MD5 37640f70306aec57eefcabd42f6ecba6
BLAKE2b-256 d65bead9b0e6acf5d9685dad77fe778b5fe31c30505a26666eba407afed7afd0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for xprof-2.19.8-cp311-none-macosx_12_0_arm64.whl
Algorithm Hash digest
SHA256 08a4832e56799430b9520ee505b20aa9c813a88ea956b4f5a935f7f63aa036d3
MD5 49c1742463331f1f457cd4da7aefa3ee
BLAKE2b-256 3e4decf362d3fc3197b2a3a3547e846f9ae60d5e29156ecf2ff9cd75f8fab847

See more details on using hashes here.

File details

Details for the file xprof-2.19.8-cp310-none-win_amd64.whl.

File metadata

  • Download URL: xprof-2.19.8-cp310-none-win_amd64.whl
  • Upload date:
  • Size: 3.7 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.10

File hashes

Hashes for xprof-2.19.8-cp310-none-win_amd64.whl
Algorithm Hash digest
SHA256 1b5fdebda77136933a4559a44afa9cb446e83cf1e92e1c0270612d8ff1d2aadd
MD5 804cc297bfcd63aaa60900fb431761ad
BLAKE2b-256 b24cd4fd1e1b47f1b6fd673ae50cd5dc3251f106a9d9c0739defcbd05fbec6e2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for xprof-2.19.8-cp310-none-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6e20475f4d05333f22f45d22de14d27109666f0f9e950a945c4d02f0b146a053
MD5 09fbd9192e2026d05314bfc6e4234dbb
BLAKE2b-256 92ac94f971d51697d84ea3f3ee1c350353ac5a4618971e588fc8132bb1e3b2b6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for xprof-2.19.8-cp310-none-macosx_12_0_arm64.whl
Algorithm Hash digest
SHA256 d7a3de77432c130912d1175058bb4d7b1b6f7cc5eccd6d03df68623f6cc55455
MD5 b5ae464cd98cba660bc322cf12fe5d53
BLAKE2b-256 47a72162dc3f79db037801138a0bd73715fa9ba53ebc1c767ae822fadb400754

See more details on using hashes here.

File details

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

File metadata

  • Download URL: xprof-2.19.8-cp39-none-win_amd64.whl
  • Upload date:
  • Size: 3.7 kB
  • 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.19.8-cp39-none-win_amd64.whl
Algorithm Hash digest
SHA256 2412394e550ced4ce1faafeb2474b1f568a170d41429599df94f88e313c455ed
MD5 9e4d4c4ea6637f151abe95d7c80e7091
BLAKE2b-256 066bf177527286c4cca34a68d65dfcc9dfb748b28a521fcd7fbeea0eb26b3e0c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for xprof-2.19.8-cp39-none-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5578fa394a7eb622720da2c1a2c3d937d0b2feca04fd5d8092f36bcae3bcf22b
MD5 1cc375f51789c4b15d174c25d025ff48
BLAKE2b-256 415a771ef862cabf6b4d1b6914b0c349d75316a430c36e4e88ac6058e869d7e5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for xprof-2.19.8-cp39-none-macosx_12_0_arm64.whl
Algorithm Hash digest
SHA256 7cad7541d12ef1a44bd6c5c637bf7d645196c63f83e196c5bee54c4d0f8beb58
MD5 94370abcf6f8e2d12945c5e0b6e3a392
BLAKE2b-256 d3fd627eea832f084ed7d60be1627dbe68753e5dea285748f0edae22cac3222e

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