tritonparse 0.2.4.dev20251007071533__tar.gz → 0.2.4.dev20251009071511__tar.gz

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.

Potentially problematic release.


This version of tritonparse might be problematic. Click here for more details.

Files changed (122) hide show
  1. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/.github/workflows/test.yml +1 -7
  2. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/.gitignore +1 -0
  3. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/PKG-INFO +76 -31
  4. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/README.md +75 -30
  5. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tests/test_tritonparse.py +275 -97
  6. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tritonparse/context_manager.py +14 -1
  7. tritonparse-0.2.4.dev20251009071511/tritonparse/reproducer/templates/example.py +387 -0
  8. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tritonparse/structured_logging.py +320 -3
  9. tritonparse-0.2.4.dev20251009071511/tritonparse/tools/load_tensor.py +74 -0
  10. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tritonparse.egg-info/PKG-INFO +76 -31
  11. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tritonparse.egg-info/SOURCES.txt +0 -3
  12. tritonparse-0.2.4.dev20251007071533/.ci/install-triton-kernels.sh +0 -87
  13. tritonparse-0.2.4.dev20251007071533/.github/copilot-instructions.md +0 -47
  14. tritonparse-0.2.4.dev20251007071533/tests/example_output/repro/repro_context_20250816192455.json +0 -448
  15. tritonparse-0.2.4.dev20251007071533/tritonparse/reproducer/templates/example.py +0 -320
  16. tritonparse-0.2.4.dev20251007071533/tritonparse/tools/load_tensor.py +0 -58
  17. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/.ci/README.md +0 -0
  18. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/.ci/install-project.sh +0 -0
  19. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/.ci/install-triton.sh +0 -0
  20. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/.ci/run-tests.sh +0 -0
  21. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/.ci/setup.sh +0 -0
  22. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/.github/PAGES_SETUP.md +0 -0
  23. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/.github/workflows/deploy-pages-standalone.yml +0 -0
  24. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/.github/workflows/deploy-pages.yml +0 -0
  25. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/.github/workflows/nightly-pypi.yml +0 -0
  26. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/CHANGELOG.md +0 -0
  27. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/CODE_OF_CONDUCT.md +0 -0
  28. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/CONTRIBUTING.md +0 -0
  29. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/LICENSE +0 -0
  30. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/Makefile +0 -0
  31. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/__init__.py +0 -0
  32. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/docs/README.md +0 -0
  33. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/docs/screenshots/code-comparison.png +0 -0
  34. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/docs/screenshots/kernel-overview.png +0 -0
  35. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/pyproject.toml +0 -0
  36. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/run.py +0 -0
  37. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/setup.cfg +0 -0
  38. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tests/README.md +0 -0
  39. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tests/__init__.py +0 -0
  40. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tests/example_output/logs/dedicated_log_triton_trace_findhao_.ndjson +0 -0
  41. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tests/example_output/parsed_output/dedicated_log_triton_trace_findhao__mapped.ndjson.gz +0 -0
  42. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tests/example_output/parsed_output/f0_fc0_a0_cai-.ndjson.gz +0 -0
  43. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tests/example_output/parsed_output/log_file_list.json +0 -0
  44. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tests/example_output/parsed_output_complex/dedicated_log_triton_trace_findhao__mapped.ndjson.gz +0 -0
  45. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tests/example_output/parsed_output_complex/log_file_list.json +0 -0
  46. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tests/test_add.py +0 -0
  47. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tritonparse/__init__.py +0 -0
  48. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tritonparse/__main__.py +0 -0
  49. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tritonparse/cli.py +0 -0
  50. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tritonparse/common.py +0 -0
  51. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tritonparse/event_diff.py +0 -0
  52. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tritonparse/extract_source_mappings.py +0 -0
  53. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tritonparse/ir_parser.py +0 -0
  54. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tritonparse/mapper.py +0 -0
  55. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tritonparse/reproducer/__init__.py +0 -0
  56. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tritonparse/reproducer/cli.py +0 -0
  57. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tritonparse/reproducer/ingestion/ndjson.py +0 -0
  58. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tritonparse/reproducer/orchestrator.py +0 -0
  59. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tritonparse/reproducer/placeholder_replacer.py +0 -0
  60. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tritonparse/reproducer/templates/__init__.py +0 -0
  61. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tritonparse/reproducer/templates/loader.py +0 -0
  62. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tritonparse/reproducer/utils.py +0 -0
  63. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tritonparse/shared_vars.py +0 -0
  64. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tritonparse/source_type.py +0 -0
  65. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tritonparse/sourcemap_utils.py +0 -0
  66. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tritonparse/tools/__init__.py +0 -0
  67. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tritonparse/tools/decompress_bin_ndjson.py +0 -0
  68. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tritonparse/tools/disasm.py +0 -0
  69. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tritonparse/tools/format_fix.py +0 -0
  70. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tritonparse/tools/prettify_ndjson.py +0 -0
  71. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tritonparse/tools/readme.md +0 -0
  72. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tritonparse/tp_logger.py +0 -0
  73. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tritonparse/trace_processor.py +0 -0
  74. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tritonparse/utils.py +0 -0
  75. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tritonparse.egg-info/dependency_links.txt +0 -0
  76. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tritonparse.egg-info/entry_points.txt +0 -0
  77. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tritonparse.egg-info/requires.txt +0 -0
  78. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/tritonparse.egg-info/top_level.txt +0 -0
  79. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/eslint.config.js +0 -0
  80. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/index.html +0 -0
  81. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/package-lock.json +0 -0
  82. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/package.json +0 -0
  83. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/postcss.config.js +0 -0
  84. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/public/dedicated_log_triton_trace_findhao__mapped.ndjson.gz +0 -0
  85. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/public/f0_fc0_a0_cai-.ndjson +0 -0
  86. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/public/favicon.ico +0 -0
  87. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/public/logo.svg +0 -0
  88. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/scripts/inline-html.js +0 -0
  89. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/src/App.css +0 -0
  90. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/src/App.tsx +0 -0
  91. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/src/assets/react.svg +0 -0
  92. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/src/components/ArgumentViewer.tsx +0 -0
  93. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/src/components/Callstack.tsx +0 -0
  94. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/src/components/CodeComparisonView.tsx +0 -0
  95. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/src/components/CodeViewer.tsx +0 -0
  96. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/src/components/CompilationInfo.tsx +0 -0
  97. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/src/components/CopyCodeButton.tsx +0 -0
  98. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/src/components/DataSourceSelector.tsx +0 -0
  99. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/src/components/DiffComparisonView.tsx +0 -0
  100. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/src/components/DiffViewer.tsx +0 -0
  101. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/src/components/ExternalLink.tsx +0 -0
  102. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/src/components/SingleCodeViewer.tsx +0 -0
  103. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/src/components/StackDiffViewer.tsx +0 -0
  104. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/src/components/ToggleSwitch.tsx +0 -0
  105. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/src/components/TritonIRs.tsx +0 -0
  106. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/src/components/WelcomeScreen.tsx +0 -0
  107. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/src/context/FileDiffSession.tsx +0 -0
  108. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/src/index.css +0 -0
  109. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/src/main.tsx +0 -0
  110. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/src/pages/CodeView.tsx +0 -0
  111. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/src/pages/FileDiffView.tsx +0 -0
  112. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/src/pages/KernelOverview.tsx +0 -0
  113. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/src/utils/dataLoader.ts +0 -0
  114. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/src/utils/fbDetection.ts +0 -0
  115. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/src/utils/safeImport.ts +0 -0
  116. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/src/utils/tensor.ts +0 -0
  117. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/src/vite-env.d.ts +0 -0
  118. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/tailwind.config.js +0 -0
  119. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/tsconfig.app.json +0 -0
  120. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/tsconfig.json +0 -0
  121. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/tsconfig.node.json +0 -0
  122. {tritonparse-0.2.4.dev20251007071533 → tritonparse-0.2.4.dev20251009071511}/website/vite.config.ts +0 -0
