@@ -293,6 +293,10 @@ def get_extra_env(sycl_devices):
293293 "UR_L0_LEAKS_DEBUG={}" .format (test .config .ur_l0_leaks_debug )
294294 )
295295
296+ # Add ZE_AFFINITY_MASK if it's set in config.environment (e.g., by sanitizer tests)
297+ if "ZE_AFFINITY_MASK" in test .config .environment :
298+ extra_env .append ("ZE_AFFINITY_MASK={}" .format (test .config .environment ["ZE_AFFINITY_MASK" ]))
299+
296300 if "cuda:gpu" in sycl_devices :
297301 extra_env .append ("SYCL_UR_CUDA_ENABLE_IMAGE_SUPPORT=1" )
298302
@@ -334,12 +338,6 @@ def get_extra_env(sycl_devices):
334338 expanded = "env"
335339
336340 extra_env = get_extra_env ([parsed_dev_name ])
337- backend , device = parsed_dev_name .split (":" , 1 )
338- device_selector = parsed_dev_name
339- if backend == "level_zero" and device .isdigit ():
340- extra_env .append (f"ZE_AFFINITY_MASK={ device } " )
341- device_selector = f"{ backend } :0"
342-
343341 if extra_env :
344342 expanded += " {}" .format (" " .join (extra_env ))
345343
@@ -348,8 +346,14 @@ def get_extra_env(sycl_devices):
348346 elif "level_zero_v1" in full_dev_name :
349347 expanded += " env UR_LOADER_USE_LEVEL_ZERO_V2=0"
350348
349+ # If ZE_AFFINITY_MASK is set in local config, it filters devices so we should use :0
350+ device_selector = parsed_dev_name
351+ if test .config .ze_affinity_mask is not None :
352+ backend , _ = parsed_dev_name .split (":" , 1 )
353+ device_selector = f"{ backend } :0"
354+
351355 expanded += " ONEAPI_DEVICE_SELECTOR={} {}" .format (
352- parsed_dev_name , test .config .run_launcher
356+ device_selector , test .config .run_launcher
353357 )
354358 cmd = directive .command .replace ("%{run}" , expanded )
355359 # Expand device-specific condtions (%if ... %{ ... %}).
@@ -359,6 +363,11 @@ def get_extra_env(sycl_devices):
359363 "linux" ,
360364 "windows" ,
361365 "preview-breaking-changes-supported" ,
366+ # the following entries are used by architecture-based filtering
367+ # (:arch- device, not :gpu or :cpu)
368+ "cpu" ,
369+ "gpu" ,
370+ "accelerator" ,
362371 ]:
363372 if cond_features in test .config .available_features :
364373 conditions [cond_features ] = True
0 commit comments