Repository navigation
Adding device SPM support - #11879
Merged
Merged
Conversation
✅ All Policy Checks Passed
📖 Need help? See the Policy FAQ for details on every check and how to fix failures. |
|
🚫 Please fix the failed policies before requesting reviews. The following policy checks failed:
The |
bing-ma
reviewed
Sep 18, 2026
bing-ma
reviewed
Sep 18, 2026
bing-ma
requested changes
Sep 18, 2026
bing-ma
left a comment
Contributor
There was a problem hiding this comment.
Looks good to me overall, except for a couple of minor RFCs.
sauverma93
reviewed
Sep 21, 2026
bing-ma
reviewed
Sep 25, 2026
SrirakshaNag
force-pushed
the
users/SrirakshaNag/spm-device
branch
from
September 29, 2026 22:58
8df99f5 to
af31cba
Compare
sauverma93
reviewed
Sep 30, 2026
sauverma93
approved these changes
Sep 30, 2026
SrirakshaNag
force-pushed
the
users/SrirakshaNag/spm-device
branch
2 times, most recently
from
October 2, 2026 16:44
c8e41c9 to
4b44e76
Compare
bwelton
approved these changes
Oct 2, 2026
bwelton
left a comment
Contributor
There was a problem hiding this comment.
No blockers, looks good. Just some general comments/questions.
SrirakshaNag
force-pushed
the
users/SrirakshaNag/spm-device
branch
from
October 5, 2026 21:50
236d0c4 to
a7bc614
Compare
SrirakshaNag
force-pushed
the
users/SrirakshaNag/spm-device
branch
from
October 6, 2026 16:56
a7bc614 to
6f3797c
Compare
cursor Bot
pushed a commit
that referenced
this pull request
Oct 9, 2026
…th-cursor-fixes Brings in #11967 (thread trace off the per-queue callback registry). The conflicts in context/context.cpp, hsa/queue.cpp and thread_trace/core.cpp are where both PRs edit the same lines: thread trace keeps develop's code, and counter collection's hooks, fast-path gate, per-packet mode and agent-scoped conflict check sit next to it, as SPM's and PC sampling's already do. context.cpp also keeps develop's device SPM stop (#11879). Co-authored-by: Vivek Kale <vivek.kale@amd.com>
Contributor
TheRock Submodule Bump ActivityNewest first
|
cursor Bot
pushed a commit
that referenced
this pull request
Oct 10, 2026
develop now carries the final thread trace (#11967) and counters (#11970) callback removals. Conflicts in context/context.cpp, counters/core.cpp, counters/sample_processing.cpp and hsa/queue.cpp were resolved as unions: - Git applied both develop's and this branch's insertion of the same code at different positions, so one copy of each was dropped: the counters and thread trace enter and exit hook calls in hsa/queue.cpp (this branch's placement kept), and dispatch_counter_collection_service::intersects() in context/context.cpp. Every service hook is called once. - start_context() keeps this branch's PC sampling start under the context start marker (d4b7863) and takes develop's new device SPM start (#11879) after the counters agent start. - The interception and per-packet gates take develop's form, which ANDs or ORs the same per-agent predicates; comments keep this branch's wording from c590486. Co-authored-by: Vivek Kale <vivek.kale@amd.com>
anujshuk-amd
pushed a commit
that referenced
this pull request
Oct 12, 2026
## Motivation This PR adds device counting mode to the SPM (Streaming Performance Monitor) service in rocprofiler-sdk. Device mode samples performance counters without tying them to individual kernel dispatches ## Technical Details On context start (spm_start_agent_ctx): 1. The tool's callback (rocprofiler_device_counting_service_cb_t) is invoked to supply a profile config for the agent 2. kfd_start to enable SPM streaming 3. The AQL start packet is submitted with a completion signal On context stop (spm_stop_agent_ctx): Submits an AQL stop packet, waits for completion, then calls kfd_stop to tear down the KFD session Buffer delivery: Counter samples are decoded and pushed to a rocprofiler_buffer_id_t. The buffer callback delivers rocprofiler_spm_counter_record_t records (timestamp, counter instance ID, agent ID, value) — no dispatch headers since collection is device-scoped. ## Issue Tracking JIRA ID: AIPROFSDK-241 ## Test Plan SPM device counting sample have been added in this PR ## Test Result <!-- Briefly summarize test outcomes. --> ## Submission Checklist - [ ] Look over the contributing guidelines at https://github.com/ROCm/rocm-systems/blob/develop/CONTRIBUTING.md.
1 task done
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Motivation
This PR adds device counting mode to the SPM (Streaming Performance Monitor) service in rocprofiler-sdk.
Device mode samples performance counters without tying them to individual kernel dispatches
Technical Details
On context start (spm_start_agent_ctx):
On context stop (spm_stop_agent_ctx):
Submits an AQL stop packet, waits for completion, then calls kfd_stop to tear down the KFD session
Buffer delivery: Counter samples are decoded and pushed to a rocprofiler_buffer_id_t. The buffer callback delivers rocprofiler_spm_counter_record_t records (timestamp, counter instance ID, agent ID, value) — no dispatch headers since collection is device-scoped.
Issue Tracking
JIRA ID: AIPROFSDK-241
Test Plan
SPM device counting sample have been added in this PR
Test Result
Submission Checklist