@@ -142,7 +142,7 @@ jobs:
142
142
  TRITON_COMMIT: ${{ steps.triton-commit.outputs.commit }}
143
143
  run: |
144
144
  bash .ci/install-triton.sh
145
- bash .ci/install-triton-kernels.sh
145
+
146
146
  - name: Install project dependencies
147
147
  env:
148
148
  CONDA_ENV: tritonparse
@@ -192,12 +192,6 @@ jobs:
192
192
  run: |
193
193
  bash .ci/setup.sh
194
194
 
195
- - name: Install Triton kernels
196
- env:
197
- CONDA_ENV: tritonparse-pip
198
- run: |
199
- bash .ci/install-triton-kernels.sh
200
-
201
195
  - name: Install project dependencies
202
196
  env:
203
197
  CONDA_ENV: tritonparse-pip
@@ -70,4 +70,5 @@ env.bak/
70
70
  venv.bak/
71
71
  *.mdc
72
72
  repro_output/
73
+ .github/copilot-instructions.md
73
74
  # end
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: tritonparse
3
- Version: 0.2.4.dev20251007071533
3
+ Version: 0.2.4.dev20251009071511
4
4
  Summary: TritonParse: A Compiler Tracer, Visualizer, and mini-Reproducer Generator for Triton Kernels
