-
Notifications
You must be signed in to change notification settings - Fork 113
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
Adapter-specific tracing interferes with regular tracing output #2002
Comments
This touches on another issue @nrspruit noticed, there are also hidden UR calls in the validation layer which don't get picked up by tracing. |
I never liked how PI interleaved the output of these operations. If this is within the scope of a single logger instance, we might also consider adding call nesting/indent option to the logger, like
|
I noticed that regular UR tracing writes logs to stdout while adapter writes to stderr. |
By default, logger outputs to stderr: https://github.com/oneapi-src/unified-runtime/blob/main/source/common/logger/ur_logger.hpp#L134 if not configured differently.
In general, libraries should print logs to stderr. |
I'm fine with unifying on outputting to stderr in principle. It's a good point about backwards compatibility, will need to check how |
Fixed oneapi-src#2002 issue. Regular UR tracing prints now calls in two separate lines like PI does.
makes llvm work with this change: oneapi-src/unified-runtime#2101 fixes this bug: oneapi-src/unified-runtime#2002
makes llvm work with this change: oneapi-src/unified-runtime#2101 fixes this bug: oneapi-src/unified-runtime#2002
Revert "[SYCL][E2E] Bypass L0 adapter tracing in grf tests (intel#15167)" because oneapi-src/unified-runtime#2002 is fixed This reverts commit 3e00e38.
makes llvm work with this change: oneapi-src/unified-runtime#2101 fixes this bug: oneapi-src/unified-runtime#2002
Revert "[SYCL][E2E] Bypass L0 adapter tracing in grf tests (intel#15167)" because oneapi-src/unified-runtime#2002 is fixed This reverts commit 3e00e38.
makes llvm work with this change: oneapi-src/unified-runtime#2101 fixes this bug: oneapi-src/unified-runtime#2002
Revert "[SYCL][E2E] Bypass L0 adapter tracing in grf tests (intel#15167)" because oneapi-src/unified-runtime#2002 is fixed This reverts commit 3e00e38.
Fixed oneapi-src#2002 issue. Regular UR tracing prints now calls in two separate lines like PI does.
makes llvm work with this change: oneapi-src/unified-runtime#2101 fixes this bug: oneapi-src/unified-runtime#2002
Revert "[SYCL][E2E] Bypass L0 adapter tracing in grf tests (intel#15167)" because oneapi-src/unified-runtime#2002 is fixed This reverts commit 3e00e38.
makes llvm work with this change: oneapi-src/unified-runtime#2101 fixes this bug: oneapi-src/unified-runtime#2002
Revert "[SYCL][E2E] Bypass L0 adapter tracing in grf tests (intel#15167)" because oneapi-src/unified-runtime#2002 is fixed This reverts commit 3e00e38.
makes llvm work with this change: oneapi-src/unified-runtime#2101 fixes this bug: oneapi-src/unified-runtime#2002
Revert "[SYCL][E2E] Bypass L0 adapter tracing in grf tests (intel#15167)" because oneapi-src/unified-runtime#2002 is fixed This reverts commit 3e00e38.
Fixed oneapi-src#2002 issue. Regular UR tracing prints now calls in two separate lines like PI does.
makes llvm work with this change: oneapi-src/unified-runtime#2101 fixes this bug: oneapi-src/unified-runtime#2002
Revert "[SYCL][E2E] Bypass L0 adapter tracing in grf tests (intel#15167)" because oneapi-src/unified-runtime#2002 is fixed This reverts commit 3e00e38.
Fixed oneapi-src#2002 issue. Regular UR tracing prints now calls in two separate lines like PI does.
makes llvm work with this change: oneapi-src/unified-runtime#2101 fixes this bug: oneapi-src/unified-runtime#2002
Revert "[SYCL][E2E] Bypass L0 adapter tracing in grf tests (intel#15167)" because oneapi-src/unified-runtime#2002 is fixed This reverts commit 3e00e38.
Fixed oneapi-src#2002 issue. Regular UR tracing prints now calls in two separate lines like PI does.
makes llvm work with this change: oneapi-src/unified-runtime#2101 fixes this bug: oneapi-src/unified-runtime#2002
Revert "[SYCL][E2E] Bypass L0 adapter tracing in grf tests (intel#15167)" because oneapi-src/unified-runtime#2002 is fixed This reverts commit 3e00e38.
Fixed oneapi-src#2002 issue. Regular UR tracing prints now calls in two separate lines like PI does.
makes llvm work with this change: oneapi-src/unified-runtime#2101 fixes this bug: oneapi-src/unified-runtime#2002
Revert "[SYCL][E2E] Bypass L0 adapter tracing in grf tests (intel#15167)" because oneapi-src/unified-runtime#2002 is fixed This reverts commit 3e00e38.
Fixed oneapi-src#2002 issue. Regular UR tracing prints now calls in two separate lines like PI does.
) makes llvm work with this change: oneapi-src/unified-runtime#2101 fixes this bug: oneapi-src/unified-runtime#2002
…#15439) Revert "[SYCL][E2E] Bypass L0 adapter tracing in grf tests (intel#15167)" because oneapi-src/unified-runtime#2002 is fixed This reverts commit 3e00e38.
) makes llvm work with this change: oneapi-src/unified-runtime#2101 fixes this bug: oneapi-src/unified-runtime#2002
…#15439) Revert "[SYCL][E2E] Bypass L0 adapter tracing in grf tests (intel#15167)" because oneapi-src/unified-runtime#2002 is fixed This reverts commit 3e00e38.
) makes llvm work with this change: oneapi-src/unified-runtime#2101 fixes this bug: oneapi-src/unified-runtime#2002
…#15439) Revert "[SYCL][E2E] Bypass L0 adapter tracing in grf tests (intel#15167)" because oneapi-src/unified-runtime#2002 is fixed This reverts commit 3e00e38.
) makes llvm work with this change: oneapi-src/unified-runtime#2101 fixes this bug: oneapi-src/unified-runtime#2002
…#15439) Revert "[SYCL][E2E] Bypass L0 adapter tracing in grf tests (intel#15167)" because oneapi-src/unified-runtime#2002 is fixed This reverts commit 3e00e38.
Fixed oneapi-src#2002 issue. Regular UR tracing prints now calls in two separate lines like PI does.
) makes llvm work with this change: oneapi-src/unified-runtime#2101 fixes this bug: oneapi-src/unified-runtime#2002
…#15439) Revert "[SYCL][E2E] Bypass L0 adapter tracing in grf tests (intel#15167)" because oneapi-src/unified-runtime#2002 is fixed This reverts commit 3e00e38.
) makes llvm work with this change: oneapi-src/unified-runtime#2101 fixes this bug: oneapi-src/unified-runtime#2002
…#15439) Revert "[SYCL][E2E] Bypass L0 adapter tracing in grf tests (intel#15167)" because oneapi-src/unified-runtime#2002 is fixed This reverts commit 3e00e38.
Issue with ugly interleaved Level0 adapter and Level0 Unified Runtime traces, that is oneapi-src/unified-runtime#2002 issue, has been fixed in oneapi-src/unified-runtime#2101. This PR adds necessary changes to e2e tests to make them pass with modified tracing in L0 Adapter. This PR also reverts #15167 which disabled some traces because of the bug which is now fixed, so traces can be restored. --------- Co-authored-by: Piotr Balcer <piotr.balcer@intel.com>
When tracing is enabled via sycl using the
SYCL_UR_TRACE
environment variable, some adapters also enable tracing of internal UR calls (see here).Regular UR tracing works by printing the function call (
--->urDeviceFoo
) before calling into the adapter, and the arguments after the adapter returns ((ur_device_handle_t hFoo, int Bar) -> UR_RESULT_SUCCESS
). When the UR adapter also prints, it becomes interleaved in this output, making it hard to read and test against.This was ok when we still used PI tracing as PI put the function name and each argument on separate lines, but UR tracing outputs everything on a single line.
This has resulted in some SYCL E2E requiring awkward rewrites or bypassing adapter tracing altogether, e.g. intel/llvm#15167
Possible fixes include:
The text was updated successfully, but these errors were encountered: