tritonparse 0.2.4.dev20251006071528__tar.gz → 0.2.4.dev20251008071501__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 (123) hide show
  1. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/.gitignore +1 -0
  2. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/PKG-INFO +36 -31
  3. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/README.md +35 -30
  4. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/pyproject.toml +1 -1
  5. tritonparse-0.2.4.dev20251008071501/run.py +8 -0
  6. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tritonparse/__main__.py +1 -1
  7. tritonparse-0.2.4.dev20251006071528/run.py → tritonparse-0.2.4.dev20251008071501/tritonparse/cli.py +7 -4
  8. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tritonparse/context_manager.py +14 -1
  9. tritonparse-0.2.4.dev20251008071501/tritonparse/reproducer/templates/example.py +387 -0
  10. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tritonparse/structured_logging.py +320 -3
  11. tritonparse-0.2.4.dev20251008071501/tritonparse/tools/load_tensor.py +74 -0
  12. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tritonparse.egg-info/PKG-INFO +36 -31
  13. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tritonparse.egg-info/SOURCES.txt +1 -1
  14. tritonparse-0.2.4.dev20251008071501/tritonparse.egg-info/entry_points.txt +2 -0
  15. tritonparse-0.2.4.dev20251006071528/.github/copilot-instructions.md +0 -47
  16. tritonparse-0.2.4.dev20251006071528/tritonparse/reproducer/templates/example.py +0 -320
  17. tritonparse-0.2.4.dev20251006071528/tritonparse/tools/load_tensor.py +0 -58
  18. tritonparse-0.2.4.dev20251006071528/tritonparse.egg-info/entry_points.txt +0 -2
  19. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/.ci/README.md +0 -0
  20. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/.ci/install-project.sh +0 -0
  21. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/.ci/install-triton-kernels.sh +0 -0
  22. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/.ci/install-triton.sh +0 -0
  23. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/.ci/run-tests.sh +0 -0
  24. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/.ci/setup.sh +0 -0
  25. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/.github/PAGES_SETUP.md +0 -0
  26. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/.github/workflows/deploy-pages-standalone.yml +0 -0
  27. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/.github/workflows/deploy-pages.yml +0 -0
  28. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/.github/workflows/nightly-pypi.yml +0 -0
  29. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/.github/workflows/test.yml +0 -0
  30. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/CHANGELOG.md +0 -0
  31. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/CODE_OF_CONDUCT.md +0 -0
  32. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/CONTRIBUTING.md +0 -0
  33. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/LICENSE +0 -0
  34. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/Makefile +0 -0
  35. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/__init__.py +0 -0
  36. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/docs/README.md +0 -0
  37. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/docs/screenshots/code-comparison.png +0 -0
  38. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/docs/screenshots/kernel-overview.png +0 -0
  39. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/setup.cfg +0 -0
  40. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tests/README.md +0 -0
  41. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tests/__init__.py +0 -0
  42. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tests/example_output/logs/dedicated_log_triton_trace_findhao_.ndjson +0 -0
  43. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tests/example_output/parsed_output/dedicated_log_triton_trace_findhao__mapped.ndjson.gz +0 -0
  44. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tests/example_output/parsed_output/f0_fc0_a0_cai-.ndjson.gz +0 -0
  45. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tests/example_output/parsed_output/log_file_list.json +0 -0
  46. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tests/example_output/parsed_output_complex/dedicated_log_triton_trace_findhao__mapped.ndjson.gz +0 -0
  47. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tests/example_output/parsed_output_complex/log_file_list.json +0 -0
  48. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tests/example_output/repro/repro_context_20250816192455.json +0 -0
  49. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tests/test_add.py +0 -0
  50. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tests/test_tritonparse.py +0 -0
  51. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tritonparse/__init__.py +0 -0
  52. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tritonparse/common.py +0 -0
  53. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tritonparse/event_diff.py +0 -0
  54. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tritonparse/extract_source_mappings.py +0 -0
  55. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tritonparse/ir_parser.py +0 -0
  56. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tritonparse/mapper.py +0 -0
  57. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tritonparse/reproducer/__init__.py +0 -0
  58. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tritonparse/reproducer/cli.py +0 -0
  59. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tritonparse/reproducer/ingestion/ndjson.py +0 -0
  60. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tritonparse/reproducer/orchestrator.py +0 -0
  61. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tritonparse/reproducer/placeholder_replacer.py +0 -0
  62. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tritonparse/reproducer/templates/__init__.py +0 -0
  63. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tritonparse/reproducer/templates/loader.py +0 -0
  64. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tritonparse/reproducer/utils.py +0 -0
  65. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tritonparse/shared_vars.py +0 -0
  66. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tritonparse/source_type.py +0 -0
  67. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tritonparse/sourcemap_utils.py +0 -0
  68. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tritonparse/tools/__init__.py +0 -0
  69. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tritonparse/tools/decompress_bin_ndjson.py +0 -0
  70. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tritonparse/tools/disasm.py +0 -0
  71. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tritonparse/tools/format_fix.py +0 -0
  72. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tritonparse/tools/prettify_ndjson.py +0 -0
  73. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tritonparse/tools/readme.md +0 -0
  74. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tritonparse/tp_logger.py +0 -0
  75. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tritonparse/trace_processor.py +0 -0
  76. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tritonparse/utils.py +0 -0
  77. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tritonparse.egg-info/dependency_links.txt +0 -0
  78. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tritonparse.egg-info/requires.txt +0 -0
  79. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/tritonparse.egg-info/top_level.txt +0 -0
  80. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/eslint.config.js +0 -0
  81. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/index.html +0 -0
  82. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/package-lock.json +0 -0
  83. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/package.json +0 -0
  84. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/postcss.config.js +0 -0
  85. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/public/dedicated_log_triton_trace_findhao__mapped.ndjson.gz +0 -0
  86. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/public/f0_fc0_a0_cai-.ndjson +0 -0
  87. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/public/favicon.ico +0 -0
  88. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/public/logo.svg +0 -0
  89. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/scripts/inline-html.js +0 -0
  90. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/src/App.css +0 -0
  91. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/src/App.tsx +0 -0
  92. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/src/assets/react.svg +0 -0
  93. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/src/components/ArgumentViewer.tsx +0 -0
  94. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/src/components/Callstack.tsx +0 -0
  95. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/src/components/CodeComparisonView.tsx +0 -0
  96. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/src/components/CodeViewer.tsx +0 -0
  97. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/src/components/CompilationInfo.tsx +0 -0
  98. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/src/components/CopyCodeButton.tsx +0 -0
  99. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/src/components/DataSourceSelector.tsx +0 -0
  100. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/src/components/DiffComparisonView.tsx +0 -0
  101. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/src/components/DiffViewer.tsx +0 -0
  102. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/src/components/ExternalLink.tsx +0 -0
  103. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/src/components/SingleCodeViewer.tsx +0 -0
  104. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/src/components/StackDiffViewer.tsx +0 -0
  105. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/src/components/ToggleSwitch.tsx +0 -0
  106. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/src/components/TritonIRs.tsx +0 -0
  107. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/src/components/WelcomeScreen.tsx +0 -0
  108. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/src/context/FileDiffSession.tsx +0 -0
  109. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/src/index.css +0 -0
  110. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/src/main.tsx +0 -0
  111. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/src/pages/CodeView.tsx +0 -0
  112. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/src/pages/FileDiffView.tsx +0 -0
  113. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/src/pages/KernelOverview.tsx +0 -0
  114. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/src/utils/dataLoader.ts +0 -0
  115. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/src/utils/fbDetection.ts +0 -0
  116. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/src/utils/safeImport.ts +0 -0
  117. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/src/utils/tensor.ts +0 -0
  118. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/src/vite-env.d.ts +0 -0
  119. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/tailwind.config.js +0 -0
  120. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/tsconfig.app.json +0 -0
  121. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/tsconfig.json +0 -0
  122. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/tsconfig.node.json +0 -0
  123. {tritonparse-0.2.4.dev20251006071528 → tritonparse-0.2.4.dev20251008071501}/website/vite.config.ts +0 -0