5
5
  Author-email: Yueming Hao <yhao@meta.com>
6
6
  License-Expression: BSD-3-Clause
@@ -27,13 +27,27 @@ Dynamic: license-file
27
27
 
28
28
  ## ✨ Key Features
29
29
 
30
- - **🚀 Launch Difference Analysis** - Automatically detect and visualize variations in kernel launch parameters, helping you pinpoint performance bottlenecks and debug launch configurations.
31
- - **🔍 Interactive Visualization** - Explore Triton kernels with detailed metadata and stack traces
32
- - **📊 Multi-format IR Support** - View TTGIR, TTIR, LLIR, PTX, and AMDGCN in one place
33
- - **🔄 Side-by-side Comparison** - Compare IR stages with synchronized highlighting
34
- - **📝 Structured Logging** - Capture detailed compilation and launch events with source mapping
35
- - **🌐 Ready-to-use Interface** - No installation required, works in your browser
36
- - **🔒 Privacy-first** - All processing happens locally in your browser, no data uploaded
30
+ ### 🔍 Visualization & Analysis
31
+ - **🚀 Launch Difference Analysis** - Detect and visualize kernel launch parameter variations
32
+ - **📊 IR Code View** - Side-by-side IR viewing with synchronized highlighting and line mapping
33
+ - **🔄 File Diff View** - Compare kernels across different trace files side-by-side
34
+ - **📝 Multi-format IR Support** - View TTGIR, TTIR, LLIR, PTX, and AMDGCN
35
+ - **🎯 Interactive Code Views** - Click-to-highlight corresponding lines across IR stages
36
+
37
+ ### 🔧 Reproducer & Debugging Tools
38
+ - **🔄 Standalone Script Generation** - Extract any kernel into a self-contained Python script
39
+ - **💾 Tensor Data Reconstruction** - Preserve actual tensor data or use statistical approximation
40
+ - **🎯 Custom Templates** - Flexible reproducer templates for different workflows
41
+ - **🐛 Bug Isolation** - Share reproducible test cases for debugging and collaboration
42
+
43
+ ### 📊 Structured Logging & Analysis
44
+ - **📝 Compilation & Launch Tracing** - Capture detailed events with source mapping
45
+ - **🔍 Stack Trace Integration** - Full Python stack traces for debugging
46
+ - **📈 Metadata Extraction** - Comprehensive kernel statistics
47
+
48
+ ### 🛠️ Developer Tools
49
+ - **🌐 Browser-based Interface** - No installation required, works in your browser
50
+ - **🔒 Privacy-first** - All processing happens locally, no data uploaded
37
51
 
38
52
  ## 🚀 Quick Start
39
53
 
@@ -41,22 +55,22 @@ Dynamic: license-file
41
55
 
42
56
  ```python
43
57
  import tritonparse.structured_logging
58
+ import tritonparse.utils
44
59
 
45
- # Initialize logging with launch tracing enabled
60
+ # Initialize logging
46
61
  tritonparse.structured_logging.init("./logs/", enable_trace_launch=True)
47
62
 
48
63
  # Your Triton/PyTorch code here
49
64
  # ... your kernels ...
50
65
 
51
66
  # Parse and generate trace files
52
- import tritonparse.utils
53
- tritonparse.utils.unified_parse("./logs/")
67
+ tritonparse.utils.unified_parse("./logs/", out="./parsed_output")
54
68
  ```
55
- The example terminal output is:
56
- ```bash
57
- tritonparse log file list: /tmp/tmp1gan7zky/log_file_list.json
58
- INFO:tritonparse:Copying parsed logs from /tmp/tmp1gan7zky to /scratch/findhao/tritonparse/tests/parsed_output
59
69
 
70
+ <details>
71
+ <summary>📝 Example output (click to expand)</summary>
72
+
73
+ ```bash
60
74
  ================================================================================
61
75
  📁 TRITONPARSE PARSING RESULTS
62
76
  ================================================================================
@@ -64,13 +78,13 @@ INFO:tritonparse:Copying parsed logs from /tmp/tmp1gan7zky to /scratch/findhao/t
64
78
  📊 Total files generated: 2
65
79
 
66
80
  📄 Generated files:
67
- --------------------------------------------------
68
81
  1. 📝 dedicated_log_triton_trace_findhao__mapped.ndjson.gz (7.2KB)
69
82
  2. 📝 log_file_list.json (181B)
70
83
  ================================================================================
71
84
  ✅ Parsing completed successfully!
72
85
  ================================================================================
73
86
  ```
87
+ </details>
74
88
 
75
89
  ### 2. Visualize Results
76
90
 
@@ -78,6 +92,41 @@ INFO:tritonparse:Copying parsed logs from /tmp/tmp1gan7zky to /scratch/findhao/t
78
92
 
79
93
  > **🔒 Privacy Note**: Your trace files are processed entirely in your browser - nothing is uploaded to any server!
80
94
 
95
+ ### 3. Generate Reproducers (Optional)
96
+
97
+ Extract any kernel into a standalone, executable Python script for debugging or testing:
98
+
99
+ ```bash
100
+ # Generate reproducer from first launch event
101
+ tritonparse reproduce ./parsed_output/trace.ndjson.gz --line 2 --out-dir repro_output
102
+
103
+ # Run the generated reproducer
104
+ cd repro_output/<kernel_name>/
105
+ python repro_*.py
106
+ ```
107
+
108
+ **Python API:**
109
+ ```python
110
+ from tritonparse.reproducer.orchestrator import reproduce
111
+
112
+ result = reproduce(
113
+ input_path="./parsed_output/trace.ndjson.gz",
114
+ line_index=1, # Which launch event (1-based)
115
+ out_dir="repro_output"
116
+ )
117
+ ```
118
+
119
+ <details>
120
+ <summary>🎯 Common Reproducer Use Cases (click to expand)</summary>
121
+
122
+ - **🐛 Bug Isolation**: Extract a failing kernel into a minimal standalone script
123
+ - **⚡ Performance Testing**: Benchmark specific kernels without running the full application
124
+ - **🤝 Team Collaboration**: Share reproducible test cases with colleagues or in bug reports
125
+ - **📊 Regression Testing**: Compare kernel behavior and performance across different versions
126
+ - **🔍 Deep Debugging**: Modify and experiment with kernel parameters in isolation
127
+
128
+ </details>
129
+
81
130
  ## 🛠️ Installation
82
131
 
83
132
  **For basic usage (trace generation):**
@@ -106,18 +155,13 @@ pip install triton
106
155
 
107
156
  | 📖 Guide | Description |
108
157
  |----------|-------------|
109
- | **[🏠 Wiki Home](https://github.com/meta-pytorch/tritonparse/wiki)** | Complete documentation and navigation |
110
- | **[📦 Installation Guide](https://github.com/meta-pytorch/tritonparse/wiki/01.-Installation)** | Detailed setup for all scenarios |
111
- | **[📋 Usage Guide](https://github.com/meta-pytorch/tritonparse/wiki/02.-Usage-Guide)** | Complete workflow and examples |
112
- | **[🌐 Web Interface Guide](https://github.com/meta-pytorch/tritonparse/wiki/03.-Web-Interface-Guide)** | Master the visualization interface |
113
- | **[🔧 Developer Guide](https://github.com/meta-pytorch/tritonparse/wiki/04.-Developer-Guide)** | Contributing and development setup |
114
- | **[ FAQ](https://github.com/meta-pytorch/tritonparse/wiki/06.-FAQ)** | Frequently asked questions |
115
-
116
- ## 🛠️ Tech Stack
117
-
118
- - **Frontend**: React 19, TypeScript, Vite, Tailwind CSS, Monaco Editor
119
- - **Backend**: Python with Triton integration, structured logging
120
- - **Deployment**: GitHub Pages, automatic deployment
158
+ | **[🏠 Wiki Home](https://github.com/meta-pytorch/tritonparse/wiki)** | Complete documentation and quick navigation |
159
+ | **[📦 Installation](https://github.com/meta-pytorch/tritonparse/wiki/01.-Installation)** | Setup guide for all scenarios |
160
+ | **[📋 Usage Guide](https://github.com/meta-pytorch/tritonparse/wiki/02.-Usage-Guide)** | Complete workflow, reproducer generation, and examples |
161
+ | **[🌐 Web Interface](https://github.com/meta-pytorch/tritonparse/wiki/03.-Web-Interface-Guide)** | Master the visualization interface |
162
+ | **[🔧 Developer Guide](https://github.com/meta-pytorch/tritonparse/wiki/04.-Developer-Guide)** | Contributing and architecture overview |
163
+ | **[📝 Code Formatting](https://github.com/meta-pytorch/tritonparse/wiki/05.-Code-Formatting)** | Formatting standards and tools |
164
+ | **[❓ FAQ](https://github.com/meta-pytorch/tritonparse/wiki/06.-FAQ)** | Quick answers and troubleshooting |
121
165
 
122
166
  ## 📊 Understanding Triton Compilation
123
167
 
@@ -130,9 +174,10 @@ Each stage can be inspected and compared to understand optimization transformati
130
174
  ## 🤝 Contributing
131
175
 
132
176
  We welcome contributions! Please see our **[Developer Guide](https://github.com/meta-pytorch/tritonparse/wiki/04.-Developer-Guide)** for:
133
- - Development setup
134
- - Code formatting standards
135
- - Pull request process
177
+ - Development setup and prerequisites
178
+ - Code formatting standards (**[Formatting Guide](https://github.com/meta-pytorch/tritonparse/wiki/05.-Code-Formatting)**)
179
+ - Pull request and code review process
180
+ - Testing guidelines
136
181
  - Architecture overview
137
182
 
138
183
  ## 📞 Support & Community
@@ -9,13 +9,27 @@
9
9
 
10
10
  ## ✨ Key Features
11
11
 
12
- - **🚀 Launch Difference Analysis** - Automatically detect and visualize variations in kernel launch parameters, helping you pinpoint performance bottlenecks and debug launch configurations.
13
- - **🔍 Interactive Visualization** - Explore Triton kernels with detailed metadata and stack traces
14
- - **📊 Multi-format IR Support** - View TTGIR, TTIR, LLIR, PTX, and AMDGCN in one place
15
- - **🔄 Side-by-side Comparison** - Compare IR stages with synchronized highlighting
16
- - **📝 Structured Logging** - Capture detailed compilation and launch events with source mapping
17
- - **🌐 Ready-to-use Interface** - No installation required, works in your browser
18
- - **🔒 Privacy-first** - All processing happens locally in your browser, no data uploaded
12
+ ### 🔍 Visualization & Analysis
13
+ - **🚀 Launch Difference Analysis** - Detect and visualize kernel launch parameter variations
14
+ - **📊 IR Code View** - Side-by-side IR viewing with synchronized highlighting and line mapping
15
+ - **🔄 File Diff View** - Compare kernels across different trace files side-by-side
16
+ - **📝 Multi-format IR Support** - View TTGIR, TTIR, LLIR, PTX, and AMDGCN
17
+ - **🎯 Interactive Code Views** - Click-to-highlight corresponding lines across IR stages
18
+
19
+ ### 🔧 Reproducer & Debugging Tools
20
+ - **🔄 Standalone Script Generation** - Extract any kernel into a self-contained Python script
21
+ - **💾 Tensor Data Reconstruction** - Preserve actual tensor data or use statistical approximation
22
+ - **🎯 Custom Templates** - Flexible reproducer templates for different workflows
23
+ - **🐛 Bug Isolation** - Share reproducible test cases for debugging and collaboration
24
+
25
+ ### 📊 Structured Logging & Analysis
26
+ - **📝 Compilation & Launch Tracing** - Capture detailed events with source mapping
27
+ - **🔍 Stack Trace Integration** - Full Python stack traces for debugging
28
+ - **📈 Metadata Extraction** - Comprehensive kernel statistics
29
+
30
+ ### 🛠️ Developer Tools
31
+ - **🌐 Browser-based Interface** - No installation required, works in your browser
32
+ - **🔒 Privacy-first** - All processing happens locally, no data uploaded
19
33
 
20
34
  ## 🚀 Quick Start
21
35
 
@@ -23,22 +37,22 @@
23
37
 
24
38
  ```python
