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.2a0.tar.gz (6.0 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.2a0-cp312-none-win_amd64.whl (10.6 MB view details)

Uploaded CPython 3.12Windows x86-64

xprof-2.20.2a0-cp312-none-manylinux2014_x86_64.whl (12.7 MB view details)

Uploaded CPython 3.12

xprof-2.20.2a0-cp312-none-macosx_12_0_arm64.whl (10.8 MB view details)

Uploaded CPython 3.12macOS 12.0+ ARM64

xprof-2.20.2a0-cp311-none-win_amd64.whl (10.6 MB view details)

Uploaded CPython 3.11Windows x86-64

xprof-2.20.2a0-cp311-none-manylinux2014_x86_64.whl (12.7 MB view details)

Uploaded CPython 3.11

xprof-2.20.2a0-cp311-none-macosx_12_0_arm64.whl (10.8 MB view details)

Uploaded CPython 3.11macOS 12.0+ ARM64

xprof-2.20.2a0-cp310-none-win_amd64.whl (10.6 MB view details)

Uploaded CPython 3.10Windows x86-64

xprof-2.20.2a0-cp310-none-manylinux2014_x86_64.whl (12.7 MB view details)

Uploaded CPython 3.10

xprof-2.20.2a0-cp310-none-macosx_12_0_arm64.whl (10.8 MB view details)

Uploaded CPython 3.10macOS 12.0+ ARM64

xprof-2.20.2a0-cp39-none-win_amd64.whl (10.6 MB view details)

Uploaded CPython 3.9Windows x86-64

xprof-2.20.2a0-cp39-none-manylinux2014_x86_64.whl (12.7 MB view details)

Uploaded CPython 3.9

File details

Details for the file xprof-2.20.2a0.tar.gz.

File metadata

  • Download URL: xprof-2.20.2a0.tar.gz
  • Upload date:
  • Size: 6.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.11

File hashes

Hashes for xprof-2.20.2a0.tar.gz
Algorithm Hash digest
SHA256 49343d373166d4e6817610b59966f7e5817f8c0c4b1b6dc2c4b8b913e173f8ae
MD5 6a236ce96e13cc7029b2cdcc7f5c3fb7
BLAKE2b-256 a6dd209890347c1585b252888ad7623d64ffabb4bf1a2b8fb4ae0053d1537058

See more details on using hashes here.

File details

Details for the file xprof-2.20.2a0-cp312-none-win_amd64.whl.

File metadata

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

File hashes

Hashes for xprof-2.20.2a0-cp312-none-win_amd64.whl
Algorithm Hash digest
SHA256 235e6c9ad7c75c8cbabcc5aa9941207d518e83299613d867b555bc9fa5fa48dd
MD5 4a3a0be1889290053142503dbfe1feba
BLAKE2b-256 37400b72a2a44c19eb7f3f543cb3b8fd5439f7864369a8475f53c1e37aa420e5

See more details on using hashes here.

File details

Details for the file xprof-2.20.2a0-cp312-none-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for xprof-2.20.2a0-cp312-none-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f7e76bdb144f47765785e999822c907d38a4270c24760cd0ed6e78f83038c8c1
MD5 22f4f1a6db98e735637c4019cccaaf1b
BLAKE2b-256 0eedc3ec0c9d90acbf93d3ce19ee8c8d32340f15765a8d973f5faa8ddb109c33

See more details on using hashes here.

File details

Details for the file xprof-2.20.2a0-cp312-none-macosx_12_0_arm64.whl.

File metadata

File hashes

Hashes for xprof-2.20.2a0-cp312-none-macosx_12_0_arm64.whl
Algorithm Hash digest
SHA256 e86abe773940bc58c8c396d63fe8cb8566c402537814cc61abefc11f5f67668d
MD5 b661b250e91632a34ce58455fa577b75
BLAKE2b-256 bcfcfca69c0b1e22e7b211132ed0bd9bf5f5505b9c56933ce87c400a8a935403

See more details on using hashes here.

File details

Details for the file xprof-2.20.2a0-cp311-none-win_amd64.whl.

File metadata

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

File hashes

Hashes for xprof-2.20.2a0-cp311-none-win_amd64.whl
Algorithm Hash digest
SHA256 d3d9a624d8dc774981eb2fec190cb30962e6f5fbd089a9d1765af8a212c75053
MD5 17226147752682db43e5635b85a4e2be
BLAKE2b-256 e160f039b9b715c191e077253c8c7ed914b274c2c6b2f3a04de9a7fbb066fe95

See more details on using hashes here.

File details

Details for the file xprof-2.20.2a0-cp311-none-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for xprof-2.20.2a0-cp311-none-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 649de24727296675a75ec34d19d301f907e87f8faf8233b39e287ddae006cecc
MD5 573ab326245dd67fdabfa3102d2621eb
BLAKE2b-256 77b0a37ad9cf20f38d774d6652f983ec8022bae6f1f3b1bcc7f6ca6f34d21d89

See more details on using hashes here.

File details

Details for the file xprof-2.20.2a0-cp311-none-macosx_12_0_arm64.whl.

File metadata

File hashes

Hashes for xprof-2.20.2a0-cp311-none-macosx_12_0_arm64.whl
Algorithm Hash digest
SHA256 e5ec1f89cdc593b517737cc8d8ee00e6741b6772550ac17d8d7485dbef4d5d8a
MD5 7d128bd60bee33ce4b42524da9b90cbf
BLAKE2b-256 2aaa5726dc24476a89cf34d700ee17ebe692172946629be95200ed0e4eef9fe2

See more details on using hashes here.

File details

Details for the file xprof-2.20.2a0-cp310-none-win_amd64.whl.

File metadata

  • Download URL: xprof-2.20.2a0-cp310-none-win_amd64.whl
  • Upload date:
  • Size: 10.6 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.11

File hashes

Hashes for xprof-2.20.2a0-cp310-none-win_amd64.whl
Algorithm Hash digest
SHA256 e2564f47875beb4bbc29e151a1919d8933d0258518b1d0fc54fcf37bae4c99c8
MD5 3d8623e899e369d09dc10d271f8090dc
BLAKE2b-256 62c230702ab64fbfd19c634ccf371f849025a3c3e9f2c9873785012e38b28c3f

See more details on using hashes here.

File details

Details for the file xprof-2.20.2a0-cp310-none-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for xprof-2.20.2a0-cp310-none-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a4796d437eaf1ad8423e4b7014d36d68469ab73ca1026fc7aabd3b0cf7bc6893
MD5 3154dbf9e9e46c4d2329f52e765fac16
BLAKE2b-256 77dabebcfc24ca51fa2b373a8b5aceb14405bde0a83afb069936b46785989fdd

See more details on using hashes here.

File details

Details for the file xprof-2.20.2a0-cp310-none-macosx_12_0_arm64.whl.

File metadata

File hashes

Hashes for xprof-2.20.2a0-cp310-none-macosx_12_0_arm64.whl
Algorithm Hash digest
SHA256 4183f5a569a82a46a064f561ee98cdfc5e1a21917f480a101a429917d266bc72
MD5 d77bbd5a475d5be834c4de3e28e02dd9
BLAKE2b-256 de9377fbad49fc23d6256c29008bb4d94de2cf5952eb06449c5508756413dd40

See more details on using hashes here.

File details

Details for the file xprof-2.20.2a0-cp39-none-win_amd64.whl.

File metadata

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

File hashes

Hashes for xprof-2.20.2a0-cp39-none-win_amd64.whl
Algorithm Hash digest
SHA256 4548d395b5d0b316b10eaaacc9b0cb7c9d43614de26b32a39b31286a497439e1
MD5 b35597ebac5193b8216283d1db06d403
BLAKE2b-256 1630ec4cc834a548877c8fd96dacddf8ede88fb86343a3c1113e21f56c55121d

See more details on using hashes here.

File details

Details for the file xprof-2.20.2a0-cp39-none-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for xprof-2.20.2a0-cp39-none-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 056990103c95762a5ab85e515a01a05f91ea130738b4f2125f0d18231a881cf9
MD5 19d3a194f973d66e87c11a6446b1f922
BLAKE2b-256 9d0e805c265ae21ca49c9c317a3d3c7cca9a6b90cda1bf38bacbda388ab3afa7

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