@@ -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.dev20251006071528
3
+ Version: 0.2.4.dev20251008071501
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,22 @@ 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
+ ### 📊 Structured Logging & Analysis
38
+ - **📝 Compilation & Launch Tracing** - Capture detailed events with source mapping
39
+ - **🔍 Stack Trace Integration** - Full Python stack traces for debugging
40
+ - **📈 Metadata Extraction** - Comprehensive kernel statistics
41
+
42
+ ### 🛠️ Developer Tools
43
+ - **🔧 Reproducer Generation** - Generate standalone Python scripts to reproduce kernels
44
+ - **🌐 Browser-based Interface** - No installation required, works in your browser
45
+ - **🔒 Privacy-first** - All processing happens locally, no data uploaded
37
46
 
38
47
  ## 🚀 Quick Start
39
48
 
@@ -41,22 +50,22 @@ Dynamic: license-file
41
50
 
42
51
  ```python
43
52
  import tritonparse.structured_logging
53
+ import tritonparse.utils
44
54
 
45
- # Initialize logging with launch tracing enabled
55
+ # Initialize logging
46
56
  tritonparse.structured_logging.init("./logs/", enable_trace_launch=True)
47
57
 
48
58
  # Your Triton/PyTorch code here
49
59
  # ... your kernels ...
50
60
 
51
61
  # Parse and generate trace files
52
- import tritonparse.utils
53
- tritonparse.utils.unified_parse("./logs/")
62
+ tritonparse.utils.unified_parse("./logs/", out="./parsed_output")
54
63
  ```
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
64
 
