enable GPU IPC tests on Windows - #739
Conversation
6da36e1 to
da553d7
Compare
a77f891 to
78361c2
Compare
976028a to
cfc6f31
Compare
cfc6f31 to
1140442
Compare
lukaszstolarczuk
left a comment
There was a problem hiding this comment.
good job in general, a few minor issues
d0aca41 to
becaa7d
Compare
304c413 to
4f03627
Compare
lplewa
left a comment
There was a problem hiding this comment.
Please update examples/documentation/readme(?)
| @@ -0,0 +1,38 @@ | |||
| @echo off | |||
There was a problem hiding this comment.
Please write this in python so we do not add extra technical dept.
| typedef enum umf_level_zero_memory_provider_memory_exchange_policy_t { | ||
| UMF_LEVEL_ZERO_MEMORY_PROVIDER_MEMORY_EXCHANGE_POLICY_IPC = | ||
| 0, ///< Memory exchange policy based on IPC. Default. | ||
| UMF_LEVEL_ZERO_MEMORY_PROVIDER_MEMORY_EXCHANGE_POLICY_IMPORT_EXPORT, | ||
| ///< Memory exchange policy based on import/export APIs. Should be used if IPC exchange policy is not supported. | ||
| } umf_level_zero_memory_provider_memory_exchange_policy_t; | ||
|
|
||
| /// @brief Set the memory exchange policy. | ||
| /// @param hParams handle to the parameters of the Level Zero Memory Provider. | ||
| /// @param policy memory exchange policy. | ||
| /// @return UMF_RESULT_SUCCESS on success or appropriate error code on failure. | ||
| umf_result_t umfLevelZeroMemoryProviderParamsSetMemoryExchangePolicy( | ||
| umf_level_zero_memory_provider_params_handle_t hParams, | ||
| umf_level_zero_memory_provider_memory_exchange_policy_t policy); | ||
|
|
There was a problem hiding this comment.
If this is temporary hack for IPC on windows, i whould like to export this api as CTL, at least for now.
CTL is experimental, so we do not commit to this feature etc....
73e747a to
384c4c4
Compare
b12a5d7 to
e3cfa20
Compare
e3cfa20 to
e248021
Compare
|
@lplewa please re-review |
lplewa
left a comment
There was a problem hiding this comment.
Documentation and examples are missing
| typedef enum umf_level_zero_memory_provider_memory_exchange_policy_t { | ||
| UMF_LEVEL_ZERO_MEMORY_PROVIDER_MEMORY_EXCHANGE_POLICY_IPC = | ||
| 0, ///< Memory exchange policy based on IPC. Default. | ||
| UMF_LEVEL_ZERO_MEMORY_PROVIDER_MEMORY_EXCHANGE_POLICY_IMPORT_EXPORT, | ||
| ///< Memory exchange policy based on import/export APIs. Should be used if IPC exchange policy is not supported. | ||
| } umf_level_zero_memory_provider_memory_exchange_policy_t; | ||
|
|
There was a problem hiding this comment.
I'm not a fan of this enum - can we at least mark it as experimental as it is related to experimental CTL api?
IMHO best if CTL api just work on int - and we do not have this enum at all TBH
| void *ctx, umf_ctl_query_source_t source, void *arg, size_t size, | ||
| umf_ctl_index_utlist_t *indexes) { | ||
| /* suppress unused-parameter errors */ | ||
| (void)source, (void)indexes, (void)size; |
| void *ctx, umf_ctl_query_source_t source, void *arg, size_t size, | ||
| umf_ctl_index_utlist_t *indexes) { | ||
| /* suppress unused-parameter errors */ | ||
| (void)source, (void)indexes, (void)size; |
This PR enables GPU IPC (Inter-Process Communication) tests on Windows by implementing Windows-specific socket functionality and memory exchange mechanisms. The changes introduce a new memory exchange policy for Level Zero providers to work around IPC limitations on Windows.
Key changes: