-
Notifications
You must be signed in to change notification settings - Fork 120
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
[EXP][CMDBUF] Support for Node Profiling #1309
base: main
Are you sure you want to change the base?
[EXP][CMDBUF] Support for Node Profiling #1309
Conversation
Adds a new entry point urEventGetSyncPointProfilingInfoExp. This function queries the profiling information of a sync-point. It takes the handle of the event returned from the graph submission and the sync-point associated with the node from which we want to obtain the profiling information. Implements node profiling support.
Codecov ReportAttention:
❗ Your organization needs to install the Codecov GitHub app to enable full functionality. Additional details and impacted files@@ Coverage Diff @@
## main #1309 +/- ##
==========================================
- Coverage 14.82% 12.82% -2.01%
==========================================
Files 250 238 -12
Lines 36220 35479 -741
Branches 4094 4032 -62
==========================================
- Hits 5369 4549 -820
- Misses 30800 30926 +126
+ Partials 51 4 -47 ☔ View full report in Codecov by Sentry. |
Linked DPC++ PR: intel/llvm#12592 |
Co-authored-by: Ewan Crawford <ewan.cr@gmail.com>
Co-authored-by: Ewan Crawford <ewan.cr@gmail.com>
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.
Minor outstanding comment about parameter naming, but LGTM otherwise
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.
Just a couple of nitpicks otherwise the CUDA and HIP adapter change look good.
*pDdiTable ///< [in,out] pointer to table of DDI function pointers | ||
) { | ||
auto retVal = validateProcInputs(version, pDdiTable); | ||
if (UR_RESULT_SUCCESS != retVal) { |
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.
Nit: Prefer regular lhs_val == const_rhs_val
, i.e. retVal != UR_RESULT_SUCCESS over the Yoda notation, for readability reasons. This is not a blocker.
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.
I'm a little confused by your comments (this one and following), because all the conditions in these files use Yoda notation.
*pDdiTable ///< [in,out] pointer to table of DDI function pointers | ||
) { | ||
auto retVal = validateProcInputs(version, pDdiTable); | ||
if (UR_RESULT_SUCCESS != retVal) { |
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 as the other case wrt the Yoda notation used for the comparsion.
*pDdiTable ///< [in,out] pointer to table of DDI function pointers | ||
) { | ||
auto retVal = validateProcInputs(version, pDdiTable); | ||
if (UR_RESULT_SUCCESS != retVal) { |
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.
I am not sure of the style used in this adapter, can comment just about the CUDA and HIP ones, but same nit-pick comment wrt Yoda notation used for the comparison. Again, nothing blocking though.
*pDdiTable ///< [in,out] pointer to table of DDI function pointers | ||
) { | ||
auto retVal = validateProcInputs(version, pDdiTable); | ||
if (UR_RESULT_SUCCESS != retVal) { |
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.
Nit: more Yoda notation.
@oneapi-src/unified-runtime-level-zero-write could you please review this PR? |
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.
LGTM!
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.
Native CPU lgtm, thank you
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.
LGTM for level zero
urEventGetSyncPointProfilingInfoExp
. This function queries the profiling information of a sync-point. It takes the handle of the event returned from the graph submission and the sync-point associated with the node from which we want to obtain the profiling information.