65
+ <details>
66
+ <summary>📝 Example output (click to expand)</summary>
67
+
68
+ ```bash
60
69
  ================================================================================
61
70
  📁 TRITONPARSE PARSING RESULTS
62
71
  ================================================================================
@@ -64,13 +73,13 @@ INFO:tritonparse:Copying parsed logs from /tmp/tmp1gan7zky to /scratch/findhao/t
64
73
  📊 Total files generated: 2
65
74
 
66
75
  📄 Generated files:
67
- --------------------------------------------------
68
76
  1. 📝 dedicated_log_triton_trace_findhao__mapped.ndjson.gz (7.2KB)
69
77
  2. 📝 log_file_list.json (181B)
70
78
  ================================================================================
71
79
  ✅ Parsing completed successfully!
72
80
  ================================================================================
73
81
  ```
82
+ </details>
74
83
 
75
84
  ### 2. Visualize Results
76
85
 
@@ -106,18 +115,13 @@ pip install triton
106
115
 
107
116
  | 📖 Guide | Description |
108
117
  |----------|-------------|
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
118
+ | **[🏠 Wiki Home](https://github.com/meta-pytorch/tritonparse/wiki)** | Complete documentation and quick navigation |
119
+ | **[📦 Installation](https://github.com/meta-pytorch/tritonparse/wiki/01.-Installation)** | Setup guide for all scenarios |
120
+ | **[📋 Usage Guide](https://github.com/meta-pytorch/tritonparse/wiki/02.-Usage-Guide)** | Complete workflow, examples, and reproducer |
121
+ | **[🌐 Web Interface](https://github.com/meta-pytorch/tritonparse/wiki/03.-Web-Interface-Guide)** | Master the visualization interface |
122
+ | **[🔧 Developer Guide](https://github.com/meta-pytorch/tritonparse/wiki/04.-Developer-Guide)** | Contributing and architecture overview |
123
+ | **[📝 Code Formatting](https://github.com/meta-pytorch/tritonparse/wiki/05.-Code-Formatting)** | Formatting standards and tools |
124
+ | **[❓ FAQ](https://github.com/meta-pytorch/tritonparse/wiki/06.-FAQ)** | Quick answers and troubleshooting |
121
125
 
122
126
  ## 📊 Understanding Triton Compilation
123
127
 
@@ -130,9 +134,10 @@ Each stage can be inspected and compared to understand optimization transformati
130
134
  ## 🤝 Contributing
131
135
 
132
136
  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
137
+ - Development setup and prerequisites
138
+ - Code formatting standards (**[Formatting Guide](https://github.com/meta-pytorch/tritonparse/wiki/05.-Code-Formatting)**)
139
+ - Pull request and code review process
140
+ - Testing guidelines
136
141
  - Architecture overview
137
142
 
138
143
  ## 📞 Support & Community
@@ -9,13 +9,22 @@
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
+ ### 📊 Structured Logging & Analysis
20
+ - **📝 Compilation & Launch Tracing** - Capture detailed events with source mapping
21
+ - **🔍 Stack Trace Integration** - Full Python stack traces for debugging
22
+ - **📈 Metadata Extraction** - Comprehensive kernel statistics
23
+
24
+ ### 🛠️ Developer Tools
25
+ - **🔧 Reproducer Generation** - Generate standalone Python scripts to reproduce kernels
26
+ - **🌐 Browser-based Interface** - No installation required, works in your browser
27
+ - **🔒 Privacy-first** - All processing happens locally, no data uploaded
19
28
 
20
29
  ## 🚀 Quick Start
21
30
 
@@ -23,22 +32,22 @@
23
32
 
24
33
  ```python
25
34
  import tritonparse.structured_logging
35
+ import tritonparse.utils
26
36
 
27
- # Initialize logging with launch tracing enabled
37
+ # Initialize logging
28
38
  tritonparse.structured_logging.init("./logs/", enable_trace_launch=True)
29
39
 
30
40
  # Your Triton/PyTorch code here
31
41
  # ... your kernels ...
32
42
 
33
43
  # Parse and generate trace files
34
- import tritonparse.utils
35
- tritonparse.utils.unified_parse("./logs/")
44
+ tritonparse.utils.unified_parse("./logs/", out="./parsed_output")
36
45
  ```
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
46
 
47
+ <details>
48
+ <summary>📝 Example output (click to expand)</summary>
49
+
50
+ ```bash
42
51
  ================================================================================
43
52
  📁 TRITONPARSE PARSING RESULTS
44
53
  ================================================================================
@@ -46,13 +55,13 @@ INFO:tritonparse:Copying parsed logs from /tmp/tmp1gan7zky to /scratch/findhao/t
46
55
  📊 Total files generated: 2
47
56
 
48
57
  📄 Generated files:
49
- --------------------------------------------------
50
58
  1. 📝 dedicated_log_triton_trace_findhao__mapped.ndjson.gz (7.2KB)
51
59
  2. 📝 log_file_list.json (181B)
52
60
  ================================================================================
53
61
  ✅ Parsing completed successfully!
54
62
  ================================================================================
55
63
  ```
64
+ </details>
56
65
 
57
66
  ### 2. Visualize Results
58
67
 
@@ -88,18 +97,13 @@ pip install triton
88
97
 
89
98
  | 📖 Guide | Description |
90
99
  |----------|-------------|
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
100
+ | **[🏠 Wiki Home](https://github.com/meta-pytorch/tritonparse/wiki)** | Complete documentation and quick navigation |
101
+ | **[📦 Installation](https://github.com/meta-pytorch/tritonparse/wiki/01.-Installation)** | Setup guide for all scenarios |
102
+ | **[📋 Usage Guide](https://github.com/meta-pytorch/tritonparse/wiki/02.-Usage-Guide)** | Complete workflow, examples, and reproducer |
103
+ | **[🌐 Web Interface](https://github.com/meta-pytorch/tritonparse/wiki/03.-Web-Interface-Guide)** | Master the visualization interface |
104
+ | **[🔧 Developer Guide](https://github.com/meta-pytorch/tritonparse/wiki/04.-Developer-Guide)** | Contributing and architecture overview |
105
+ | **[📝 Code Formatting](https://github.com/meta-pytorch/tritonparse/wiki/05.-Code-Formatting)** | Formatting standards and tools |
106
+ | **[❓ FAQ](https://github.com/meta-pytorch/tritonparse/wiki/06.-FAQ)** | Quick answers and troubleshooting |
103
107
 
104
108
  ## 📊 Understanding Triton Compilation
105
109
 
@@ -112,9 +116,10 @@ Each stage can be inspected and compared to understand optimization transformati
112
116
  ## 🤝 Contributing
113
117
 
114
118
  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
119
+ - Development setup and prerequisites
120
+ - Code formatting standards (**[Formatting Guide](https://github.com/meta-pytorch/tritonparse/wiki/05.-Code-Formatting)**)
121
+ - Pull request and code review process
122
+ - Testing guidelines
118
123
  - Architecture overview
119
124
 
120
125
  ## 📞 Support & Community
@@ -48,4 +48,4 @@ local_scheme = "no-local-version"
48
48
  "Homepage" = "https://github.com/meta-pytorch/tritonparse"
49
49
 
50
50
  [project.scripts]
51
- tritonparse = "tritonparse.run:main"
51
+ tritonparseoss = "tritonparse.cli:main"
@@ -0,0 +1,8 @@
1
+ #!/usr/bin/env python3
2
+ # Copyright (c) Meta Platforms, Inc. and affiliates.
3
+
4
+ from tritonparse.cli import main
5
+
6
+ if __name__ == "__main__":
7
+ # Do not add code here, it won't be run. Add them to the function called below.
8
+ main() # pragma: no cover
@@ -1,4 +1,4 @@
1
- from .run import main
1
+ from .cli import main
2
2
 
3
3
 
4
4
  if __name__ == "__main__":
@@ -1,9 +1,9 @@
1
1
  #!/usr/bin/env python3
2
2
  # Copyright (c) Meta Platforms, Inc. and affiliates.
3
-
4
3
  import argparse
5
4
  from importlib.metadata import PackageNotFoundError, version
6
5
 
6
+ from .common import is_fbcode
7
7
  from .reproducer.cli import _add_reproducer_args
8
8
  from .reproducer.orchestrator import reproduce
9
9
  from .utils import _add_parse_args, unified_parse
@@ -19,15 +19,18 @@ def _get_package_version() -> str:
19
19
  def main():
20
20
  pkg_version = _get_package_version()
21
21
 
22
+ # Use different command name for fbcode vs OSS
23
+ prog_name = "tritonparse" if is_fbcode() else "tritonparseoss"
24
+
22
25
  parser = argparse.ArgumentParser(
23
- prog="tritonparse",
26
+ prog=prog_name,
24
27
  description=(
25
28
  "TritonParse: parse structured logs and generate minimal reproducers"
26
29
  ),
27
30
  epilog=(
28
31
  "Examples:\n"
29
- " tritonparse parse /path/to/logs --out parsed_output\n"
30
- " tritonparse reproduce /path/to/trace.ndjson --line 1 --out-dir repro_output\n"
32
+ f" {prog_name} parse /path/to/logs --out parsed_output\n"
33
+ f" {prog_name} reproduce /path/to/trace.ndjson --line 2 --out-dir repro_output\n"
31
34
  ),
32
35
  formatter_class=argparse.RawDescriptionHelpFormatter,
33
36
  )
@@ -17,6 +17,8 @@ class TritonParseManager:
17
17
  self,
18
18
  enable_trace_launch=False,
19
19
  split_inductor_compilations=True,
20
+ enable_tensor_blob_storage=False,
21
+ tensor_storage_quota=None,
20
22
  **parse_kwargs,
21
23
  ):
22
24
  """
@@ -25,17 +27,28 @@ class TritonParseManager:
25
27
  Args:
26
28
  enable_trace_launch: Whether to enable trace launch
27
29
  split_inductor_compilations: Whether to split inductor compilations in the output
30
+ enable_tensor_blob_storage: Whether to enable tensor blob storage
31
+ tensor_storage_quota: Storage quota in bytes for tensor blobs (default: 100GB)
28
32
  **parse_kwargs: Additional keyword arguments to pass to unified_parse
29
33
  """
30
34
  self.enable_trace_launch = enable_trace_launch
31
35
  self.split_inductor_compilations = split_inductor_compilations
36
+ self.enable_tensor_blob_storage = enable_tensor_blob_storage
37
+ self.tensor_storage_quota = tensor_storage_quota
32
38
  self.parse_kwargs = parse_kwargs
33
39
  self.dir_path = None
34
40
  self.output_link = None
35
41
 
36
42
  def __enter__(self):
37
43
  self.dir_path = createUniqueTempDirectory()
38
- init(self.dir_path, enable_trace_launch=self.enable_trace_launch)
44
+ init_kwargs = {
45
+ "enable_trace_launch": self.enable_trace_launch,
46
+ "enable_tensor_blob_storage": self.enable_tensor_blob_storage,
47
+ }
48
+ if self.tensor_storage_quota is not None:
49
+ init_kwargs["tensor_storage_quota"] = self.tensor_storage_quota
50
+
51
+ init(self.dir_path, **init_kwargs)
39
52
  return self
40
53
 
41
54
  def __exit__(self, exc_type, exc_val, exc_tb):