xprof-nightly 2.22.3a20251208__cp311-none-manylinux2014_x86_64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (65) hide show
  1. xprof/__init__.py +22 -0
  2. xprof/convert/_pywrap_profiler_plugin.so +0 -0
  3. xprof/convert/csv_writer.py +87 -0
  4. xprof/convert/raw_to_tool_data.py +232 -0
  5. xprof/convert/trace_events_json.py +105 -0
  6. xprof/integration_tests/tf_mnist.py +100 -0
  7. xprof/integration_tests/tf_profiler_session.py +40 -0
  8. xprof/integration_tests/tpu/tensorflow/tpu_tf2_keras_test.py +183 -0
  9. xprof/profile_plugin.py +1521 -0
  10. xprof/profile_plugin_loader.py +82 -0
  11. xprof/protobuf/dcn_collective_info_pb2.py +44 -0
  12. xprof/protobuf/dcn_slack_analysis_pb2.py +42 -0
  13. xprof/protobuf/diagnostics_pb2.py +36 -0
  14. xprof/protobuf/event_time_fraction_analyzer_pb2.py +42 -0
  15. xprof/protobuf/hardware_types_pb2.py +40 -0
  16. xprof/protobuf/hlo_stats_pb2.py +39 -0
  17. xprof/protobuf/inference_stats_pb2.py +86 -0
  18. xprof/protobuf/input_pipeline_pb2.py +52 -0
  19. xprof/protobuf/kernel_stats_pb2.py +38 -0
  20. xprof/protobuf/memory_profile_pb2.py +54 -0
  21. xprof/protobuf/memory_viewer_preprocess_pb2.py +49 -0
  22. xprof/protobuf/op_metrics_pb2.py +65 -0
  23. xprof/protobuf/op_profile_pb2.py +49 -0
  24. xprof/protobuf/op_stats_pb2.py +71 -0
  25. xprof/protobuf/overview_page_pb2.py +64 -0
  26. xprof/protobuf/pod_stats_pb2.py +45 -0
  27. xprof/protobuf/pod_viewer_pb2.py +61 -0
  28. xprof/protobuf/power_metrics_pb2.py +38 -0
  29. xprof/protobuf/roofline_model_pb2.py +42 -0
  30. xprof/protobuf/smart_suggestion_pb2.py +38 -0
  31. xprof/protobuf/source_info_pb2.py +36 -0
  32. xprof/protobuf/source_stats_pb2.py +48 -0
  33. xprof/protobuf/steps_db_pb2.py +76 -0
  34. xprof/protobuf/task_pb2.py +37 -0
  35. xprof/protobuf/tf_data_stats_pb2.py +72 -0
  36. xprof/protobuf/tf_function_pb2.py +52 -0
  37. xprof/protobuf/tf_stats_pb2.py +40 -0
  38. xprof/protobuf/tfstreamz_pb2.py +40 -0
  39. xprof/protobuf/topology_pb2.py +50 -0
  40. xprof/protobuf/tpu_input_pipeline_pb2.py +43 -0
  41. xprof/protobuf/trace_events_old_pb2.py +54 -0
  42. xprof/protobuf/trace_events_pb2.py +64 -0
  43. xprof/protobuf/trace_events_raw_pb2.py +45 -0
  44. xprof/protobuf/trace_filter_config_pb2.py +40 -0
  45. xprof/server.py +319 -0
  46. xprof/standalone/base_plugin.py +52 -0
  47. xprof/standalone/context.py +22 -0
  48. xprof/standalone/data_provider.py +32 -0
  49. xprof/standalone/plugin_asset_util.py +131 -0
  50. xprof/standalone/plugin_event_multiplexer.py +185 -0
  51. xprof/standalone/tensorboard_shim.py +31 -0
  52. xprof/static/bundle.js +130500 -0
  53. xprof/static/index.html +64 -0
  54. xprof/static/index.js +3 -0
  55. xprof/static/materialicons.woff2 +0 -0
  56. xprof/static/styles.css +1 -0
  57. xprof/static/trace_viewer_index.html +3929 -0
  58. xprof/static/trace_viewer_index.js +15906 -0
  59. xprof/static/zone.js +3558 -0
  60. xprof/version.py +17 -0
  61. xprof_nightly-2.22.3a20251208.dist-info/METADATA +301 -0
  62. xprof_nightly-2.22.3a20251208.dist-info/RECORD +65 -0
  63. xprof_nightly-2.22.3a20251208.dist-info/WHEEL +5 -0
  64. xprof_nightly-2.22.3a20251208.dist-info/entry_points.txt +5 -0
  65. xprof_nightly-2.22.3a20251208.dist-info/top_level.txt +1 -0
xprof/version.py ADDED
@@ -0,0 +1,17 @@
1
+ # Copyright 2023 The TensorFlow Authors. All Rights Reserved.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+ # ==============================================================================
15
+ """Version information for tensorboard-plugin-profile."""
16
+
17
+ __version__ = "2.22.3a20251208"
@@ -0,0 +1,301 @@
1
+ Metadata-Version: 2.4
2
+ Name: xprof-nightly
3
+ Version: 2.22.3a20251208
4
+ Summary: XProf Profiler Plugin
5
+ Home-page: https://github.com/openxla/xprof
6
+ Author: Google Inc.
7
+ Author-email: packages@tensorflow.org
8
+ License: Apache 2.0
9
+ Keywords: jax pytorch xla tensorflow tensorboard xprof profile plugin
10
+ Classifier: Intended Audience :: Developers
11
+ Classifier: Intended Audience :: Education
12
+ Classifier: Intended Audience :: Science/Research
13
+ Classifier: License :: OSI Approved :: Apache Software License
14
+ Classifier: Programming Language :: Python :: 2
15
+ Classifier: Programming Language :: Python :: 3
16
+ Classifier: Topic :: Scientific/Engineering :: Mathematics
17
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
18
+ Classifier: Topic :: Software Development :: Libraries
19
+ Requires-Python: >= 2.7, != 3.0.*, != 3.1.*
20
+ Description-Content-Type: text/markdown
21
+ Requires-Dist: gviz_api>=1.9.0
22
+ Requires-Dist: protobuf>=3.19.6
23
+ Requires-Dist: setuptools>=41.0.0
24
+ Requires-Dist: six>=1.10.0
25
+ Requires-Dist: werkzeug>=0.11.15
26
+ Requires-Dist: etils[epath]>=1.0.0
27
+ Requires-Dist: cheroot>=10.0.1
28
+ Requires-Dist: fsspec>=2024.3.1
29
+ Requires-Dist: gcsfs>=2024.3.1
30
+ Dynamic: author
31
+ Dynamic: author-email
32
+ Dynamic: classifier
33
+ Dynamic: description
34
+ Dynamic: description-content-type
35
+ Dynamic: home-page
36
+ Dynamic: keywords
37
+ Dynamic: license
38
+ Dynamic: requires-dist
39
+ Dynamic: requires-python
40
+ Dynamic: summary
41
+
42
+ # XProf (+ Tensorboard Profiler Plugin)
43
+
44
+ XProf offers a number of tools to analyse and visualize the
45
+ performance of your model across multiple devices. Some of the tools include:
46
+
47
+ * **Overview**: A high-level overview of the performance of your model. This
48
+ is an aggregated overview for your host and all devices. It includes:
49
+ * Performance summary and breakdown of step times.
50
+ * A graph of individual step times.
51
+ * High level details of the run environment.
52
+ * **Trace Viewer**: Displays a timeline of the execution of your model that shows:
53
+ * The duration of each op.
54
+ * Which part of the system (host or device) executed an op.
55
+ * The communication between devices.
56
+ * **Memory Profile Viewer**: Monitors the memory usage of your model.
57
+ * **Graph Viewer**: A visualization of the graph structure of HLOs of your model.
58
+
59
+ To learn more about the various XProf tools, check out the [XProf documentation](https://openxla.org/xprof)
60
+
61
+ ## Demo
62
+ First time user? Come and check out this [Colab Demo](https://docs.jaxstack.ai/en/latest/JAX_for_LLM_pretraining.html).
63
+
64
+ ## Quick Start
65
+
66
+ ### Prerequisites
67
+
68
+ * xprof >= 2.20.0
69
+ * (optional) TensorBoard >= 2.20.0
70
+
71
+ Note: XProf requires access to the Internet to load the [Google Chart library](https://developers.google.com/chart/interactive/docs/basic_load_libs#basic-library-loading).
72
+ Some charts and tables may be missing if you run XProf entirely offline on
73
+ your local machine, behind a corporate firewall, or in a datacenter.
74
+
75
+ If you use Google Cloud to run your workloads, we recommend the
76
+ [xprofiler tool](https://github.com/AI-Hypercomputer/cloud-diagnostics-xprof).
77
+ It provides a streamlined profile collection and viewing experience using VMs
78
+ running XProf.
79
+
80
+ ### Installation
81
+
82
+ To get the most recent release version of XProf, install it via pip:
83
+
84
+ ```
85
+ $ pip install xprof
86
+ ```
87
+
88
+ ## Running XProf
89
+
90
+ XProf can be launched as a standalone server or used as a plugin within
91
+ TensorBoard. For large-scale use, it can be deployed in a distributed mode with
92
+ separate aggregator and worker instances ([more details on it later in the
93
+ doc](#distributed-profiling)).
94
+
95
+ ### Command-Line Arguments
96
+
97
+ When launching XProf from the command line, you can use the following arguments:
98
+
99
+ * **`logdir`** (optional): The directory containing XProf profile data (files
100
+ ending in `.xplane.pb`). This can be provided as a positional argument or
101
+ with `-l` or `--logdir`. If provided, XProf will load and display profiles
102
+ from this directory. If omitted, XProf will start without loading any
103
+ profiles, and you can dynamically load profiles using `session_path` or
104
+ `run_path` URL parameters, as described in the [Log Directory
105
+ Structure](#log-directory-structure) section.
106
+ * **`-p <port>`**, **`--port <port>`**: The port for the XProf web server.
107
+ Defaults to `8791`.
108
+ * **`-gp <grpc_port>`**, **`--grpc_port <grpc_port>`**: The port for the gRPC
109
+ server used for distributed processing. Defaults to `50051`. This must be
110
+ different from `--port`.
111
+ * **`-wsa <addresses>`**, **`--worker_service_address <addresses>`**: A
112
+ comma-separated list of worker addresses (e.g., `host1:50051,host2:50051`)
113
+ for distributed processing. Defaults to to `0.0.0.0:<grpc_port>`.
114
+ * **`-hcpb`**, **`--hide_capture_profile_button`**: If set, hides the 'Capture
115
+ Profile' button in the UI.
116
+
117
+ ### Standalone
118
+
119
+ If you have profile data in a directory (e.g., `profiler/demo`), you can view it
120
+ by running:
121
+
122
+ ```
123
+ $ xprof profiler/demo --port=6006
124
+ ```
125
+
126
+ Or with the optional flag:
127
+
128
+ ```
129
+ $ xprof --logdir=profiler/demo --port=6006
130
+ ```
131
+
132
+ ### With TensorBoard
133
+
134
+ If you have TensorBoard installed, you can run:
135
+
136
+ ```
137
+ $ tensorboard --logdir=profiler/demo
138
+ ```
139
+
140
+ If you are behind a corporate firewall, you may need to include the `--bind_all`
141
+ tensorboard flag.
142
+
143
+ Go to `localhost:6006/#profile` of your browser, you should now see the demo
144
+ overview page show up.
145
+ Congratulations! You're now ready to capture a profile.
146
+
147
+ ### Log Directory Structure
148
+
149
+ When using XProf, profile data must be placed in a specific directory structure.
150
+ XProf expects `.xplane.pb` files to be in the following path:
151
+
152
+ ```
153
+ <log_dir>/plugins/profile/<session_name>/
154
+ ```
155
+
156
+ * `<log_dir>`: This is the root directory that you supply to `tensorboard
157
+ --logdir`.
158
+ * `plugins/profile/`: This is a required subdirectory.
159
+ * `<session_name>/`: Each subdirectory inside `plugins/profile/` represents a
160
+ single profiling session. The name of this directory will appear in the
161
+ TensorBoard UI dropdown to select the session.
162
+
163
+ **Example:**
164
+
165
+ If your log directory is structured like this:
166
+
167
+ ```
168
+ /path/to/your/log_dir/
169
+ └── plugins/
170
+ └── profile/
171
+ ├── my_experiment_run_1/
172
+ │ └── host0.xplane.pb
173
+ └── benchmark_20251107/
174
+ └── host1.xplane.pb
175
+ ```
176
+
177
+ You would launch TensorBoard with:
178
+
179
+ ```bash
180
+ tensorboard --logdir /path/to/your/log_dir/
181
+ ```
182
+
183
+ The runs `my_experiment_run_1` and `benchmark_20251107` will be available in the
184
+ "Sessions" tab of the UI.
185
+
186
+ You can also dynamically load sessions from a GCS bucket or local filesystem by
187
+ passing URL parameters when loading XProf in your browser. This method works
188
+ whether or not you provided a `logdir` at startup and is useful for viewing
189
+ profiles from various locations without restarting XProf.
190
+
191
+ For example, if you start XProf with no log directory:
192
+
193
+ ```bash
194
+ xprof
195
+ ```
196
+
197
+ You can load sessions using the following URL parameters.
198
+
199
+ Assume you have profile data stored on GCS or locally, structured like this:
200
+
201
+ ```
202
+ gs://your-bucket/profile_runs/
203
+ ├── my_experiment_run_1/
204
+ │ ├── host0.xplane.pb
205
+ │ └── host1.xplane.pb
206
+ └── benchmark_20251107/
207
+ └── host0.xplane.pb
208
+ ```
209
+
210
+ There are two URL parameters you can use:
211
+
212
+ * **`session_path`**: Use this to load a *single* session directly. The path
213
+ should point to a directory containing `.xplane.pb` files for one session.
214
+
215
+ * GCS Example:
216
+ `http://localhost:8791/?session_path=gs://your-bucket/profile_runs/my_experiment_run_1`
217
+ * Local Path Example:
218
+ `http://localhost:8791/?session_path=/path/to/profile_runs/my_experiment_run_1`
219
+ * Result: XProf will load the `my_experiment_run_1`
220
+ session, and you will see its data in the UI.
221
+
222
+ * **`run_path`**: Use this to point to a directory that contains *multiple*
223
+ session directories.
224
+
225
+ * GCS Example:
226
+ `http://localhost:8791/?run_path=gs://your-bucket/profile_runs/`
227
+ * Local Path Example:
228
+ `http://localhost:8791/?run_path=/path/to/profile_runs/`
229
+ * Result: XProf will list all session directories found under `run_path`
230
+ (i.e., `my_experiment_run_1` and `benchmark_20251107`) in the "Sessions"
231
+ dropdown in the UI, allowing you to switch between them.
232
+
233
+ **Loading Precedence**
234
+
235
+ If multiple sources are provided, XProf uses the following order of precedence
236
+ to determine which profiles to load:
237
+
238
+ 1. **`session_path`** URL parameter
239
+ 2. **`run_path`** URL parameter
240
+ 3. **`logdir`** command-line argument
241
+
242
+ ### Distributed Profiling
243
+
244
+ XProf supports distributed profile processing by using an aggregator that
245
+ distributes work to multiple XProf workers. This is useful for processing large
246
+ profiles or handling multiple users.
247
+
248
+ **Note**: Currently, distributed processing only benefits the following tools:
249
+ `overview_page`, `framework_op_stats`, `input_pipeline`, and `pod_viewer`.
250
+
251
+ **Note**: The ports used in these examples (`6006` for the aggregator HTTP
252
+ server, `9999` for the worker HTTP server, and `50051` for the worker gRPC
253
+ server) are suggestions and can be customized.
254
+
255
+ **Worker Node**
256
+
257
+ Each worker node should run XProf with a gRPC port exposed so it can receive
258
+ processing requests. You should also hide the capture button as workers are not
259
+ meant to be interacted with directly.
260
+
261
+ ```
262
+ $ xprof --grpc_port=50051 --port=9999 --hide_capture_profile_button
263
+ ```
264
+
265
+ **Aggregator Node**
266
+
267
+ The aggregator node runs XProf with the `--worker_service_address` flag pointing
268
+ to all available workers. Users will interact with aggregator node's UI.
269
+
270
+ ```
271
+ $ xprof --worker_service_address=<worker1_ip>:50051,<worker2_ip>:50051 --port=6006 --logdir=profiler/demo
272
+ ```
273
+
274
+ Replace `<worker1_ip>, <worker2_ip>` with the addresses of your worker machines.
275
+ Requests sent to the aggregator on port 6006 will be distributed among the
276
+ workers for processing.
277
+
278
+ For deploying a distributed XProf setup in a Kubernetes environment, see
279
+ [Kubernetes Deployment Guide](docs/kubernetes_deployment.md).
280
+
281
+ ## Nightlies
282
+
283
+ Every night, a nightly version of the package is released under the name of
284
+ `xprof-nightly`. This package contains the latest changes made by the XProf
285
+ developers.
286
+
287
+ To install the nightly version of profiler:
288
+
289
+ ```
290
+ $ pip uninstall xprof tensorboard-plugin-profile
291
+ $ pip install xprof-nightly
292
+ ```
293
+
294
+ ## Next Steps
295
+
296
+ * [JAX Profiling Guide](https://jax.readthedocs.io/en/latest/profiling.html#xprof-tensorboard-profiling)
297
+ * [PyTorch/XLA Profiling Guide](https://cloud.google.com/tpu/docs/pytorch-xla-performance-profiling-tpu-vm)
298
+ * [TensorFlow Profiling Guide](https://tensorflow.org/guide/profiler)
299
+ * [Cloud TPU Profiling Guide](https://cloud.google.com/tpu/docs/cloud-tpu-tools)
300
+ * [Colab Tutorial](https://www.tensorflow.org/tensorboard/tensorboard_profiling_keras)
301
+ * [Tensorflow Colab](https://www.tensorflow.org/tensorboard/tensorboard_profiling_keras)
@@ -0,0 +1,65 @@
1
+ xprof/__init__.py,sha256=78OA7RY_Liq0MjrozS91P2gcJlQBCQNmop-HJZWW-Hg,967
2
+ xprof/profile_plugin.py,sha256=cdGDaXNwfh1e2OQbSa0YKGudtVuIhSW2H8iRpJEIdTQ,51890
3
+ xprof/profile_plugin_loader.py,sha256=Cj8FKMU1zopF8xI0t2BNRFwrl3VCg5LuORvr4PSm6Fo,2844
4
+ xprof/server.py,sha256=pXj-le7_FxvXSiGYZqbBaPwo1SGoRa2CYB88LixuG5A,9363
5
+ xprof/version.py,sha256=p8prIIx4mK_OQsvNxSKb9i-zU0s23rMZQ2nkLIMzVRM,780
6
+ xprof/convert/_pywrap_profiler_plugin.so,sha256=XRZzwJcjx4INIwEDiMCo3C_X3_99Iofofq5bTzVu4yM,55494392
7
+ xprof/convert/csv_writer.py,sha256=KWbJ_iZTusHWqePu0dt7dAv-wMTUw4b6QWEQfI4Gp-0,2594
8
+ xprof/convert/raw_to_tool_data.py,sha256=bEc3R0Oftmd2xYOjzfSgtyJ8NcpGB4P4WDVngri60dw,8244
9
+ xprof/convert/trace_events_json.py,sha256=Ob3_G4udJJbwTFhTdmjehYb0DWOyzyftTD2sLXCqYN0,3482
10
+ xprof/integration_tests/tf_mnist.py,sha256=QRhDRWd4EGr-iJgKR5xvvHpSKDS0f84gD0DnmWFgkSI,3693
11
+ xprof/integration_tests/tf_profiler_session.py,sha256=ojn5w3H66aKbWx0vIG93CbQv-H3Fyk4IdvZ0WFk294k,1570
12
+ xprof/integration_tests/tpu/tensorflow/tpu_tf2_keras_test.py,sha256=WwkPJO60EIh8jh06PlAJnNbi6TBrOBe_zX1wfnTrozs,6178
13
+ xprof/protobuf/dcn_collective_info_pb2.py,sha256=nRBYAifPKJD1Q5r2Mfgywg6cPb2ysqUksldWJuSnAfQ,3041
14
+ xprof/protobuf/dcn_slack_analysis_pb2.py,sha256=qPkEO6eZ4qz_v9yU1F-0j91st-lnsyvyoeZ9-ZbrZBA,3528
15
+ xprof/protobuf/diagnostics_pb2.py,sha256=TR9h0uB6wB2hsYHXywXiMRqYeIgxxNn4s3fOMKpc78Q,1458
16
+ xprof/protobuf/event_time_fraction_analyzer_pb2.py,sha256=qJCSEWdgQvQUici9CRa8QArVlkvZg0egXkZl8ZhPmdY,2436
17
+ xprof/protobuf/hardware_types_pb2.py,sha256=l5rimwnRwgTSVbmFBDiXZqNRQNuNhOOY8o3-YoUibuI,2169
18
+ xprof/protobuf/hlo_stats_pb2.py,sha256=kOYJ5eqP7063kd05jmtclvTrWfAtB7h4imnA_yyJAsM,3512
19
+ xprof/protobuf/inference_stats_pb2.py,sha256=Fm0MtsXjyxToKgHN-3wn3DHIBj2CTv9u11u9iKIrdEY,11600
20
+ xprof/protobuf/input_pipeline_pb2.py,sha256=FZ0Mvz23p2dybFcMQWwzVEiqzHwt3r2i91rlzHqbH1w,6895
21
+ xprof/protobuf/kernel_stats_pb2.py,sha256=VQVv0qCQzycqS1aqSMlrRKCeMiPWfn9gehJiNjShsCY,2183
22
+ xprof/protobuf/memory_profile_pb2.py,sha256=GjSyu66CfuzghEenNr5wyhVjprlDUyCQ8kJc0j5d2C0,5146
23
+ xprof/protobuf/memory_viewer_preprocess_pb2.py,sha256=TqF7g7a43zn9g2YCe_9TJ_jbtT6wP9CgbxZ92ocdsfY,4783
24
+ xprof/protobuf/op_metrics_pb2.py,sha256=_R3GK-WNRszXJd49qTncF54E8PpR_-gqJTypzlvLa0Y,7598
25
+ xprof/protobuf/op_profile_pb2.py,sha256=41Ikf2ktT1aPGe_giUrAp0BLBYwjJe6b9eNZBSWU8OM,4979
26
+ xprof/protobuf/op_stats_pb2.py,sha256=FazYLgDDrNSZohQSZtswzwMCaOcJnm0BUJhsEP2k40c,8367
27
+ xprof/protobuf/overview_page_pb2.py,sha256=GhDMKKmTLtrWwWuyl16wpvBK3MsACJdsLxqJ79VdPUc,9701
28
+ xprof/protobuf/pod_stats_pb2.py,sha256=RXyLmXYrfdndahkVZ6NgeWnYNMxb5GtDujLqHvsYKRA,3135
29
+ xprof/protobuf/pod_viewer_pb2.py,sha256=u731Yc2ommVCqBE6ZmtzBhEq9xaBNBr-4jUSZghC3sM,5898
30
+ xprof/protobuf/power_metrics_pb2.py,sha256=ywJZ-40er8VqQ6oE35ddyWF40IOpJaiqIWKTViOB4_8,2033
31
+ xprof/protobuf/roofline_model_pb2.py,sha256=1O1QdCTv1Y6xY0fuxF_5rZ_5o0qQop8vPokd6RcVwf0,5018
32
+ xprof/protobuf/smart_suggestion_pb2.py,sha256=rCgNgdcXO400ra4WWLWiXDEtBfTjEdMLuxwKWRWIj5M,1687
33
+ xprof/protobuf/source_info_pb2.py,sha256=hzQT_w4KpIEPyJ7yKMi-CezpY-2Mh7xjAvdhuhibiO0,1460
34
+ xprof/protobuf/source_stats_pb2.py,sha256=gxHcmAGrzHAaUCyEBxzRzbGQTaCejXJxCVjgptD4SiM,3075
35
+ xprof/protobuf/steps_db_pb2.py,sha256=EakwPVEyc5ZXA1FOkuY5LYk7W3a5P98A7-EamU_NxZQ,8072
36
+ xprof/protobuf/task_pb2.py,sha256=7cJW9WuO1EPsYUu4GP5qhSOSut7Kv6xSdU7jZQ55VUE,2091
37
+ xprof/protobuf/tf_data_stats_pb2.py,sha256=579_nnLxjlOPTsKgLmYHCV8RjW4gr7NKI9lWsHjh1Bk,6886
38
+ xprof/protobuf/tf_function_pb2.py,sha256=ybsgfWM9xOhU9E8UAJjLd1zOOjR22cYINg5tGAJ14ic,3527
39
+ xprof/protobuf/tf_stats_pb2.py,sha256=k3pl73NIuVp8TDYOScvTPBdg1GBl3XkRgJjpYU5mhyE,3708
40
+ xprof/protobuf/tfstreamz_pb2.py,sha256=EFc36V2kn_g5o5XHfh9cJ0RHWAiADMBWKr_YEegNdxE,2309
41
+ xprof/protobuf/topology_pb2.py,sha256=9eOA5jAbVpUPSkSPw7AcyCqdDc3Tk7OYYs0F96BzPBs,3720
42
+ xprof/protobuf/tpu_input_pipeline_pb2.py,sha256=_g2HwRPZk5uDa2GsyYAzBacDMYi4hC_DhFOw40I6HPc,4930
43
+ xprof/protobuf/trace_events_old_pb2.py,sha256=mS2hbO8_AGX4KcugIdDBRC4vemlB_OYEhR5Z9hbyBmY,3399
44
+ xprof/protobuf/trace_events_pb2.py,sha256=LNvHSkW_g9X6h0_pMvImRJeTG7I_ehxYUjYpd07cBi8,5345
45
+ xprof/protobuf/trace_events_raw_pb2.py,sha256=HHtNSuRf8pLv2Y6uZP6BxSaO1T1OicsDeeDarJsb3Y8,3078
46
+ xprof/protobuf/trace_filter_config_pb2.py,sha256=Mr-CxIkfdyKRf02MkC3wkUlkUiormYE9HkFXw5bpgMY,2570
47
+ xprof/standalone/base_plugin.py,sha256=wkUAZ5PSysYzyvnAmFcIxXZRedwGVipLtRWA0P_DuIg,1585
48
+ xprof/standalone/context.py,sha256=BKlQeHWTbfC6KwaKkHYt3QfnUERIAWYUGxCkz4oZ9sA,867
49
+ xprof/standalone/data_provider.py,sha256=pyfeARB-UBB3tGWv5B0b9ml9L3F1p2LXsvCKoJohvkQ,1214
50
+ xprof/standalone/plugin_asset_util.py,sha256=I0bFgqc_8dTf54TjMXURblkyOYvoyhEga9x4z0obOrA,4023
51
+ xprof/standalone/plugin_event_multiplexer.py,sha256=Si4Xh1AZsBJiKBqJQPQkdNOHtZfEQVoAutmTJ3Ruq6M,5151
52
+ xprof/standalone/tensorboard_shim.py,sha256=2I8a3InvfbMIi0HZqLa7yO97t7eMvapqy-ykl-VNv1A,1436
53
+ xprof/static/bundle.js,sha256=mcqPYsGxo13Pz25lMMMQVuLXqOklWszRDj2wxMBRbGY,25006556
54
+ xprof/static/index.html,sha256=TBDEDCCieTgrUcWGDbHRgU5z0jp-0OoR_m2Q3WrkfY0,1733
55
+ xprof/static/index.js,sha256=6k9xoStOyq8WLqAbeujc6RnudtedUiKSHgwGNg9_yPc,76
56
+ xprof/static/materialicons.woff2,sha256=RRfwo4kyIt8HMUExPBeMy8mTQ_OQP7EgIxc7DZ3nirk,60832
57
+ xprof/static/styles.css,sha256=p0jlPi8L57wDLox9m5G-psyqJJZwTqPu9fc-AYxP-aU,210865
58
+ xprof/static/trace_viewer_index.html,sha256=JUcGQyu-JwFjwP5bRCbttBljWM3poHMvDtThjOlg22k,136561
59
+ xprof/static/trace_viewer_index.js,sha256=DQX8KAClj4g2OHY59-Hc8g1x05q80BPFr5C0tXocynA,2842835
60
+ xprof/static/zone.js,sha256=YMw-4VujXc6xhxsSyJ15ImBvBq2aKPlsCy5v82GTk20,572373
61
+ xprof_nightly-2.22.3a20251208.dist-info/METADATA,sha256=br-T37G5F5893IbUNdywztY94TI0urvu2rxMVRy3-DQ,10804
62
+ xprof_nightly-2.22.3a20251208.dist-info/WHEEL,sha256=HlfSuhSmZKaxRybW83AJqf6QGccQ3l_ux9bKThlZuzo,110
63
+ xprof_nightly-2.22.3a20251208.dist-info/entry_points.txt,sha256=xltzdsFMJnbkt_VqqEd3E-AkWwECarbEs9zyalYs8Fw,125
64
+ xprof_nightly-2.22.3a20251208.dist-info/top_level.txt,sha256=ZQblo3gDytpGjmOhiN_dK7Ou2EA-Z0mBUUprE63CkeM,6
65
+ xprof_nightly-2.22.3a20251208.dist-info/RECORD,,
@@ -0,0 +1,5 @@
1
+ Wheel-Version: 1.0
2
+ Generator: setuptools (80.9.0)
3
+ Root-Is-Purelib: true
4
+ Tag: cp311-none-manylinux2014_x86_64
5
+
@@ -0,0 +1,5 @@
1
+ [console_scripts]
2
+ xprof = xprof.server:main
3
+
4
+ [tensorboard_plugins]
5
+ profile = xprof.profile_plugin_loader:ProfilePluginLoader