25
39
  import tritonparse.structured_logging
40
+ import tritonparse.utils
26
41
 
27
- # Initialize logging with launch tracing enabled
42
+ # Initialize logging
28
43
  tritonparse.structured_logging.init("./logs/", enable_trace_launch=True)
29
44
 
30
45
  # Your Triton/PyTorch code here
31
46
  # ... your kernels ...
32
47
 
33
48
  # Parse and generate trace files
34
- import tritonparse.utils
35
- tritonparse.utils.unified_parse("./logs/")
49
+ tritonparse.utils.unified_parse("./logs/", out="./parsed_output")
36
50
  ```
37
- The example terminal output is:
38
- ```bash
39
- tritonparse log file list: /tmp/tmp1gan7zky/log_file_list.json
40
- INFO:tritonparse:Copying parsed logs from /tmp/tmp1gan7zky to /scratch/findhao/tritonparse/tests/parsed_output
41
51
 
52
+ <details>
53
+ <summary>📝 Example output (click to expand)</summary>
54
+
55
+ ```bash
42
56
  ================================================================================
43
57
  📁 TRITONPARSE PARSING RESULTS
44
58
  ================================================================================
@@ -46,13 +60,13 @@ INFO:tritonparse:Copying parsed logs from /tmp/tmp1gan7zky to /scratch/findhao/t
46
60
  📊 Total files generated: 2
47
61
 
48
62
  📄 Generated files:
49
- --------------------------------------------------
50
63
  1. 📝 dedicated_log_triton_trace_findhao__mapped.ndjson.gz (7.2KB)
51
64
  2. 📝 log_file_list.json (181B)
52
65
  ================================================================================
53
66
  ✅ Parsing completed successfully!
54
67
  ================================================================================
55
68
  ```
69
+ </details>
56
70
 
57
71
  ### 2. Visualize Results
58
72
 
@@ -60,6 +74,41 @@ INFO:tritonparse:Copying parsed logs from /tmp/tmp1gan7zky to /scratch/findhao/t
60
74
 
61
75
  > **🔒 Privacy Note**: Your trace files are processed entirely in your browser - nothing is uploaded to any server!
62
76
 
77
+ ### 3. Generate Reproducers (Optional)
78
+
79
+ Extract any kernel into a standalone, executable Python script for debugging or testing:
80
+
81
+ ```bash
82
+ # Generate reproducer from first launch event
83
+ tritonparse reproduce ./parsed_output/trace.ndjson.gz --line 2 --out-dir repro_output
84
+
85
+ # Run the generated reproducer
86
+ cd repro_output/<kernel_name>/
87
+ python repro_*.py
88
+ ```
89
+
90
+ **Python API:**
91
+ ```python
92
+ from tritonparse.reproducer.orchestrator import reproduce
93
+
94
+ result = reproduce(
95
+ input_path="./parsed_output/trace.ndjson.gz",
96
+ line_index=1, # Which launch event (1-based)
97
+ out_dir="repro_output"
98
+ )
99
+ ```
100
+
101
+ <details>
102
+ <summary>🎯 Common Reproducer Use Cases (click to expand)</summary>
103
+
104
+ - **🐛 Bug Isolation**: Extract a failing kernel into a minimal standalone script
105
+ - **⚡ Performance Testing**: Benchmark specific kernels without running the full application
106
+ - **🤝 Team Collaboration**: Share reproducible test cases with colleagues or in bug reports
107
+ - **📊 Regression Testing**: Compare kernel behavior and performance across different versions
108
+ - **🔍 Deep Debugging**: Modify and experiment with kernel parameters in isolation
109
+
110
+ </details>
111
+
63
112
  ## 🛠️ Installation
64
113
 
65
114
  **For basic usage (trace generation):**
@@ -88,18 +137,13 @@ pip install triton
88
137
 
89
138
  | 📖 Guide | Description |
90
139
  |----------|-------------|
91
- | **[🏠 Wiki Home](https://github.com/meta-pytorch/tritonparse/wiki)** | Complete documentation and navigation |
92
- | **[📦 Installation Guide](https://github.com/meta-pytorch/tritonparse/wiki/01.-Installation)** | Detailed setup for all scenarios |
93
- | **[📋 Usage Guide](https://github.com/meta-pytorch/tritonparse/wiki/02.-Usage-Guide)** | Complete workflow and examples |
94
- | **[🌐 Web Interface Guide](https://github.com/meta-pytorch/tritonparse/wiki/03.-Web-Interface-Guide)** | Master the visualization interface |
95
- | **[🔧 Developer Guide](https://github.com/meta-pytorch/tritonparse/wiki/04.-Developer-Guide)** | Contributing and development setup |
96
- | **[ FAQ](https://github.com/meta-pytorch/tritonparse/wiki/06.-FAQ)** | Frequently asked questions |
97
-
98
- ## 🛠️ Tech Stack
99
-
100
- - **Frontend**: React 19, TypeScript, Vite, Tailwind CSS, Monaco Editor
101
- - **Backend**: Python with Triton integration, structured logging
102
- - **Deployment**: GitHub Pages, automatic deployment
140
+ | **[🏠 Wiki Home](https://github.com/meta-pytorch/tritonparse/wiki)** | Complete documentation and quick navigation |
141
+ | **[📦 Installation](https://github.com/meta-pytorch/tritonparse/wiki/01.-Installation)** | Setup guide for all scenarios |
142
+ | **[📋 Usage Guide](https://github.com/meta-pytorch/tritonparse/wiki/02.-Usage-Guide)** | Complete workflow, reproducer generation, and examples |
143
+ | **[🌐 Web Interface](https://github.com/meta-pytorch/tritonparse/wiki/03.-Web-Interface-Guide)** | Master the visualization interface |
144
+ | **[🔧 Developer Guide](https://github.com/meta-pytorch/tritonparse/wiki/04.-Developer-Guide)** | Contributing and architecture overview |
145
+ | **[📝 Code Formatting](https://github.com/meta-pytorch/tritonparse/wiki/05.-Code-Formatting)** | Formatting standards and tools |
146
+ | **[❓ FAQ](https://github.com/meta-pytorch/tritonparse/wiki/06.-FAQ)** | Quick answers and troubleshooting |
103
147
 
104
148
  ## 📊 Understanding Triton Compilation
105
149
 
@@ -112,9 +156,10 @@ Each stage can be inspected and compared to understand optimization transformati
112
156
  ## 🤝 Contributing
113
157
 
114
158
  We welcome contributions! Please see our **[Developer Guide](https://github.com/meta-pytorch/tritonparse/wiki/04.-Developer-Guide)** for:
115
- - Development setup
116
- - Code formatting standards
117
- - Pull request process
159
+ - Development setup and prerequisites
160
+ - Code formatting standards (**[Formatting Guide](https://github.com/meta-pytorch/tritonparse/wiki/05.-Code-Formatting)**)
161
+ - Pull request and code review process
162
+ - Testing guidelines
118
163
  - Architecture overview
119
164
 
120
165
  ## 📞 Support & Community