rocr: Fix IPC DMA Buf fragment handling and enable for development
Discarding blocks for reallocation on IPC export for better memory
performance trigger memory violations with DMA BUF exports so bypass
this for now as application performance drops haven't been observed
with the bypass.
The raw fragment should be passed to the DMA Buf export call as well
since offsets will be implicitly applied in the Thunk/KFD for
export/import calls.
Also, use the agent information directly from the pointer
information so that the export call doesn't have to scan memory to find
this. Pass the node ID in the handle so that the import call doesn't
have to make two thunk imports to fetch the node ID for GPU memory
imports.
Finally, allow the user to use DMA Buf IPC via
HSA_ENABLE_IPC_MODE_LEGACY=0 for developer testing as legacy mode will
be applied by default.
Change-Id: Ie8fe267f8768fa5df37126078406f7065f69ff4e
[ROCm/ROCR-Runtime commit: 32bb0764b7]
이 커밋은 다음에 포함됨:
1 부모
17d23cbd78
커밋
ff4690de61
3 파일이 변경됨
+92
-104
검색과 일치하는 파일 없음
@@ -234,7 +234,7 @@ class Flag {
|
||||
enable_mwaitx_ = (var == "1") ? true : false;
|
||||
|
||||
var = os::GetEnvVar("HSA_ENABLE_IPC_MODE_LEGACY");
|
||||
enable_ipc_mode_legacy_ = (var == "1") ? true : true; // Disable DMA-buf implementation for now
|
||||
enable_ipc_mode_legacy_ = (var == "0") ? false : true; // Legacy mode by default
|
||||
if (os::IsEnvVarSet("HSA_PCS_MAX_DEVICE_BUFFER_SIZE")) {
|
||||
var = os::GetEnvVar("HSA_PCS_MAX_DEVICE_BUFFER_SIZE");
|
||||
char* end;
|
||||
|
||||
새 이슈에서 참조
사용자 차단