-
Notifications
You must be signed in to change notification settings - Fork 26
Enable AMD-AGI/TraceLens to reproduce minimal tests required by amd/skills
#1000
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
danielholanda
wants to merge
24
commits into
AMD-AGI:main
Choose a base branch
from
danielholanda:dholanda/upstream
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
24 commits
Select commit
Hold shift + click to select a range
ab320ba
Add evals
danielholanda f4af496
Merge pull request #1 from danielholanda/dholanda/sync_demo
danielholanda 359ec3f
Increase max retries for findings file validation
danielholanda 68e3b6f
Update max retries for findings file validation
danielholanda 0428165
Run black
danielholanda df75ecc
headers
danielholanda cbbb0ae
Merge branch 'main' into main
danielholanda 050978e
Sync analysis-orchestrator evals with amd/skills#193
cursoragent 53cb50b
Merge pull request #2 from danielholanda/dholanda/tl_ss
danielholanda 6a0b5b0
Run the analysis-orchestrator evals with skillscope (#3)
danielholanda 3bf24f1
Point skill-evals at skillscope's first-class commands (#4)
danielholanda 83c8949
Use reusable workflow
danielholanda 968ffee
Better eval name
danielholanda d2d3767
Tergets
danielholanda ec934da
Merge pull request #5 from danielholanda/dholanda/reusable_tl
danielholanda 5af9b4a
Point to upstream repo
danielholanda 9482e1b
Merge pull request #6 from danielholanda/dholanda/upstream
danielholanda 61fc0d7
Add options to dispatchable workflow
danielholanda 1b6fcb3
Ensure folder and skill match names
danielholanda 5af9e1d
Merge pull request #7 from danielholanda/dholanda/dispatch_options
danielholanda ac83bc8
Trigger workflows with checkboxes
danielholanda 1425214
Fix naming
danielholanda ca305a3
Merge pull request #8 from danielholanda/dholanda/checkboxes
danielholanda 255dfe4
Merge branch 'main' into dholanda/upstream
danielholanda File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,45 @@ | ||
| ############################################################################### | ||
| # Copyright (c) 2026 Advanced Micro Devices, Inc. All rights reserved. | ||
| # | ||
| # See LICENSE for license information. | ||
| ############################################################################### | ||
|
|
||
| # Run skillscope on evals.json (same intake criteria as amd/skills) | ||
|
|
||
| name: AMD Skills Checks | ||
|
|
||
| on: | ||
| pull_request: | ||
| paths: | ||
| - "TraceLens/Agent/Analysis/skills/**" | ||
| - ".github/workflows/skill-evals.yml" | ||
| workflow_dispatch: | ||
| inputs: | ||
| structural: | ||
| description: Structural Tests | ||
| type: boolean | ||
| default: true | ||
| routing: | ||
| description: Routing Tests | ||
| type: boolean | ||
| default: false | ||
| behavioral: | ||
| description: Behavioral Tests | ||
| type: boolean | ||
| default: false | ||
|
|
||
| permissions: | ||
| contents: read | ||
|
|
||
| jobs: | ||
| evals: | ||
| name: AMD Skills Checks | ||
| uses: amd/skillscope/.github/workflows/reusable.yml@main | ||
| secrets: | ||
| api_key: ${{ secrets.ANTHROPIC_API_KEY }} | ||
| with: | ||
| skills: TraceLens/Agent/Analysis/skills/analysis-orchestrator | ||
| # Each step can be set to `required`, `optional`, or `off`. | ||
| structural: ${{ github.event_name != 'workflow_dispatch' && 'required' || inputs.structural && 'required' || 'off' }} | ||
| routing: ${{ github.event_name == 'workflow_dispatch' && inputs.routing && 'required' || 'off' }} | ||
| behavioral: ${{ github.event_name == 'workflow_dispatch' && inputs.behavioral && 'required' || 'off' }} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
50 changes: 50 additions & 0 deletions
50
TraceLens/Agent/Analysis/skills/analysis-orchestrator/evals/evals.json
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,50 @@ | ||
| { | ||
| "evaluations": [ | ||
| { | ||
| "id": "gemm-01-repeatability", | ||
| "skill_should_trigger": true, | ||
| "prompt": "Run the full standalone TraceLens analysis workflow on locally with the default analysis mode, and write everything to analysis_output/ in the current directory. The trace ships inside https://github.com/AMD-AGI/TraceLens/raw/main/agent_evals/Analysis/analysis_tests/unit_tests_standalone.tar.gz. Unpack that and analyze agent_evals/Analysis/analysis_tests/unit_tests_standalone/gemm/gemm_01_compute_few_tiles_analysis_output/gemm_01_compute_few_tiles.json.", | ||
| "files_exist": [ | ||
| "analysis_output/analysis.md", | ||
| "analysis_output/perf_report.xlsx", | ||
| "analysis_output/category_data/category_manifest.json", | ||
| "analysis_output/priority_data.json", | ||
| "analysis_output/metadata/model_info.json", | ||
| "analysis_output/perf_improvement.png" | ||
| ], | ||
| "expected_behavior": [ | ||
| "Filled the Executive Summary of analysis.md with measured numbers, leaving no template placeholders such as 'X ms', 'Y%' or '<Brief Title>' behind" | ||
| ] | ||
| }, | ||
| { | ||
| "id": "analyze-torch-trace", | ||
| "skill_should_trigger": true, | ||
| "prompt": "My training step is way slower than I expected. I ran it under the PyTorch profiler and the output is at https://github.com/AMD-AGI/TraceLens/raw/main/tests/traces/mi300/resnet_act_checkpoint.json.gz. Work out where the time is actually going and write it up so I know what to fix first." | ||
| }, | ||
| { | ||
| "id": "compare-two-traces", | ||
| "skill_should_trigger": true, | ||
| "prompt": "I profiled the same model on two different machines and one is clearly slower, but I can't tell why. The captures are at https://github.com/AMD-AGI/TraceLens/raw/main/tests/traces/mi300/facebook_timesformer-base-finetuned-k400__1016002.json.gz and https://github.com/AMD-AGI/TraceLens/raw/main/tests/traces/h100/facebook_timesformer-base-finetuned-k400__1016002.json.gz. Tell me which GPU kernels are worse on the slow one, worst first, and write it up." | ||
| }, | ||
| { | ||
| "id": "agentic-analysis-workflow", | ||
| "skill_should_trigger": true, | ||
| "prompt": "Run the agentic analysis workflow on the trace at https://github.com/AMD-AGI/TraceLens/raw/main/tests/traces/mi300/gaunernst_bert-small-uncased__1016001.json.gz and produce analysis.md." | ||
| }, | ||
| { | ||
| "id": "kernel-perf-report", | ||
| "skill_should_trigger": true, | ||
| "prompt": "I captured a GPU kernel trace from a distributed training run: https://github.com/AMD-AGI/TraceLens/raw/main/tests/traces/mi300/llama_70b_fsdp/rank0_trace_no_pyfn.json.gz. I need a prioritized report of the worst performance offenders that I can show stakeholders." | ||
| }, | ||
| { | ||
| "id": "node-event-loop", | ||
| "skill_should_trigger": false, | ||
| "prompt": "My Node.js server shows high event loop latency under load. Help me profile it and find the blocking call." | ||
| }, | ||
| { | ||
| "id": "cprofile-python-script", | ||
| "skill_should_trigger": false, | ||
| "prompt": "Profile my Python script with cProfile and tell me which function is eating the most time." | ||
| } | ||
| ] | ||
| } |
7 changes: 7 additions & 0 deletions
7
TraceLens/Agent/Analysis/skills/analysis-orchestrator/evals/machine.yml
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| ############################################################################### | ||
| # Copyright (c) 2026 Advanced Micro Devices, Inc. All rights reserved. | ||
| # | ||
| # See LICENSE for license information. | ||
| ############################################################################### | ||
|
|
||
| os: [Linux] |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same comment as in the PR description: