From eead9892edfe2bf9e7a8f501ff86e545d1f786e4 Mon Sep 17 00:00:00 2001 From: Maxime France-Pillois Date: Wed, 7 Feb 2024 11:40:38 +0000 Subject: [PATCH] [SYCL][Graph] Enable Graphs with L0 immediate command-list (#12279) Updates e2e tests to test L0 immediate command-lists. Improves filecheck usage in graph E2E tests Removes test that checks immediate command-list exception. Updates the spec. Addresses Issue: #10467 --------- Co-authored-by: Ben Tracy --- .../sycl_ext_oneapi_graph.asciidoc | 4 -- sycl/plugins/unified_runtime/CMakeLists.txt | 15 +++--- .../Explicit/add_node_while_recording.cpp | 7 +-- .../Explicit/add_nodes_after_finalize.cpp | 5 +- .../assume_buffer_outlives_graph_property.cpp | 5 +- sycl/test-e2e/Graph/Explicit/basic_buffer.cpp | 5 +- sycl/test-e2e/Graph/Explicit/basic_usm.cpp | 5 +- .../Graph/Explicit/basic_usm_host.cpp | 5 +- .../Graph/Explicit/basic_usm_mixed.cpp | 5 +- .../Graph/Explicit/basic_usm_shared.cpp | 5 +- .../Graph/Explicit/basic_usm_system.cpp | 5 +- sycl/test-e2e/Graph/Explicit/buffer_copy.cpp | 5 +- .../Graph/Explicit/buffer_copy_2d.cpp | 5 +- .../Explicit/buffer_copy_host2target.cpp | 5 +- .../Explicit/buffer_copy_host2target_2d.cpp | 5 +- .../buffer_copy_host2target_offset.cpp | 5 +- .../Graph/Explicit/buffer_copy_offsets.cpp | 5 +- .../Explicit/buffer_copy_target2host.cpp | 5 +- .../Explicit/buffer_copy_target2host_2d.cpp | 5 +- .../buffer_copy_target2host_offset.cpp | 5 +- sycl/test-e2e/Graph/Explicit/buffer_fill.cpp | 2 + .../Graph/Explicit/buffer_ordering.cpp | 5 +- .../Graph/Explicit/debug_print_graph.cpp | 2 +- .../Explicit/debug_print_graph_verbose.cpp | 2 +- sycl/test-e2e/Graph/Explicit/depends_on.cpp | 7 +-- .../Graph/Explicit/dotp_buffer_reduction.cpp | 5 +- .../Graph/Explicit/dotp_usm_reduction.cpp | 5 +- .../test-e2e/Graph/Explicit/double_buffer.cpp | 5 +- sycl/test-e2e/Graph/Explicit/empty_node.cpp | 5 +- .../Graph/Explicit/enqueue_ordering.cpp | 7 +-- .../Graph/Explicit/event_status_querying.cpp | 2 +- .../Explicit/executable_graph_update.cpp | 5 +- .../executable_graph_update_ordering.cpp | 5 +- sycl/test-e2e/Graph/Explicit/host_task.cpp | 5 +- sycl/test-e2e/Graph/Explicit/host_task2.cpp | 7 +-- .../Graph/Explicit/host_task_last.cpp | 7 +-- .../Explicit/host_task_multiple_deps.cpp | 7 +-- .../Graph/Explicit/host_task_single.cpp | 7 +-- .../Graph/Explicit/host_task_successive.cpp | 7 +-- .../test-e2e/Graph/Explicit/kernel_bundle.cpp | 2 +- .../Graph/Explicit/multiple_exec_graphs.cpp | 5 +- .../Explicit/multiple_kernel_bundles.cpp | 5 +- .../test-e2e/Graph/Explicit/node_ordering.cpp | 7 +-- .../Graph/Explicit/queue_shortcuts.cpp | 5 +- .../test-e2e/Graph/Explicit/repeated_exec.cpp | 5 +- sycl/test-e2e/Graph/Explicit/single_node.cpp | 7 +-- .../Explicit/spec_constants_handler_api.cpp | 5 +- .../spec_constants_kernel_bundle_api.cpp | 5 +- sycl/test-e2e/Graph/Explicit/stream.cpp | 3 +- sycl/test-e2e/Graph/Explicit/sub_graph.cpp | 5 +- .../sub_graph_execute_without_parent.cpp | 5 +- .../sub_graph_multiple_submission.cpp | 5 +- .../Graph/Explicit/sub_graph_nested.cpp | 5 +- .../Graph/Explicit/sub_graph_reduction.cpp | 5 +- .../Explicit/sub_graph_two_parent_graphs.cpp | 5 +- .../Graph/Explicit/sub_group_prop.cpp | 7 +-- .../Explicit/temp_buffer_reinterpret.cpp | 5 +- sycl/test-e2e/Graph/Explicit/usm_copy.cpp | 5 +- sycl/test-e2e/Graph/Explicit/usm_fill.cpp | 5 +- .../test-e2e/Graph/Explicit/usm_fill_host.cpp | 5 +- .../Graph/Explicit/usm_fill_shared.cpp | 5 +- sycl/test-e2e/Graph/Explicit/usm_memset.cpp | 4 +- .../Graph/Explicit/work_group_size_prop.cpp | 5 +- .../Graph/Inputs/add_nodes_after_finalize.cpp | 2 +- sycl/test-e2e/Graph/Inputs/basic_buffer.cpp | 2 +- sycl/test-e2e/Graph/Inputs/basic_usm.cpp | 2 +- sycl/test-e2e/Graph/Inputs/basic_usm_host.cpp | 2 +- .../test-e2e/Graph/Inputs/basic_usm_mixed.cpp | 2 +- .../Graph/Inputs/basic_usm_shared.cpp | 2 +- .../Graph/Inputs/basic_usm_system.cpp | 2 +- sycl/test-e2e/Graph/Inputs/buffer_copy.cpp | 2 +- sycl/test-e2e/Graph/Inputs/buffer_copy_2d.cpp | 7 +-- .../Graph/Inputs/buffer_copy_host2target.cpp | 2 +- .../Inputs/buffer_copy_host2target_2d.cpp | 2 +- .../Inputs/buffer_copy_host2target_offset.cpp | 2 +- .../Graph/Inputs/buffer_copy_offsets.cpp | 2 +- .../Graph/Inputs/buffer_copy_target2host.cpp | 2 +- .../Inputs/buffer_copy_target2host_2d.cpp | 2 +- .../Inputs/buffer_copy_target2host_offset.cpp | 2 +- .../test-e2e/Graph/Inputs/buffer_ordering.cpp | 2 +- .../Graph/Inputs/debug_print_graph.cpp | 2 +- .../Inputs/debug_print_graph_verbose.cpp | 2 +- .../Graph/Inputs/dotp_buffer_reduction.cpp | 2 +- .../Graph/Inputs/dotp_usm_reduction.cpp | 2 +- sycl/test-e2e/Graph/Inputs/double_buffer.cpp | 2 +- sycl/test-e2e/Graph/Inputs/empty_node.cpp | 2 +- .../Graph/Inputs/event_status_querying.cpp | 2 +- .../Graph/Inputs/executable_graph_update.cpp | 2 +- .../executable_graph_update_ordering.cpp | 2 +- sycl/test-e2e/Graph/Inputs/host_task.cpp | 2 +- sycl/test-e2e/Graph/Inputs/host_task2.cpp | 2 +- sycl/test-e2e/Graph/Inputs/host_task_last.cpp | 2 +- .../Graph/Inputs/host_task_multiple_deps.cpp | 2 +- .../Graph/Inputs/host_task_single.cpp | 2 +- .../Graph/Inputs/host_task_successive.cpp | 2 +- .../interop-level-zero-get-native-mem.cpp | 5 +- sycl/test-e2e/Graph/Inputs/kernel_bundle.cpp | 4 +- .../Graph/Inputs/multiple_exec_graphs.cpp | 2 +- .../Graph/Inputs/multiple_kernel_bundles.cpp | 4 +- .../test-e2e/Graph/Inputs/queue_shortcuts.cpp | 2 +- sycl/test-e2e/Graph/Inputs/repeated_exec.cpp | 2 +- .../Inputs/spec_constants_handler_api.cpp | 3 +- .../spec_constants_kernel_bundle_api.cpp | 3 +- sycl/test-e2e/Graph/Inputs/stream.cpp | 2 +- sycl/test-e2e/Graph/Inputs/sub_graph.cpp | 2 +- .../sub_graph_execute_without_parent.cpp | 2 +- .../Inputs/sub_graph_multiple_submission.cpp | 2 +- .../Graph/Inputs/sub_graph_nested.cpp | 2 +- .../Graph/Inputs/sub_graph_reduction.cpp | 2 +- .../Inputs/sub_graph_two_parent_graphs.cpp | 2 +- .../Graph/Inputs/temp_buffer_reinterpret.cpp | 2 +- sycl/test-e2e/Graph/Inputs/usm_copy.cpp | 2 +- sycl/test-e2e/Graph/Inputs/usm_fill.cpp | 2 +- sycl/test-e2e/Graph/Inputs/usm_fill_host.cpp | 2 +- .../test-e2e/Graph/Inputs/usm_fill_shared.cpp | 2 +- .../Graph/Inputs/work_group_size_prop.cpp | 2 +- .../RecordReplay/add_nodes_after_finalize.cpp | 5 +- .../test-e2e/Graph/RecordReplay/after_use.cpp | 5 +- .../assume_buffer_outlives_graph_property.cpp | 5 +- .../Graph/RecordReplay/barrier_with_work.cpp | 5 +- .../Graph/RecordReplay/basic_buffer.cpp | 5 +- .../test-e2e/Graph/RecordReplay/basic_usm.cpp | 5 +- .../Graph/RecordReplay/basic_usm_host.cpp | 5 +- .../Graph/RecordReplay/basic_usm_mixed.cpp | 5 +- .../Graph/RecordReplay/basic_usm_shared.cpp | 5 +- .../Graph/RecordReplay/basic_usm_system.cpp | 5 +- .../Graph/RecordReplay/buffer_copy.cpp | 5 +- .../Graph/RecordReplay/buffer_copy_2d.cpp | 5 +- .../RecordReplay/buffer_copy_host2target.cpp | 5 +- .../buffer_copy_host2target_2d.cpp | 5 +- .../buffer_copy_host2target_offset.cpp | 5 +- .../RecordReplay/buffer_copy_offsets.cpp | 5 +- .../RecordReplay/buffer_copy_target2host.cpp | 5 +- .../buffer_copy_target2host_2d.cpp | 5 +- .../buffer_copy_target2host_offset.cpp | 5 +- .../Graph/RecordReplay/buffer_fill.cpp | 2 + .../Graph/RecordReplay/buffer_fill_2d.cpp | 2 + .../Graph/RecordReplay/buffer_fill_3d.cpp | 2 + .../Graph/RecordReplay/buffer_ordering.cpp | 5 +- .../Graph/RecordReplay/concurrent_queue.cpp | 5 +- .../Graph/RecordReplay/debug_print_graph.cpp | 2 +- .../debug_print_graph_verbose.cpp | 2 +- .../RecordReplay/dotp_buffer_reduction.cpp | 5 +- .../Graph/RecordReplay/dotp_in_order.cpp | 5 +- .../RecordReplay/dotp_in_order_pause.cpp | 2 + .../dotp_in_order_with_empty_nodes.cpp | 5 +- .../RecordReplay/dotp_multiple_queues.cpp | 5 +- .../Graph/RecordReplay/dotp_usm_reduction.cpp | 5 +- .../Graph/RecordReplay/double_buffer.cpp | 5 +- .../Graph/RecordReplay/empty_node.cpp | 5 +- .../RecordReplay/event_status_querying.cpp | 2 +- .../exception_inconsistent_contexts.cpp | 2 + .../RecordReplay/executable_graph_update.cpp | 5 +- .../executable_graph_update_ordering.cpp | 5 +- .../RecordReplay/finalize_while_recording.cpp | 5 +- .../test-e2e/Graph/RecordReplay/host_task.cpp | 5 +- .../Graph/RecordReplay/host_task2.cpp | 7 +-- .../Graph/RecordReplay/host_task_in_order.cpp | 7 +-- .../Graph/RecordReplay/host_task_last.cpp | 7 +-- .../RecordReplay/host_task_multiple_deps.cpp | 7 +-- .../Graph/RecordReplay/host_task_single.cpp | 7 +-- .../RecordReplay/host_task_successive.cpp | 7 +-- .../interop-level-zero-get-native-mem.cpp | 2 + .../Graph/RecordReplay/kernel_bundle.cpp | 2 +- .../RecordReplay/multiple_exec_graphs.cpp | 5 +- .../RecordReplay/multiple_kernel_bundles.cpp | 5 +- .../Graph/RecordReplay/queue_shortcuts.cpp | 5 +- .../Graph/RecordReplay/repeated_exec.cpp | 5 +- .../Graph/RecordReplay/return_values.cpp | 3 +- .../spec_constants_handler_api.cpp | 5 +- .../spec_constants_kernel_bundle_api.cpp | 5 +- sycl/test-e2e/Graph/RecordReplay/stream.cpp | 3 +- .../test-e2e/Graph/RecordReplay/sub_graph.cpp | 5 +- .../sub_graph_execute_without_parent.cpp | 5 +- .../Graph/RecordReplay/sub_graph_in_order.cpp | 5 +- .../sub_graph_multiple_submission.cpp | 5 +- .../Graph/RecordReplay/sub_graph_nested.cpp | 5 +- .../RecordReplay/sub_graph_reduction.cpp | 5 +- .../sub_graph_two_parent_graphs.cpp | 5 +- .../Graph/RecordReplay/sub_group_prop.cpp | 5 +- .../Graph/RecordReplay/temp_buffer.cpp | 5 +- .../RecordReplay/temp_buffer_reinterpret.cpp | 5 +- .../Graph/RecordReplay/temp_scope.cpp | 5 +- sycl/test-e2e/Graph/RecordReplay/usm_copy.cpp | 5 +- .../Graph/RecordReplay/usm_copy_in_order.cpp | 5 +- sycl/test-e2e/Graph/RecordReplay/usm_fill.cpp | 5 +- .../Graph/RecordReplay/usm_fill_host.cpp | 5 +- .../Graph/RecordReplay/usm_fill_shared.cpp | 5 +- .../Graph/RecordReplay/usm_memset.cpp | 2 + .../Graph/RecordReplay/valid_no_end.cpp | 5 +- .../RecordReplay/work_group_size_prop.cpp | 5 +- sycl/test-e2e/Graph/empty_graph.cpp | 7 ++- sycl/test-e2e/Graph/finalize_twice.cpp | 2 +- .../Graph/immediate_command_list_error.cpp | 51 ------------------- sycl/test-e2e/Graph/invalid_depends_on.cpp | 2 +- sycl/test-e2e/Graph/invalid_event_wait.cpp | 2 +- sycl/test-e2e/Graph/invalid_queue_wait.cpp | 2 +- sycl/test-e2e/USM/queue_copy.cpp | 48 +++++++++++++++++ 198 files changed, 516 insertions(+), 396 deletions(-) delete mode 100644 sycl/test-e2e/Graph/immediate_command_list_error.cpp create mode 100644 sycl/test-e2e/USM/queue_copy.cpp diff --git a/sycl/doc/extensions/experimental/sycl_ext_oneapi_graph.asciidoc b/sycl/doc/extensions/experimental/sycl_ext_oneapi_graph.asciidoc index 1220bbcb489b1..36aab0fdccf28 100644 --- a/sycl/doc/extensions/experimental/sycl_ext_oneapi_graph.asciidoc +++ b/sycl/doc/extensions/experimental/sycl_ext_oneapi_graph.asciidoc @@ -1827,10 +1827,6 @@ if used in application code. . Using sycl streams in a graph node. . Profiling an event returned from graph submission with `event::get_profiling_info()`. -. Level Zero immediate command-lists are not supported, and - `sycl::ext::intel::property::queue::no_immediate_command_list` - should be set on construction to any queues an executable - graph is submitted to. . Synchronization between multiple executions of the same command-buffer must be handled in the host for level-zero backend, which may involve extra latency for subsequent submissions. diff --git a/sycl/plugins/unified_runtime/CMakeLists.txt b/sycl/plugins/unified_runtime/CMakeLists.txt index 77cc484beb25b..6a91815bc890f 100644 --- a/sycl/plugins/unified_runtime/CMakeLists.txt +++ b/sycl/plugins/unified_runtime/CMakeLists.txt @@ -57,15 +57,14 @@ if(SYCL_PI_UR_USE_FETCH_CONTENT) include(FetchContent) set(UNIFIED_RUNTIME_REPO "https://github.com/oneapi-src/unified-runtime.git") - # commit c0b1f13d94966090a1bb982b3bd747b30b9ef9d3 - # Merge: 475ce8b4 cf806c37 + # commit 1cd402ead34a54459a6acb85777fbec105a178a0 + # Merge: 5b89ee8b c8e150c5 # Author: aarongreig - # Date: Mon Feb 5 13:41:50 2024 +0000 - # Merge pull request #1240 from cppchedy/chedy/fix-bi-copy-image - # - # [Bindless][exp] 1D Image copy fix - set(UNIFIED_RUNTIME_TAG c0b1f13d94966090a1bb982b3bd747b30b9ef9d3) - + # Date: Tue Feb 6 14:48:55 2024 +0000 + # Merge pull request #1218 from Bensuo/maxime/imm-cmd-list-support + # [EXP][CMDBUF] L0 Immediate command-list support + set(UNIFIED_RUNTIME_TAG 1cd402ead34a54459a6acb85777fbec105a178a0) + if(SYCL_PI_UR_OVERRIDE_FETCH_CONTENT_REPO) set(UNIFIED_RUNTIME_REPO "${SYCL_PI_UR_OVERRIDE_FETCH_CONTENT_REPO}") endif() diff --git a/sycl/test-e2e/Graph/Explicit/add_node_while_recording.cpp b/sycl/test-e2e/Graph/Explicit/add_node_while_recording.cpp index a870fb372a48f..db8492ca98351 100644 --- a/sycl/test-e2e/Graph/Explicit/add_node_while_recording.cpp +++ b/sycl/test-e2e/Graph/Explicit/add_node_while_recording.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // Tests attempting to add a node to a command_graph while it is being // recorded to by a queue is an error. @@ -11,7 +12,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Explicit/add_nodes_after_finalize.cpp b/sycl/test-e2e/Graph/Explicit/add_nodes_after_finalize.cpp index 554d5a2bd12e8..cf17e3b6c3dba 100644 --- a/sycl/test-e2e/Graph/Explicit/add_nodes_after_finalize.cpp +++ b/sycl/test-e2e/Graph/Explicit/add_nodes_after_finalize.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_EXPLICIT diff --git a/sycl/test-e2e/Graph/Explicit/assume_buffer_outlives_graph_property.cpp b/sycl/test-e2e/Graph/Explicit/assume_buffer_outlives_graph_property.cpp index d2a70c9b01bd6..bb4c700848817 100644 --- a/sycl/test-e2e/Graph/Explicit/assume_buffer_outlives_graph_property.cpp +++ b/sycl/test-e2e/Graph/Explicit/assume_buffer_outlives_graph_property.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_EXPLICIT diff --git a/sycl/test-e2e/Graph/Explicit/basic_buffer.cpp b/sycl/test-e2e/Graph/Explicit/basic_buffer.cpp index 6a5bd646918a1..37e401d692861 100644 --- a/sycl/test-e2e/Graph/Explicit/basic_buffer.cpp +++ b/sycl/test-e2e/Graph/Explicit/basic_buffer.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // // TODO enable cuda once buffer issue investigated and fixed // UNSUPPORTED: cuda diff --git a/sycl/test-e2e/Graph/Explicit/basic_usm.cpp b/sycl/test-e2e/Graph/Explicit/basic_usm.cpp index 3649c12b36ffd..6e76ec42c079e 100644 --- a/sycl/test-e2e/Graph/Explicit/basic_usm.cpp +++ b/sycl/test-e2e/Graph/Explicit/basic_usm.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_EXPLICIT diff --git a/sycl/test-e2e/Graph/Explicit/basic_usm_host.cpp b/sycl/test-e2e/Graph/Explicit/basic_usm_host.cpp index 1c74d15ea7ec3..040ce8c30c38b 100644 --- a/sycl/test-e2e/Graph/Explicit/basic_usm_host.cpp +++ b/sycl/test-e2e/Graph/Explicit/basic_usm_host.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_EXPLICIT diff --git a/sycl/test-e2e/Graph/Explicit/basic_usm_mixed.cpp b/sycl/test-e2e/Graph/Explicit/basic_usm_mixed.cpp index 94dca74f81c24..bb12ff6006004 100644 --- a/sycl/test-e2e/Graph/Explicit/basic_usm_mixed.cpp +++ b/sycl/test-e2e/Graph/Explicit/basic_usm_mixed.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_EXPLICIT diff --git a/sycl/test-e2e/Graph/Explicit/basic_usm_shared.cpp b/sycl/test-e2e/Graph/Explicit/basic_usm_shared.cpp index b710b68807d40..f989a27a1ca39 100644 --- a/sycl/test-e2e/Graph/Explicit/basic_usm_shared.cpp +++ b/sycl/test-e2e/Graph/Explicit/basic_usm_shared.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_EXPLICIT diff --git a/sycl/test-e2e/Graph/Explicit/basic_usm_system.cpp b/sycl/test-e2e/Graph/Explicit/basic_usm_system.cpp index e3c2a3d6cc71f..c79a63c58f487 100644 --- a/sycl/test-e2e/Graph/Explicit/basic_usm_system.cpp +++ b/sycl/test-e2e/Graph/Explicit/basic_usm_system.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_EXPLICIT diff --git a/sycl/test-e2e/Graph/Explicit/buffer_copy.cpp b/sycl/test-e2e/Graph/Explicit/buffer_copy.cpp index 8550769528bfd..31a570d5134d9 100644 --- a/sycl/test-e2e/Graph/Explicit/buffer_copy.cpp +++ b/sycl/test-e2e/Graph/Explicit/buffer_copy.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // // TODO enable cuda once buffer issue investigated and fixed // UNSUPPORTED: cuda diff --git a/sycl/test-e2e/Graph/Explicit/buffer_copy_2d.cpp b/sycl/test-e2e/Graph/Explicit/buffer_copy_2d.cpp index 1d9ced00f6cb6..e13462c9545dc 100644 --- a/sycl/test-e2e/Graph/Explicit/buffer_copy_2d.cpp +++ b/sycl/test-e2e/Graph/Explicit/buffer_copy_2d.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // // TODO enable cuda once buffer issue investigated and fixed // UNSUPPORTED: cuda diff --git a/sycl/test-e2e/Graph/Explicit/buffer_copy_host2target.cpp b/sycl/test-e2e/Graph/Explicit/buffer_copy_host2target.cpp index 8b27940c8dc45..99def0c718f45 100644 --- a/sycl/test-e2e/Graph/Explicit/buffer_copy_host2target.cpp +++ b/sycl/test-e2e/Graph/Explicit/buffer_copy_host2target.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // // TODO enable cuda once buffer issue investigated and fixed // UNSUPPORTED: cuda diff --git a/sycl/test-e2e/Graph/Explicit/buffer_copy_host2target_2d.cpp b/sycl/test-e2e/Graph/Explicit/buffer_copy_host2target_2d.cpp index 9d708829ca4f2..df25c117cfb3d 100644 --- a/sycl/test-e2e/Graph/Explicit/buffer_copy_host2target_2d.cpp +++ b/sycl/test-e2e/Graph/Explicit/buffer_copy_host2target_2d.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // // TODO enable cuda once buffer issue investigated and fixed // UNSUPPORTED: cuda diff --git a/sycl/test-e2e/Graph/Explicit/buffer_copy_host2target_offset.cpp b/sycl/test-e2e/Graph/Explicit/buffer_copy_host2target_offset.cpp index 07f17b7128c85..7d528f2787746 100644 --- a/sycl/test-e2e/Graph/Explicit/buffer_copy_host2target_offset.cpp +++ b/sycl/test-e2e/Graph/Explicit/buffer_copy_host2target_offset.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // // TODO enable cuda once buffer issue investigated and fixed // UNSUPPORTED: cuda diff --git a/sycl/test-e2e/Graph/Explicit/buffer_copy_offsets.cpp b/sycl/test-e2e/Graph/Explicit/buffer_copy_offsets.cpp index ab6523c75a8ca..ec114e550e5d3 100644 --- a/sycl/test-e2e/Graph/Explicit/buffer_copy_offsets.cpp +++ b/sycl/test-e2e/Graph/Explicit/buffer_copy_offsets.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // // TODO enable cuda once buffer issue investigated and fixed // UNSUPPORTED: cuda diff --git a/sycl/test-e2e/Graph/Explicit/buffer_copy_target2host.cpp b/sycl/test-e2e/Graph/Explicit/buffer_copy_target2host.cpp index 4594632fa69e2..a5dcc94b3a588 100644 --- a/sycl/test-e2e/Graph/Explicit/buffer_copy_target2host.cpp +++ b/sycl/test-e2e/Graph/Explicit/buffer_copy_target2host.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // // TODO enable cuda once buffer issue investigated and fixed // UNSUPPORTED: cuda diff --git a/sycl/test-e2e/Graph/Explicit/buffer_copy_target2host_2d.cpp b/sycl/test-e2e/Graph/Explicit/buffer_copy_target2host_2d.cpp index 5a29721267688..14bf41de10753 100644 --- a/sycl/test-e2e/Graph/Explicit/buffer_copy_target2host_2d.cpp +++ b/sycl/test-e2e/Graph/Explicit/buffer_copy_target2host_2d.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // // TODO enable cuda once buffer issue investigated and fixed // UNSUPPORTED: cuda diff --git a/sycl/test-e2e/Graph/Explicit/buffer_copy_target2host_offset.cpp b/sycl/test-e2e/Graph/Explicit/buffer_copy_target2host_offset.cpp index f552a6b0dc452..2da3ce2af5c1b 100644 --- a/sycl/test-e2e/Graph/Explicit/buffer_copy_target2host_offset.cpp +++ b/sycl/test-e2e/Graph/Explicit/buffer_copy_target2host_offset.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // // TODO enable cuda once buffer issue investigated and fixed // UNSUPPORTED: cuda diff --git a/sycl/test-e2e/Graph/Explicit/buffer_fill.cpp b/sycl/test-e2e/Graph/Explicit/buffer_fill.cpp index 73b961994a72b..1d01f8b9c8664 100644 --- a/sycl/test-e2e/Graph/Explicit/buffer_fill.cpp +++ b/sycl/test-e2e/Graph/Explicit/buffer_fill.cpp @@ -2,6 +2,8 @@ // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG // RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck --implicit-check-not=LEAK %s %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // // TODO enable cuda once buffer issue investigated and fixed // UNSUPPORTED: cuda diff --git a/sycl/test-e2e/Graph/Explicit/buffer_ordering.cpp b/sycl/test-e2e/Graph/Explicit/buffer_ordering.cpp index 4716a9e8e6989..9741d572e3bd0 100644 --- a/sycl/test-e2e/Graph/Explicit/buffer_ordering.cpp +++ b/sycl/test-e2e/Graph/Explicit/buffer_ordering.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_EXPLICIT diff --git a/sycl/test-e2e/Graph/Explicit/debug_print_graph.cpp b/sycl/test-e2e/Graph/Explicit/debug_print_graph.cpp index 8bb7a476e1ec3..92fda2c837dc6 100644 --- a/sycl/test-e2e/Graph/Explicit/debug_print_graph.cpp +++ b/sycl/test-e2e/Graph/Explicit/debug_print_graph.cpp @@ -1,5 +1,5 @@ // RUN: %{build} -o %t.out -// RUN: %if linux && (level_zero || cuda) %{ %{run} %t.out ; FileCheck %s --input-file graph.dot %} %else %{ %{run} %t.out %} +// RUN: %if linux && (level_zero || cuda) %{ %{run} %t.out ; FileCheck %s --implicit-check-not=LEAK --input-file graph.dot %} %else %{ %{run} %t.out %} // Windows output format differs from linux format. // The filecheck-based output checking is suited to linux standards. // On Windows, we only test that printing takes place correctly and does not diff --git a/sycl/test-e2e/Graph/Explicit/debug_print_graph_verbose.cpp b/sycl/test-e2e/Graph/Explicit/debug_print_graph_verbose.cpp index 8feaa84f83d8c..e06deb61a205c 100644 --- a/sycl/test-e2e/Graph/Explicit/debug_print_graph_verbose.cpp +++ b/sycl/test-e2e/Graph/Explicit/debug_print_graph_verbose.cpp @@ -1,5 +1,5 @@ // RUN: %{build} -o %t.out -// RUN: %if linux && (level_zero || cuda) %{ %{run} %t.out ; FileCheck %s --input-file graph_verbose.dot %} %else %{ %{run} %t.out %} +// RUN: %if linux && (level_zero || cuda) %{ %{run} %t.out ; FileCheck %s --implicit-check-not=LEAK --input-file graph_verbose.dot %} %else %{ %{run} %t.out %} // Windows output format differs from linux format. // The filecheck-based output checking is suited to linux standards. // On Windows, we only test that printing takes place correctly and does not diff --git a/sycl/test-e2e/Graph/Explicit/depends_on.cpp b/sycl/test-e2e/Graph/Explicit/depends_on.cpp index 586afe8bf237d..a08b31f8ca8e8 100644 --- a/sycl/test-e2e/Graph/Explicit/depends_on.cpp +++ b/sycl/test-e2e/Graph/Explicit/depends_on.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // Tests that an event returned from adding a graph node using the queue // recording API can be passed to `handler::depends_on` inside a node @@ -12,7 +13,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Explicit/dotp_buffer_reduction.cpp b/sycl/test-e2e/Graph/Explicit/dotp_buffer_reduction.cpp index 609f08a775a10..5f55a1632b4de 100644 --- a/sycl/test-e2e/Graph/Explicit/dotp_buffer_reduction.cpp +++ b/sycl/test-e2e/Graph/Explicit/dotp_buffer_reduction.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // Skip as reduction support is not complete. // REQUIRES: NOT_YET_IMPLEMENTED diff --git a/sycl/test-e2e/Graph/Explicit/dotp_usm_reduction.cpp b/sycl/test-e2e/Graph/Explicit/dotp_usm_reduction.cpp index 697ac7c38ba9e..7f6b48fa798df 100644 --- a/sycl/test-e2e/Graph/Explicit/dotp_usm_reduction.cpp +++ b/sycl/test-e2e/Graph/Explicit/dotp_usm_reduction.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // Skip as reduction support is not complete. // REQUIRES: NOT_YET_IMPLEMENTED diff --git a/sycl/test-e2e/Graph/Explicit/double_buffer.cpp b/sycl/test-e2e/Graph/Explicit/double_buffer.cpp index 60bce540bd87c..c219284def154 100644 --- a/sycl/test-e2e/Graph/Explicit/double_buffer.cpp +++ b/sycl/test-e2e/Graph/Explicit/double_buffer.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // Skip as executable graph update isn't implemented yet // REQUIRES: NOT_YET_IMPLEMENTED diff --git a/sycl/test-e2e/Graph/Explicit/empty_node.cpp b/sycl/test-e2e/Graph/Explicit/empty_node.cpp index b1bda053a2cc1..7f7501175899c 100644 --- a/sycl/test-e2e/Graph/Explicit/empty_node.cpp +++ b/sycl/test-e2e/Graph/Explicit/empty_node.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_EXPLICIT diff --git a/sycl/test-e2e/Graph/Explicit/enqueue_ordering.cpp b/sycl/test-e2e/Graph/Explicit/enqueue_ordering.cpp index a15017e453c01..f53ae042dfd22 100644 --- a/sycl/test-e2e/Graph/Explicit/enqueue_ordering.cpp +++ b/sycl/test-e2e/Graph/Explicit/enqueue_ordering.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // Test submitting the same graph twice with another command in between, this // intermediate command depends on the first submission of the graph, and @@ -11,7 +12,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Explicit/event_status_querying.cpp b/sycl/test-e2e/Graph/Explicit/event_status_querying.cpp index 420a7cfcd06be..f559daf50849b 100644 --- a/sycl/test-e2e/Graph/Explicit/event_status_querying.cpp +++ b/sycl/test-e2e/Graph/Explicit/event_status_querying.cpp @@ -1,5 +1,5 @@ // RUN: %{build} -o %t.out -// RUN: %if level_zero || cuda %{ %{run} %t.out 2>&1 | FileCheck %s %} %else %{ %{run} %t.out %} +// RUN: %if level_zero || cuda %{ %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} %else %{ %{run} %t.out %} // // CHECK: complete // diff --git a/sycl/test-e2e/Graph/Explicit/executable_graph_update.cpp b/sycl/test-e2e/Graph/Explicit/executable_graph_update.cpp index a8c8764d7ce65..cadfbb625b725 100644 --- a/sycl/test-e2e/Graph/Explicit/executable_graph_update.cpp +++ b/sycl/test-e2e/Graph/Explicit/executable_graph_update.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // Skip as executable graph update not implemented yet // REQUIRES: NOT_YET_IMPLEMENTED diff --git a/sycl/test-e2e/Graph/Explicit/executable_graph_update_ordering.cpp b/sycl/test-e2e/Graph/Explicit/executable_graph_update_ordering.cpp index 39bcc98410e44..a8eb9a9c5a5a4 100644 --- a/sycl/test-e2e/Graph/Explicit/executable_graph_update_ordering.cpp +++ b/sycl/test-e2e/Graph/Explicit/executable_graph_update_ordering.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // Skip as executable graph update and host tasks both aren't // implemented. diff --git a/sycl/test-e2e/Graph/Explicit/host_task.cpp b/sycl/test-e2e/Graph/Explicit/host_task.cpp index f6ca8416bd628..167219bf4b8ef 100644 --- a/sycl/test-e2e/Graph/Explicit/host_task.cpp +++ b/sycl/test-e2e/Graph/Explicit/host_task.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_EXPLICIT diff --git a/sycl/test-e2e/Graph/Explicit/host_task2.cpp b/sycl/test-e2e/Graph/Explicit/host_task2.cpp index b5fd2763aa59f..f7d59f48aac09 100644 --- a/sycl/test-e2e/Graph/Explicit/host_task2.cpp +++ b/sycl/test-e2e/Graph/Explicit/host_task2.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out -// Extra run to check for leaks in Level Zero -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_EXPLICIT diff --git a/sycl/test-e2e/Graph/Explicit/host_task_last.cpp b/sycl/test-e2e/Graph/Explicit/host_task_last.cpp index cd2e7cc714b3c..aed2916284cc1 100644 --- a/sycl/test-e2e/Graph/Explicit/host_task_last.cpp +++ b/sycl/test-e2e/Graph/Explicit/host_task_last.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out -// Extra run to check for leaks in Level Zero -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_EXPLICIT diff --git a/sycl/test-e2e/Graph/Explicit/host_task_multiple_deps.cpp b/sycl/test-e2e/Graph/Explicit/host_task_multiple_deps.cpp index 52ff796798e36..3d03b7f6013ad 100644 --- a/sycl/test-e2e/Graph/Explicit/host_task_multiple_deps.cpp +++ b/sycl/test-e2e/Graph/Explicit/host_task_multiple_deps.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out -// Extra run to check for leaks in Level Zero -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_EXPLICIT diff --git a/sycl/test-e2e/Graph/Explicit/host_task_single.cpp b/sycl/test-e2e/Graph/Explicit/host_task_single.cpp index 38b32a97a74db..6fc8744e04c18 100644 --- a/sycl/test-e2e/Graph/Explicit/host_task_single.cpp +++ b/sycl/test-e2e/Graph/Explicit/host_task_single.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out -// Extra run to check for leaks in Level Zero -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_EXPLICIT diff --git a/sycl/test-e2e/Graph/Explicit/host_task_successive.cpp b/sycl/test-e2e/Graph/Explicit/host_task_successive.cpp index 53b3e84c5205a..da26b8b182296 100644 --- a/sycl/test-e2e/Graph/Explicit/host_task_successive.cpp +++ b/sycl/test-e2e/Graph/Explicit/host_task_successive.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out -// Extra run to check for leaks in Level Zero -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_EXPLICIT diff --git a/sycl/test-e2e/Graph/Explicit/kernel_bundle.cpp b/sycl/test-e2e/Graph/Explicit/kernel_bundle.cpp index 321e94a55560c..28da376967dbf 100644 --- a/sycl/test-e2e/Graph/Explicit/kernel_bundle.cpp +++ b/sycl/test-e2e/Graph/Explicit/kernel_bundle.cpp @@ -1,6 +1,6 @@ // RUN: %{build} -o %t.out // RUN: %if cuda %{ %{run} %t.out %} -// RUN: %if level_zero %{env SYCL_PI_TRACE=2 %{run} %t.out | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_TRACE=2 %{run} %t.out | FileCheck %s --implicit-check-not=LEAK %} // Checks the PI call trace to ensure that the bundle kernel of the single task // is used. diff --git a/sycl/test-e2e/Graph/Explicit/multiple_exec_graphs.cpp b/sycl/test-e2e/Graph/Explicit/multiple_exec_graphs.cpp index d59dd7247b171..a83775b8ecb8a 100644 --- a/sycl/test-e2e/Graph/Explicit/multiple_exec_graphs.cpp +++ b/sycl/test-e2e/Graph/Explicit/multiple_exec_graphs.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_EXPLICIT diff --git a/sycl/test-e2e/Graph/Explicit/multiple_kernel_bundles.cpp b/sycl/test-e2e/Graph/Explicit/multiple_kernel_bundles.cpp index f72f5673dd6a2..494e22cbc1f3b 100644 --- a/sycl/test-e2e/Graph/Explicit/multiple_kernel_bundles.cpp +++ b/sycl/test-e2e/Graph/Explicit/multiple_kernel_bundles.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_EXPLICIT diff --git a/sycl/test-e2e/Graph/Explicit/node_ordering.cpp b/sycl/test-e2e/Graph/Explicit/node_ordering.cpp index f108063fed4f4..3081131c54a47 100644 --- a/sycl/test-e2e/Graph/Explicit/node_ordering.cpp +++ b/sycl/test-e2e/Graph/Explicit/node_ordering.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // Tests that graph.make_edge() correctly defines the dependency between two // nodes. @@ -11,7 +12,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Explicit/queue_shortcuts.cpp b/sycl/test-e2e/Graph/Explicit/queue_shortcuts.cpp index 42dc0a99745a4..a2589cda54320 100644 --- a/sycl/test-e2e/Graph/Explicit/queue_shortcuts.cpp +++ b/sycl/test-e2e/Graph/Explicit/queue_shortcuts.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_EXPLICIT diff --git a/sycl/test-e2e/Graph/Explicit/repeated_exec.cpp b/sycl/test-e2e/Graph/Explicit/repeated_exec.cpp index fdbcaf7b79f08..8b1f6ba3d4455 100644 --- a/sycl/test-e2e/Graph/Explicit/repeated_exec.cpp +++ b/sycl/test-e2e/Graph/Explicit/repeated_exec.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_EXPLICIT diff --git a/sycl/test-e2e/Graph/Explicit/single_node.cpp b/sycl/test-e2e/Graph/Explicit/single_node.cpp index dce4e510bcbd8..e936d8d41fc65 100644 --- a/sycl/test-e2e/Graph/Explicit/single_node.cpp +++ b/sycl/test-e2e/Graph/Explicit/single_node.cpp @@ -1,16 +1,17 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // Tests adding a node to the graph with explicit API works as expected. #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Explicit/spec_constants_handler_api.cpp b/sycl/test-e2e/Graph/Explicit/spec_constants_handler_api.cpp index 1ca2e3d4398e3..38c5304188692 100644 --- a/sycl/test-e2e/Graph/Explicit/spec_constants_handler_api.cpp +++ b/sycl/test-e2e/Graph/Explicit/spec_constants_handler_api.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // The following limitation is not restricted to Sycl-Graph // but comes from the orignal test : `SpecConstants/2020/handler-api.cpp` diff --git a/sycl/test-e2e/Graph/Explicit/spec_constants_kernel_bundle_api.cpp b/sycl/test-e2e/Graph/Explicit/spec_constants_kernel_bundle_api.cpp index e6dc301253725..c8b3192461b3a 100644 --- a/sycl/test-e2e/Graph/Explicit/spec_constants_kernel_bundle_api.cpp +++ b/sycl/test-e2e/Graph/Explicit/spec_constants_kernel_bundle_api.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // The following limitation is not restricted to Sycl-Graph // but comes from the orignal test : `SpecConstants/2020/kernel-bundle-api.cpp` diff --git a/sycl/test-e2e/Graph/Explicit/stream.cpp b/sycl/test-e2e/Graph/Explicit/stream.cpp index 02f02561f2f55..d27892e74eb9c 100644 --- a/sycl/test-e2e/Graph/Explicit/stream.cpp +++ b/sycl/test-e2e/Graph/Explicit/stream.cpp @@ -1,8 +1,7 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out %GPU_CHECK_PLACEHOLDER -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out %GPU_CHECK_PLACEHOLDER 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out %GPU_CHECK_PLACEHOLDER 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // Skip as sycl streams aren't implemented yet // REQUIRES: NOT_YET_IMPLEMENTED diff --git a/sycl/test-e2e/Graph/Explicit/sub_graph.cpp b/sycl/test-e2e/Graph/Explicit/sub_graph.cpp index 890ad6ba1889e..830cc5a42a668 100644 --- a/sycl/test-e2e/Graph/Explicit/sub_graph.cpp +++ b/sycl/test-e2e/Graph/Explicit/sub_graph.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_EXPLICIT diff --git a/sycl/test-e2e/Graph/Explicit/sub_graph_execute_without_parent.cpp b/sycl/test-e2e/Graph/Explicit/sub_graph_execute_without_parent.cpp index 8e17f5df91b5e..bc3cb1c8f352d 100644 --- a/sycl/test-e2e/Graph/Explicit/sub_graph_execute_without_parent.cpp +++ b/sycl/test-e2e/Graph/Explicit/sub_graph_execute_without_parent.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_EXPLICIT diff --git a/sycl/test-e2e/Graph/Explicit/sub_graph_multiple_submission.cpp b/sycl/test-e2e/Graph/Explicit/sub_graph_multiple_submission.cpp index 23ac1c7332a12..92add086ee20d 100644 --- a/sycl/test-e2e/Graph/Explicit/sub_graph_multiple_submission.cpp +++ b/sycl/test-e2e/Graph/Explicit/sub_graph_multiple_submission.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_EXPLICIT diff --git a/sycl/test-e2e/Graph/Explicit/sub_graph_nested.cpp b/sycl/test-e2e/Graph/Explicit/sub_graph_nested.cpp index b2d0d418f750a..05ecfbd982a01 100644 --- a/sycl/test-e2e/Graph/Explicit/sub_graph_nested.cpp +++ b/sycl/test-e2e/Graph/Explicit/sub_graph_nested.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_EXPLICIT diff --git a/sycl/test-e2e/Graph/Explicit/sub_graph_reduction.cpp b/sycl/test-e2e/Graph/Explicit/sub_graph_reduction.cpp index 79ca5e9baa649..5cb09d981f073 100644 --- a/sycl/test-e2e/Graph/Explicit/sub_graph_reduction.cpp +++ b/sycl/test-e2e/Graph/Explicit/sub_graph_reduction.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // Skip as reduction support is not complete. // REQUIRES: NOT_YET_IMPLEMENTED diff --git a/sycl/test-e2e/Graph/Explicit/sub_graph_two_parent_graphs.cpp b/sycl/test-e2e/Graph/Explicit/sub_graph_two_parent_graphs.cpp index 97d78c71cd9e5..8fa8e0c334de2 100644 --- a/sycl/test-e2e/Graph/Explicit/sub_graph_two_parent_graphs.cpp +++ b/sycl/test-e2e/Graph/Explicit/sub_graph_two_parent_graphs.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_EXPLICIT diff --git a/sycl/test-e2e/Graph/Explicit/sub_group_prop.cpp b/sycl/test-e2e/Graph/Explicit/sub_group_prop.cpp index 3d8169ae8ce1e..9ba30fb235b7b 100644 --- a/sycl/test-e2e/Graph/Explicit/sub_group_prop.cpp +++ b/sycl/test-e2e/Graph/Explicit/sub_group_prop.cpp @@ -1,9 +1,10 @@ -// RUN: %{build} -fsycl-device-code-split=per_kernel -o %t.out +// RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_EXPLICIT diff --git a/sycl/test-e2e/Graph/Explicit/temp_buffer_reinterpret.cpp b/sycl/test-e2e/Graph/Explicit/temp_buffer_reinterpret.cpp index 68026409d58e2..59edeee9f122c 100644 --- a/sycl/test-e2e/Graph/Explicit/temp_buffer_reinterpret.cpp +++ b/sycl/test-e2e/Graph/Explicit/temp_buffer_reinterpret.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_EXPLICIT diff --git a/sycl/test-e2e/Graph/Explicit/usm_copy.cpp b/sycl/test-e2e/Graph/Explicit/usm_copy.cpp index 0be7c09d8674c..323d3e35935ac 100644 --- a/sycl/test-e2e/Graph/Explicit/usm_copy.cpp +++ b/sycl/test-e2e/Graph/Explicit/usm_copy.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // // USM copy command not supported for OpenCL // UNSUPPORTED: opencl diff --git a/sycl/test-e2e/Graph/Explicit/usm_fill.cpp b/sycl/test-e2e/Graph/Explicit/usm_fill.cpp index f63819573182e..86076768f5d32 100644 --- a/sycl/test-e2e/Graph/Explicit/usm_fill.cpp +++ b/sycl/test-e2e/Graph/Explicit/usm_fill.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_EXPLICIT diff --git a/sycl/test-e2e/Graph/Explicit/usm_fill_host.cpp b/sycl/test-e2e/Graph/Explicit/usm_fill_host.cpp index 4a18b1635fef4..033e239295dd9 100644 --- a/sycl/test-e2e/Graph/Explicit/usm_fill_host.cpp +++ b/sycl/test-e2e/Graph/Explicit/usm_fill_host.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_EXPLICIT diff --git a/sycl/test-e2e/Graph/Explicit/usm_fill_shared.cpp b/sycl/test-e2e/Graph/Explicit/usm_fill_shared.cpp index 15cf01cadabc6..e0100d42d7267 100644 --- a/sycl/test-e2e/Graph/Explicit/usm_fill_shared.cpp +++ b/sycl/test-e2e/Graph/Explicit/usm_fill_shared.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_EXPLICIT diff --git a/sycl/test-e2e/Graph/Explicit/usm_memset.cpp b/sycl/test-e2e/Graph/Explicit/usm_memset.cpp index a8a42abc1acd0..e9bb9ebab0fa9 100644 --- a/sycl/test-e2e/Graph/Explicit/usm_memset.cpp +++ b/sycl/test-e2e/Graph/Explicit/usm_memset.cpp @@ -2,7 +2,9 @@ // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG // RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck --implicit-check-not=LEAK %s %} - +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// // USM memset command not supported for OpenCL // UNSUPPORTED: opencl diff --git a/sycl/test-e2e/Graph/Explicit/work_group_size_prop.cpp b/sycl/test-e2e/Graph/Explicit/work_group_size_prop.cpp index a8fdb0dfce20d..1bfe9e5cb2e69 100644 --- a/sycl/test-e2e/Graph/Explicit/work_group_size_prop.cpp +++ b/sycl/test-e2e/Graph/Explicit/work_group_size_prop.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // Temporarily disabled for CUDA and OpenCL // The OpenCL emulation layer does not return `CL_INVALID_WORK_GROUP_SIZE` as it diff --git a/sycl/test-e2e/Graph/Inputs/add_nodes_after_finalize.cpp b/sycl/test-e2e/Graph/Inputs/add_nodes_after_finalize.cpp index 4f445f02ecede..ec54bb11c64ca 100644 --- a/sycl/test-e2e/Graph/Inputs/add_nodes_after_finalize.cpp +++ b/sycl/test-e2e/Graph/Inputs/add_nodes_after_finalize.cpp @@ -5,7 +5,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/basic_buffer.cpp b/sycl/test-e2e/Graph/Inputs/basic_buffer.cpp index 35116279373b4..869ad9ca4b11c 100644 --- a/sycl/test-e2e/Graph/Inputs/basic_buffer.cpp +++ b/sycl/test-e2e/Graph/Inputs/basic_buffer.cpp @@ -4,7 +4,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/basic_usm.cpp b/sycl/test-e2e/Graph/Inputs/basic_usm.cpp index c70c4bf31163a..df2fe0687b753 100644 --- a/sycl/test-e2e/Graph/Inputs/basic_usm.cpp +++ b/sycl/test-e2e/Graph/Inputs/basic_usm.cpp @@ -5,7 +5,7 @@ #include int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/basic_usm_host.cpp b/sycl/test-e2e/Graph/Inputs/basic_usm_host.cpp index 0c4cbad559352..dac4f5b59b763 100644 --- a/sycl/test-e2e/Graph/Inputs/basic_usm_host.cpp +++ b/sycl/test-e2e/Graph/Inputs/basic_usm_host.cpp @@ -4,7 +4,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/basic_usm_mixed.cpp b/sycl/test-e2e/Graph/Inputs/basic_usm_mixed.cpp index 645e3a2c26f37..19f2c521e30f3 100644 --- a/sycl/test-e2e/Graph/Inputs/basic_usm_mixed.cpp +++ b/sycl/test-e2e/Graph/Inputs/basic_usm_mixed.cpp @@ -4,7 +4,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/basic_usm_shared.cpp b/sycl/test-e2e/Graph/Inputs/basic_usm_shared.cpp index ad10df513bb7c..2319ddc20714b 100644 --- a/sycl/test-e2e/Graph/Inputs/basic_usm_shared.cpp +++ b/sycl/test-e2e/Graph/Inputs/basic_usm_shared.cpp @@ -4,7 +4,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/basic_usm_system.cpp b/sycl/test-e2e/Graph/Inputs/basic_usm_system.cpp index 64826571dc88b..8fde53575e9ec 100644 --- a/sycl/test-e2e/Graph/Inputs/basic_usm_system.cpp +++ b/sycl/test-e2e/Graph/Inputs/basic_usm_system.cpp @@ -4,7 +4,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/buffer_copy.cpp b/sycl/test-e2e/Graph/Inputs/buffer_copy.cpp index f53f2348e222a..3cf49d77ad5cf 100644 --- a/sycl/test-e2e/Graph/Inputs/buffer_copy.cpp +++ b/sycl/test-e2e/Graph/Inputs/buffer_copy.cpp @@ -3,7 +3,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/buffer_copy_2d.cpp b/sycl/test-e2e/Graph/Inputs/buffer_copy_2d.cpp index 908ec3bd5dc6e..094ee2393bf9e 100644 --- a/sycl/test-e2e/Graph/Inputs/buffer_copy_2d.cpp +++ b/sycl/test-e2e/Graph/Inputs/buffer_copy_2d.cpp @@ -4,7 +4,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; @@ -26,7 +26,7 @@ int main() { ReferenceA[j] = ReferenceB[j]; ReferenceA[j] += ModValue; ReferenceB[j] = ReferenceA[j]; - ReferenceB[j] += ModValue; + ReferenceB[j] += (ModValue + 1); ReferenceC[j] = ReferenceB[j]; } } @@ -87,7 +87,7 @@ int main() { [&](handler &CGH) { auto AccB = BufferB.get_access(CGH); CGH.parallel_for(range<2>(Size, Size), - [=](item<2> id) { AccB[id] += ModValue; }); + [=](item<2> id) { AccB[id] += (ModValue + 1); }); }, NodeC); @@ -108,6 +108,7 @@ int main() { Event = Queue.submit([&](handler &CGH) { CGH.ext_oneapi_graph(GraphExec); }); } + // Event.wait(); Queue.wait_and_throw(); } diff --git a/sycl/test-e2e/Graph/Inputs/buffer_copy_host2target.cpp b/sycl/test-e2e/Graph/Inputs/buffer_copy_host2target.cpp index 68146e55c2fd5..c5e0ee79e59af 100644 --- a/sycl/test-e2e/Graph/Inputs/buffer_copy_host2target.cpp +++ b/sycl/test-e2e/Graph/Inputs/buffer_copy_host2target.cpp @@ -4,7 +4,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/buffer_copy_host2target_2d.cpp b/sycl/test-e2e/Graph/Inputs/buffer_copy_host2target_2d.cpp index 87da3daf26bd5..d42dba77daa31 100644 --- a/sycl/test-e2e/Graph/Inputs/buffer_copy_host2target_2d.cpp +++ b/sycl/test-e2e/Graph/Inputs/buffer_copy_host2target_2d.cpp @@ -4,7 +4,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/buffer_copy_host2target_offset.cpp b/sycl/test-e2e/Graph/Inputs/buffer_copy_host2target_offset.cpp index 315c70835691a..0c8ccf73d3281 100644 --- a/sycl/test-e2e/Graph/Inputs/buffer_copy_host2target_offset.cpp +++ b/sycl/test-e2e/Graph/Inputs/buffer_copy_host2target_offset.cpp @@ -4,7 +4,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/buffer_copy_offsets.cpp b/sycl/test-e2e/Graph/Inputs/buffer_copy_offsets.cpp index 3d1974e883e03..08c15015c5d83 100644 --- a/sycl/test-e2e/Graph/Inputs/buffer_copy_offsets.cpp +++ b/sycl/test-e2e/Graph/Inputs/buffer_copy_offsets.cpp @@ -4,7 +4,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/buffer_copy_target2host.cpp b/sycl/test-e2e/Graph/Inputs/buffer_copy_target2host.cpp index 911b18b6cd32c..9740c84e2f5ea 100644 --- a/sycl/test-e2e/Graph/Inputs/buffer_copy_target2host.cpp +++ b/sycl/test-e2e/Graph/Inputs/buffer_copy_target2host.cpp @@ -4,7 +4,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/buffer_copy_target2host_2d.cpp b/sycl/test-e2e/Graph/Inputs/buffer_copy_target2host_2d.cpp index e5888dc4efb93..6429d5e8de000 100644 --- a/sycl/test-e2e/Graph/Inputs/buffer_copy_target2host_2d.cpp +++ b/sycl/test-e2e/Graph/Inputs/buffer_copy_target2host_2d.cpp @@ -4,7 +4,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/buffer_copy_target2host_offset.cpp b/sycl/test-e2e/Graph/Inputs/buffer_copy_target2host_offset.cpp index 2db984e64a999..b9e9846c8b72d 100644 --- a/sycl/test-e2e/Graph/Inputs/buffer_copy_target2host_offset.cpp +++ b/sycl/test-e2e/Graph/Inputs/buffer_copy_target2host_offset.cpp @@ -4,7 +4,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/buffer_ordering.cpp b/sycl/test-e2e/Graph/Inputs/buffer_ordering.cpp index 819abc771241e..6a51c8ff4354e 100644 --- a/sycl/test-e2e/Graph/Inputs/buffer_ordering.cpp +++ b/sycl/test-e2e/Graph/Inputs/buffer_ordering.cpp @@ -12,7 +12,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/debug_print_graph.cpp b/sycl/test-e2e/Graph/Inputs/debug_print_graph.cpp index cb25502fd871c..fa997b81dd4d6 100644 --- a/sycl/test-e2e/Graph/Inputs/debug_print_graph.cpp +++ b/sycl/test-e2e/Graph/Inputs/debug_print_graph.cpp @@ -4,7 +4,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/debug_print_graph_verbose.cpp b/sycl/test-e2e/Graph/Inputs/debug_print_graph_verbose.cpp index c22b0be836cd7..2eb8e034f6363 100644 --- a/sycl/test-e2e/Graph/Inputs/debug_print_graph_verbose.cpp +++ b/sycl/test-e2e/Graph/Inputs/debug_print_graph_verbose.cpp @@ -4,7 +4,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/dotp_buffer_reduction.cpp b/sycl/test-e2e/Graph/Inputs/dotp_buffer_reduction.cpp index f42764db749c4..0cb8522a6832b 100644 --- a/sycl/test-e2e/Graph/Inputs/dotp_buffer_reduction.cpp +++ b/sycl/test-e2e/Graph/Inputs/dotp_buffer_reduction.cpp @@ -3,7 +3,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/dotp_usm_reduction.cpp b/sycl/test-e2e/Graph/Inputs/dotp_usm_reduction.cpp index 3b4d941b167a0..b1a98f6df09c3 100644 --- a/sycl/test-e2e/Graph/Inputs/dotp_usm_reduction.cpp +++ b/sycl/test-e2e/Graph/Inputs/dotp_usm_reduction.cpp @@ -4,7 +4,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/double_buffer.cpp b/sycl/test-e2e/Graph/Inputs/double_buffer.cpp index 9fafdfccecdf4..407fe290c8563 100644 --- a/sycl/test-e2e/Graph/Inputs/double_buffer.cpp +++ b/sycl/test-e2e/Graph/Inputs/double_buffer.cpp @@ -5,7 +5,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/empty_node.cpp b/sycl/test-e2e/Graph/Inputs/empty_node.cpp index fedb8c2818775..83be717263926 100644 --- a/sycl/test-e2e/Graph/Inputs/empty_node.cpp +++ b/sycl/test-e2e/Graph/Inputs/empty_node.cpp @@ -4,7 +4,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/event_status_querying.cpp b/sycl/test-e2e/Graph/Inputs/event_status_querying.cpp index a68b78c4ca371..a932eb3ece6c1 100644 --- a/sycl/test-e2e/Graph/Inputs/event_status_querying.cpp +++ b/sycl/test-e2e/Graph/Inputs/event_status_querying.cpp @@ -34,7 +34,7 @@ std::string event_status_name(sycl::info::event_command_status status) { } int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/executable_graph_update.cpp b/sycl/test-e2e/Graph/Inputs/executable_graph_update.cpp index b8ad1c789a138..8794d07a7341f 100644 --- a/sycl/test-e2e/Graph/Inputs/executable_graph_update.cpp +++ b/sycl/test-e2e/Graph/Inputs/executable_graph_update.cpp @@ -4,7 +4,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/executable_graph_update_ordering.cpp b/sycl/test-e2e/Graph/Inputs/executable_graph_update_ordering.cpp index 96d1ec510d108..3ab5fe0c7d9c9 100644 --- a/sycl/test-e2e/Graph/Inputs/executable_graph_update_ordering.cpp +++ b/sycl/test-e2e/Graph/Inputs/executable_graph_update_ordering.cpp @@ -5,7 +5,7 @@ #include int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/host_task.cpp b/sycl/test-e2e/Graph/Inputs/host_task.cpp index 8b232b35bc247..94c24dabdfebb 100644 --- a/sycl/test-e2e/Graph/Inputs/host_task.cpp +++ b/sycl/test-e2e/Graph/Inputs/host_task.cpp @@ -3,7 +3,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/host_task2.cpp b/sycl/test-e2e/Graph/Inputs/host_task2.cpp index c6cb0d2cbf169..00aceabb9da1e 100644 --- a/sycl/test-e2e/Graph/Inputs/host_task2.cpp +++ b/sycl/test-e2e/Graph/Inputs/host_task2.cpp @@ -3,7 +3,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/host_task_last.cpp b/sycl/test-e2e/Graph/Inputs/host_task_last.cpp index 2d65ccde3d587..aafbd67081699 100644 --- a/sycl/test-e2e/Graph/Inputs/host_task_last.cpp +++ b/sycl/test-e2e/Graph/Inputs/host_task_last.cpp @@ -3,7 +3,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/host_task_multiple_deps.cpp b/sycl/test-e2e/Graph/Inputs/host_task_multiple_deps.cpp index 9457513fb14e2..e3610322f04c9 100644 --- a/sycl/test-e2e/Graph/Inputs/host_task_multiple_deps.cpp +++ b/sycl/test-e2e/Graph/Inputs/host_task_multiple_deps.cpp @@ -4,7 +4,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/host_task_single.cpp b/sycl/test-e2e/Graph/Inputs/host_task_single.cpp index ec936acf9e047..44f13354bcb67 100644 --- a/sycl/test-e2e/Graph/Inputs/host_task_single.cpp +++ b/sycl/test-e2e/Graph/Inputs/host_task_single.cpp @@ -3,7 +3,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/host_task_successive.cpp b/sycl/test-e2e/Graph/Inputs/host_task_successive.cpp index 9e26f8021bff2..d17d75b9c4ba0 100644 --- a/sycl/test-e2e/Graph/Inputs/host_task_successive.cpp +++ b/sycl/test-e2e/Graph/Inputs/host_task_successive.cpp @@ -3,7 +3,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/interop-level-zero-get-native-mem.cpp b/sycl/test-e2e/Graph/Inputs/interop-level-zero-get-native-mem.cpp index e09d28730a31e..16f30d9fcc3b6 100644 --- a/sycl/test-e2e/Graph/Inputs/interop-level-zero-get-native-mem.cpp +++ b/sycl/test-e2e/Graph/Inputs/interop-level-zero-get-native-mem.cpp @@ -31,10 +31,7 @@ int main() { device Dev1 = Devices[0]; context Context1{Dev1}; - queue Queue{ - Context1, - Dev1, - {sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{Context1, Dev1}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/kernel_bundle.cpp b/sycl/test-e2e/Graph/Inputs/kernel_bundle.cpp index 444473c769c21..6f77db3f3cfd7 100644 --- a/sycl/test-e2e/Graph/Inputs/kernel_bundle.cpp +++ b/sycl/test-e2e/Graph/Inputs/kernel_bundle.cpp @@ -10,9 +10,7 @@ int main() { const sycl::device Dev{sycl::default_selector_v}; const sycl::context Ctx{Dev}; - queue Queue{Ctx, - Dev, - {sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{Ctx, Dev}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/multiple_exec_graphs.cpp b/sycl/test-e2e/Graph/Inputs/multiple_exec_graphs.cpp index ff730cd00f1ce..022abc3ab26fb 100644 --- a/sycl/test-e2e/Graph/Inputs/multiple_exec_graphs.cpp +++ b/sycl/test-e2e/Graph/Inputs/multiple_exec_graphs.cpp @@ -4,7 +4,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/multiple_kernel_bundles.cpp b/sycl/test-e2e/Graph/Inputs/multiple_kernel_bundles.cpp index fdf6cd47357a1..dfd98d1934046 100644 --- a/sycl/test-e2e/Graph/Inputs/multiple_kernel_bundles.cpp +++ b/sycl/test-e2e/Graph/Inputs/multiple_kernel_bundles.cpp @@ -14,9 +14,7 @@ int main() { const sycl::context Ctx{Dev}; const sycl::context Ctx2{Dev2}; - queue Queue{Ctx, - Dev, - {sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{Ctx, Dev}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/queue_shortcuts.cpp b/sycl/test-e2e/Graph/Inputs/queue_shortcuts.cpp index 9471ab645eb6b..66405288bc1e2 100644 --- a/sycl/test-e2e/Graph/Inputs/queue_shortcuts.cpp +++ b/sycl/test-e2e/Graph/Inputs/queue_shortcuts.cpp @@ -3,7 +3,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/repeated_exec.cpp b/sycl/test-e2e/Graph/Inputs/repeated_exec.cpp index 0819cd75a063d..c207c5a0197ee 100644 --- a/sycl/test-e2e/Graph/Inputs/repeated_exec.cpp +++ b/sycl/test-e2e/Graph/Inputs/repeated_exec.cpp @@ -3,7 +3,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/spec_constants_handler_api.cpp b/sycl/test-e2e/Graph/Inputs/spec_constants_handler_api.cpp index 03e24cef2ad03..7c2ddfda5cd4a 100644 --- a/sycl/test-e2e/Graph/Inputs/spec_constants_handler_api.cpp +++ b/sycl/test-e2e/Graph/Inputs/spec_constants_handler_api.cpp @@ -33,8 +33,7 @@ int main() { } }; - queue Queue{ExceptionHandler, - {sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{ExceptionHandler}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/spec_constants_kernel_bundle_api.cpp b/sycl/test-e2e/Graph/Inputs/spec_constants_kernel_bundle_api.cpp index d9311c72d42eb..6fb49f4898813 100644 --- a/sycl/test-e2e/Graph/Inputs/spec_constants_kernel_bundle_api.cpp +++ b/sycl/test-e2e/Graph/Inputs/spec_constants_kernel_bundle_api.cpp @@ -30,8 +30,7 @@ int main() { } }; - queue Queue{ExceptionHandler, - {sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{ExceptionHandler}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/stream.cpp b/sycl/test-e2e/Graph/Inputs/stream.cpp index dc6527c9ddf82..a194cae835ab2 100644 --- a/sycl/test-e2e/Graph/Inputs/stream.cpp +++ b/sycl/test-e2e/Graph/Inputs/stream.cpp @@ -4,7 +4,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/sub_graph.cpp b/sycl/test-e2e/Graph/Inputs/sub_graph.cpp index ccd99ef034d2b..0e17fee05a0e3 100644 --- a/sycl/test-e2e/Graph/Inputs/sub_graph.cpp +++ b/sycl/test-e2e/Graph/Inputs/sub_graph.cpp @@ -4,7 +4,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/sub_graph_execute_without_parent.cpp b/sycl/test-e2e/Graph/Inputs/sub_graph_execute_without_parent.cpp index 8c930e06a2381..d55ee789a66af 100644 --- a/sycl/test-e2e/Graph/Inputs/sub_graph_execute_without_parent.cpp +++ b/sycl/test-e2e/Graph/Inputs/sub_graph_execute_without_parent.cpp @@ -4,7 +4,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/sub_graph_multiple_submission.cpp b/sycl/test-e2e/Graph/Inputs/sub_graph_multiple_submission.cpp index 190853f585b4e..f333f651d1b67 100644 --- a/sycl/test-e2e/Graph/Inputs/sub_graph_multiple_submission.cpp +++ b/sycl/test-e2e/Graph/Inputs/sub_graph_multiple_submission.cpp @@ -4,7 +4,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/sub_graph_nested.cpp b/sycl/test-e2e/Graph/Inputs/sub_graph_nested.cpp index 82f56e606e2c9..81c7763564339 100644 --- a/sycl/test-e2e/Graph/Inputs/sub_graph_nested.cpp +++ b/sycl/test-e2e/Graph/Inputs/sub_graph_nested.cpp @@ -24,7 +24,7 @@ int reference(size_t i) { } // namespace int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/sub_graph_reduction.cpp b/sycl/test-e2e/Graph/Inputs/sub_graph_reduction.cpp index 3813fdb96d817..4d3298621287e 100644 --- a/sycl/test-e2e/Graph/Inputs/sub_graph_reduction.cpp +++ b/sycl/test-e2e/Graph/Inputs/sub_graph_reduction.cpp @@ -4,7 +4,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/sub_graph_two_parent_graphs.cpp b/sycl/test-e2e/Graph/Inputs/sub_graph_two_parent_graphs.cpp index b3f11d21eea7f..6289c43234379 100644 --- a/sycl/test-e2e/Graph/Inputs/sub_graph_two_parent_graphs.cpp +++ b/sycl/test-e2e/Graph/Inputs/sub_graph_two_parent_graphs.cpp @@ -4,7 +4,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/temp_buffer_reinterpret.cpp b/sycl/test-e2e/Graph/Inputs/temp_buffer_reinterpret.cpp index 874b877c32b28..574a05b058b52 100644 --- a/sycl/test-e2e/Graph/Inputs/temp_buffer_reinterpret.cpp +++ b/sycl/test-e2e/Graph/Inputs/temp_buffer_reinterpret.cpp @@ -6,7 +6,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/usm_copy.cpp b/sycl/test-e2e/Graph/Inputs/usm_copy.cpp index d24cefa87bf4a..309198afd22ae 100644 --- a/sycl/test-e2e/Graph/Inputs/usm_copy.cpp +++ b/sycl/test-e2e/Graph/Inputs/usm_copy.cpp @@ -3,7 +3,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/usm_fill.cpp b/sycl/test-e2e/Graph/Inputs/usm_fill.cpp index e2872efd5aff6..6c57588afbb77 100644 --- a/sycl/test-e2e/Graph/Inputs/usm_fill.cpp +++ b/sycl/test-e2e/Graph/Inputs/usm_fill.cpp @@ -3,7 +3,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/usm_fill_host.cpp b/sycl/test-e2e/Graph/Inputs/usm_fill_host.cpp index 3954f2807af80..fcba94fe61221 100644 --- a/sycl/test-e2e/Graph/Inputs/usm_fill_host.cpp +++ b/sycl/test-e2e/Graph/Inputs/usm_fill_host.cpp @@ -3,7 +3,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/usm_fill_shared.cpp b/sycl/test-e2e/Graph/Inputs/usm_fill_shared.cpp index 1782dd58ff43d..9ec3450070afa 100644 --- a/sycl/test-e2e/Graph/Inputs/usm_fill_shared.cpp +++ b/sycl/test-e2e/Graph/Inputs/usm_fill_shared.cpp @@ -3,7 +3,7 @@ #include "../graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/Inputs/work_group_size_prop.cpp b/sycl/test-e2e/Graph/Inputs/work_group_size_prop.cpp index 52efa89256ec1..8b11c6572b4a5 100644 --- a/sycl/test-e2e/Graph/Inputs/work_group_size_prop.cpp +++ b/sycl/test-e2e/Graph/Inputs/work_group_size_prop.cpp @@ -188,7 +188,7 @@ template int test(queue &Queue) { } int main() { - queue Queue({sycl::ext::intel::property::queue::no_immediate_command_list{}}); + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/RecordReplay/add_nodes_after_finalize.cpp b/sycl/test-e2e/Graph/RecordReplay/add_nodes_after_finalize.cpp index b82522d86f597..ba81666277e44 100644 --- a/sycl/test-e2e/Graph/RecordReplay/add_nodes_after_finalize.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/add_nodes_after_finalize.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // // Temporarily disabled until failure is addressed. // UNSUPPORTED: windows diff --git a/sycl/test-e2e/Graph/RecordReplay/after_use.cpp b/sycl/test-e2e/Graph/RecordReplay/after_use.cpp index 89770419e9a36..767ca8b425ab7 100644 --- a/sycl/test-e2e/Graph/RecordReplay/after_use.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/after_use.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // This test attempts recording a set of kernels after they have already been // executed once before. diff --git a/sycl/test-e2e/Graph/RecordReplay/assume_buffer_outlives_graph_property.cpp b/sycl/test-e2e/Graph/RecordReplay/assume_buffer_outlives_graph_property.cpp index 8a0276a092011..394ac6e6e1fde 100644 --- a/sycl/test-e2e/Graph/RecordReplay/assume_buffer_outlives_graph_property.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/assume_buffer_outlives_graph_property.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_RECORD_REPLAY diff --git a/sycl/test-e2e/Graph/RecordReplay/barrier_with_work.cpp b/sycl/test-e2e/Graph/RecordReplay/barrier_with_work.cpp index ad08d13d616ce..c12038ba46185 100644 --- a/sycl/test-e2e/Graph/RecordReplay/barrier_with_work.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/barrier_with_work.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #include "../graph_common.hpp" diff --git a/sycl/test-e2e/Graph/RecordReplay/basic_buffer.cpp b/sycl/test-e2e/Graph/RecordReplay/basic_buffer.cpp index 5310bbc13e16d..75b8064b6188a 100644 --- a/sycl/test-e2e/Graph/RecordReplay/basic_buffer.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/basic_buffer.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // // TODO enable cuda once buffer issue investigated and fixed // UNSUPPORTED: cuda diff --git a/sycl/test-e2e/Graph/RecordReplay/basic_usm.cpp b/sycl/test-e2e/Graph/RecordReplay/basic_usm.cpp index e64169d6cc4bf..ffddf70716250 100644 --- a/sycl/test-e2e/Graph/RecordReplay/basic_usm.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/basic_usm.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_RECORD_REPLAY diff --git a/sycl/test-e2e/Graph/RecordReplay/basic_usm_host.cpp b/sycl/test-e2e/Graph/RecordReplay/basic_usm_host.cpp index db7e24b82fbd1..a90931934f0ce 100644 --- a/sycl/test-e2e/Graph/RecordReplay/basic_usm_host.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/basic_usm_host.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_RECORD_REPLAY diff --git a/sycl/test-e2e/Graph/RecordReplay/basic_usm_mixed.cpp b/sycl/test-e2e/Graph/RecordReplay/basic_usm_mixed.cpp index b6be48bcc71b9..410850f5ff7a8 100644 --- a/sycl/test-e2e/Graph/RecordReplay/basic_usm_mixed.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/basic_usm_mixed.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_RECORD_REPLAY diff --git a/sycl/test-e2e/Graph/RecordReplay/basic_usm_shared.cpp b/sycl/test-e2e/Graph/RecordReplay/basic_usm_shared.cpp index 8059e2885596d..2f19c2706380b 100644 --- a/sycl/test-e2e/Graph/RecordReplay/basic_usm_shared.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/basic_usm_shared.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_RECORD_REPLAY diff --git a/sycl/test-e2e/Graph/RecordReplay/basic_usm_system.cpp b/sycl/test-e2e/Graph/RecordReplay/basic_usm_system.cpp index 843372e767990..3be705f1ea57b 100644 --- a/sycl/test-e2e/Graph/RecordReplay/basic_usm_system.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/basic_usm_system.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_RECORD_REPLAY diff --git a/sycl/test-e2e/Graph/RecordReplay/buffer_copy.cpp b/sycl/test-e2e/Graph/RecordReplay/buffer_copy.cpp index 20aad5d1c055c..9ad68d3eba60a 100644 --- a/sycl/test-e2e/Graph/RecordReplay/buffer_copy.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/buffer_copy.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // // TODO enable cuda once buffer issue investigated and fixed // UNSUPPORTED: cuda diff --git a/sycl/test-e2e/Graph/RecordReplay/buffer_copy_2d.cpp b/sycl/test-e2e/Graph/RecordReplay/buffer_copy_2d.cpp index 93e062487b1f7..0864bcda753f4 100644 --- a/sycl/test-e2e/Graph/RecordReplay/buffer_copy_2d.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/buffer_copy_2d.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // // TODO enable cuda once buffer issue investigated and fixed // UNSUPPORTED: cuda diff --git a/sycl/test-e2e/Graph/RecordReplay/buffer_copy_host2target.cpp b/sycl/test-e2e/Graph/RecordReplay/buffer_copy_host2target.cpp index 6e7eb7d16d796..3f98d3a5b9b6e 100644 --- a/sycl/test-e2e/Graph/RecordReplay/buffer_copy_host2target.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/buffer_copy_host2target.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // // TODO enable cuda once buffer issue investigated and fixed // UNSUPPORTED: cuda diff --git a/sycl/test-e2e/Graph/RecordReplay/buffer_copy_host2target_2d.cpp b/sycl/test-e2e/Graph/RecordReplay/buffer_copy_host2target_2d.cpp index 741aa5312fc09..e8a5ae29a641e 100644 --- a/sycl/test-e2e/Graph/RecordReplay/buffer_copy_host2target_2d.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/buffer_copy_host2target_2d.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // // TODO enable cuda once buffer issue investigated and fixed // UNSUPPORTED: cuda diff --git a/sycl/test-e2e/Graph/RecordReplay/buffer_copy_host2target_offset.cpp b/sycl/test-e2e/Graph/RecordReplay/buffer_copy_host2target_offset.cpp index 1fddc6d5c8cf7..b504d7732cab5 100644 --- a/sycl/test-e2e/Graph/RecordReplay/buffer_copy_host2target_offset.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/buffer_copy_host2target_offset.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // // TODO enable cuda once buffer issue investigated and fixed // UNSUPPORTED: cuda diff --git a/sycl/test-e2e/Graph/RecordReplay/buffer_copy_offsets.cpp b/sycl/test-e2e/Graph/RecordReplay/buffer_copy_offsets.cpp index ad9106eb0661c..13f591f1bf154 100644 --- a/sycl/test-e2e/Graph/RecordReplay/buffer_copy_offsets.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/buffer_copy_offsets.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // // TODO enable cuda once buffer issue investigated and fixed // UNSUPPORTED: cuda diff --git a/sycl/test-e2e/Graph/RecordReplay/buffer_copy_target2host.cpp b/sycl/test-e2e/Graph/RecordReplay/buffer_copy_target2host.cpp index 81e9c1f0cf71e..c9f921613aec6 100644 --- a/sycl/test-e2e/Graph/RecordReplay/buffer_copy_target2host.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/buffer_copy_target2host.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // // TODO enable cuda once buffer issue investigated and fixed // UNSUPPORTED: cuda diff --git a/sycl/test-e2e/Graph/RecordReplay/buffer_copy_target2host_2d.cpp b/sycl/test-e2e/Graph/RecordReplay/buffer_copy_target2host_2d.cpp index 921d4e7f07809..0618eb11e35a3 100644 --- a/sycl/test-e2e/Graph/RecordReplay/buffer_copy_target2host_2d.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/buffer_copy_target2host_2d.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // // TODO enable cuda once buffer issue investigated and fixed // UNSUPPORTED: cuda diff --git a/sycl/test-e2e/Graph/RecordReplay/buffer_copy_target2host_offset.cpp b/sycl/test-e2e/Graph/RecordReplay/buffer_copy_target2host_offset.cpp index e9d8d930a3b2b..b841721ee1f9b 100644 --- a/sycl/test-e2e/Graph/RecordReplay/buffer_copy_target2host_offset.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/buffer_copy_target2host_offset.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // // TODO enable cuda once buffer issue investigated and fixed // UNSUPPORTED: cuda diff --git a/sycl/test-e2e/Graph/RecordReplay/buffer_fill.cpp b/sycl/test-e2e/Graph/RecordReplay/buffer_fill.cpp index 91729ace49742..b4eaed70771df 100644 --- a/sycl/test-e2e/Graph/RecordReplay/buffer_fill.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/buffer_fill.cpp @@ -2,6 +2,8 @@ // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG // RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck --implicit-check-not=LEAK %s %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // // TODO enable cuda once buffer issue investigated and fixed // UNSUPPORTED: cuda diff --git a/sycl/test-e2e/Graph/RecordReplay/buffer_fill_2d.cpp b/sycl/test-e2e/Graph/RecordReplay/buffer_fill_2d.cpp index 77481b406a5f9..ad63adf799956 100644 --- a/sycl/test-e2e/Graph/RecordReplay/buffer_fill_2d.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/buffer_fill_2d.cpp @@ -2,6 +2,8 @@ // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG // RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck --implicit-check-not=LEAK %s %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // // TODO enable cuda once buffer issue investigated and fixed // UNSUPPORTED: cuda diff --git a/sycl/test-e2e/Graph/RecordReplay/buffer_fill_3d.cpp b/sycl/test-e2e/Graph/RecordReplay/buffer_fill_3d.cpp index 8743c4a30b344..e57be90bee922 100644 --- a/sycl/test-e2e/Graph/RecordReplay/buffer_fill_3d.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/buffer_fill_3d.cpp @@ -2,6 +2,8 @@ // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG // RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck --implicit-check-not=LEAK %s %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // // TODO enable cuda once buffer issue investigated and fixed // UNSUPPORTED: cuda diff --git a/sycl/test-e2e/Graph/RecordReplay/buffer_ordering.cpp b/sycl/test-e2e/Graph/RecordReplay/buffer_ordering.cpp index 3cad215274301..cc60037d5e6e0 100644 --- a/sycl/test-e2e/Graph/RecordReplay/buffer_ordering.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/buffer_ordering.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_RECORD_REPLAY diff --git a/sycl/test-e2e/Graph/RecordReplay/concurrent_queue.cpp b/sycl/test-e2e/Graph/RecordReplay/concurrent_queue.cpp index f89dedb0bcafc..b6da4290d6d4f 100644 --- a/sycl/test-e2e/Graph/RecordReplay/concurrent_queue.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/concurrent_queue.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // Tests attempting to begin recording to a graph when recording is // already in progress on another graph throws an error. diff --git a/sycl/test-e2e/Graph/RecordReplay/debug_print_graph.cpp b/sycl/test-e2e/Graph/RecordReplay/debug_print_graph.cpp index 49e9bdb2c2ac3..6ef999f7d41a7 100644 --- a/sycl/test-e2e/Graph/RecordReplay/debug_print_graph.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/debug_print_graph.cpp @@ -1,5 +1,5 @@ // RUN: %{build} -o %t.out -// RUN: %if linux && (level_zero || cuda) %{ %{run} %t.out ; FileCheck %s --input-file graph.dot %} %else %{ %{run} %t.out %} +// RUN: %if linux && (level_zero || cuda) %{ %{run} %t.out ; FileCheck %s --implicit-check-not=LEAK --input-file graph.dot %} %else %{ %{run} %t.out %} // Windows output format differs from linux format. // The filecheck-based output checking is suited to linux standards. // On Windows, we only test that printing takes place correctly and does not diff --git a/sycl/test-e2e/Graph/RecordReplay/debug_print_graph_verbose.cpp b/sycl/test-e2e/Graph/RecordReplay/debug_print_graph_verbose.cpp index 36106e2a5357d..c1697fc755ef2 100644 --- a/sycl/test-e2e/Graph/RecordReplay/debug_print_graph_verbose.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/debug_print_graph_verbose.cpp @@ -1,5 +1,5 @@ // RUN: %{build} -o %t.out -// RUN: %if linux && (level_zero || cuda) %{ %{run} %t.out ; FileCheck %s --input-file graph_verbose.dot %} %else %{ %{run} %t.out %} +// RUN: %if linux && (level_zero || cuda) %{ %{run} %t.out ; FileCheck %s --implicit-check-not=LEAK --input-file graph_verbose.dot %} %else %{ %{run} %t.out %} // Windows output format differs from linux format. // The filecheck-based output checking is suited to linux standards. // On Windows, we only test that printing takes place correctly and does not diff --git a/sycl/test-e2e/Graph/RecordReplay/dotp_buffer_reduction.cpp b/sycl/test-e2e/Graph/RecordReplay/dotp_buffer_reduction.cpp index 38ad5373dc61a..572d1691d7c46 100644 --- a/sycl/test-e2e/Graph/RecordReplay/dotp_buffer_reduction.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/dotp_buffer_reduction.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // Skip as reduction support is not complete. // REQUIRES: NOT_YET_IMPLEMENTED diff --git a/sycl/test-e2e/Graph/RecordReplay/dotp_in_order.cpp b/sycl/test-e2e/Graph/RecordReplay/dotp_in_order.cpp index 6797d32d18290..71adac4492d99 100644 --- a/sycl/test-e2e/Graph/RecordReplay/dotp_in_order.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/dotp_in_order.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // Tests a dotp operation using device USM and an in-order queue. diff --git a/sycl/test-e2e/Graph/RecordReplay/dotp_in_order_pause.cpp b/sycl/test-e2e/Graph/RecordReplay/dotp_in_order_pause.cpp index be439affcdf51..09310056a2b4f 100644 --- a/sycl/test-e2e/Graph/RecordReplay/dotp_in_order_pause.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/dotp_in_order_pause.cpp @@ -2,6 +2,8 @@ // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG // RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // Tests a dotp operation using device USM and an in-order queue. // Recording is paused, and command is submitted eagerly. diff --git a/sycl/test-e2e/Graph/RecordReplay/dotp_in_order_with_empty_nodes.cpp b/sycl/test-e2e/Graph/RecordReplay/dotp_in_order_with_empty_nodes.cpp index 01ff2476b845a..bf634e045630f 100644 --- a/sycl/test-e2e/Graph/RecordReplay/dotp_in_order_with_empty_nodes.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/dotp_in_order_with_empty_nodes.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // Tests a dotp operation using device USM and an in-order queue with empty // nodes. The second run is to check that there are no leaks reported with the diff --git a/sycl/test-e2e/Graph/RecordReplay/dotp_multiple_queues.cpp b/sycl/test-e2e/Graph/RecordReplay/dotp_multiple_queues.cpp index f518f5f0e4b53..788a808028d16 100644 --- a/sycl/test-e2e/Graph/RecordReplay/dotp_multiple_queues.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/dotp_multiple_queues.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // Tests a dotp operation split between 2 in-order queues using device USM. diff --git a/sycl/test-e2e/Graph/RecordReplay/dotp_usm_reduction.cpp b/sycl/test-e2e/Graph/RecordReplay/dotp_usm_reduction.cpp index 84b04b34da524..56c1f503f1f45 100644 --- a/sycl/test-e2e/Graph/RecordReplay/dotp_usm_reduction.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/dotp_usm_reduction.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // Skip as reduction support is not complete. // REQUIRES: NOT_YET_IMPLEMENTED diff --git a/sycl/test-e2e/Graph/RecordReplay/double_buffer.cpp b/sycl/test-e2e/Graph/RecordReplay/double_buffer.cpp index 9f673c8536b56..6b3f6f8d3f78c 100644 --- a/sycl/test-e2e/Graph/RecordReplay/double_buffer.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/double_buffer.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // Skip as executable graph update not yet implemented // REQUIRES: NOT_YET_IMPLEMENTED diff --git a/sycl/test-e2e/Graph/RecordReplay/empty_node.cpp b/sycl/test-e2e/Graph/RecordReplay/empty_node.cpp index fae2637a42557..70128db712f78 100644 --- a/sycl/test-e2e/Graph/RecordReplay/empty_node.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/empty_node.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_RECORD_REPLAY diff --git a/sycl/test-e2e/Graph/RecordReplay/event_status_querying.cpp b/sycl/test-e2e/Graph/RecordReplay/event_status_querying.cpp index 9a675c680d856..bd285332f9143 100644 --- a/sycl/test-e2e/Graph/RecordReplay/event_status_querying.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/event_status_querying.cpp @@ -1,5 +1,5 @@ // RUN: %{build} -o %t.out -// RUN: %if level_zero || cuda %{ %{run} %t.out 2>&1 | FileCheck %s %} %else %{ %{run} %t.out %} +// RUN: %if level_zero || cuda %{ %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} %else %{ %{run} %t.out %} // // CHECK: complete // diff --git a/sycl/test-e2e/Graph/RecordReplay/exception_inconsistent_contexts.cpp b/sycl/test-e2e/Graph/RecordReplay/exception_inconsistent_contexts.cpp index 5770ee8170058..af0b2bba477da 100644 --- a/sycl/test-e2e/Graph/RecordReplay/exception_inconsistent_contexts.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/exception_inconsistent_contexts.cpp @@ -1,5 +1,7 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 %{run} %t.out %} // // This test checks that an expection is thrown when we try to diff --git a/sycl/test-e2e/Graph/RecordReplay/executable_graph_update.cpp b/sycl/test-e2e/Graph/RecordReplay/executable_graph_update.cpp index c95c8794873b5..58e4875d3ce2d 100644 --- a/sycl/test-e2e/Graph/RecordReplay/executable_graph_update.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/executable_graph_update.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // Skip as executable graph update not implemented yet // REQUIRES: NOT_YET_IMPLEMENTED diff --git a/sycl/test-e2e/Graph/RecordReplay/executable_graph_update_ordering.cpp b/sycl/test-e2e/Graph/RecordReplay/executable_graph_update_ordering.cpp index bc918cfb0b837..b29d8459a0e2e 100644 --- a/sycl/test-e2e/Graph/RecordReplay/executable_graph_update_ordering.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/executable_graph_update_ordering.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // Skip as executable graph update and host tasks both aren't // implemented. diff --git a/sycl/test-e2e/Graph/RecordReplay/finalize_while_recording.cpp b/sycl/test-e2e/Graph/RecordReplay/finalize_while_recording.cpp index 08576246b861f..3d0191a6bca9e 100644 --- a/sycl/test-e2e/Graph/RecordReplay/finalize_while_recording.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/finalize_while_recording.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // Tests the ability to finalize a command graph while it is currently being // recorded to. diff --git a/sycl/test-e2e/Graph/RecordReplay/host_task.cpp b/sycl/test-e2e/Graph/RecordReplay/host_task.cpp index 8acf29f291c19..582a3fb3f14ff 100644 --- a/sycl/test-e2e/Graph/RecordReplay/host_task.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/host_task.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_RECORD_REPLAY diff --git a/sycl/test-e2e/Graph/RecordReplay/host_task2.cpp b/sycl/test-e2e/Graph/RecordReplay/host_task2.cpp index fca979babaa8b..f947a13ffd63d 100644 --- a/sycl/test-e2e/Graph/RecordReplay/host_task2.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/host_task2.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out -// Extra run to check for leaks in Level Zero -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_RECORD_REPLAY diff --git a/sycl/test-e2e/Graph/RecordReplay/host_task_in_order.cpp b/sycl/test-e2e/Graph/RecordReplay/host_task_in_order.cpp index 8a28941bb9ce0..e40fe3a0e963c 100644 --- a/sycl/test-e2e/Graph/RecordReplay/host_task_in_order.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/host_task_in_order.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out -// Extra run to check for leaks in Level Zero -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // This test uses a host_task when adding a command_graph node to an // in-order queue. diff --git a/sycl/test-e2e/Graph/RecordReplay/host_task_last.cpp b/sycl/test-e2e/Graph/RecordReplay/host_task_last.cpp index 66bad3b2191a4..c8dfa02c63ea7 100644 --- a/sycl/test-e2e/Graph/RecordReplay/host_task_last.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/host_task_last.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out -// Extra run to check for leaks in Level Zero -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_RECORD_REPLAY diff --git a/sycl/test-e2e/Graph/RecordReplay/host_task_multiple_deps.cpp b/sycl/test-e2e/Graph/RecordReplay/host_task_multiple_deps.cpp index edb6062320990..7e312df58d092 100644 --- a/sycl/test-e2e/Graph/RecordReplay/host_task_multiple_deps.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/host_task_multiple_deps.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out -// Extra run to check for leaks in Level Zero -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_RECORD_REPLAY diff --git a/sycl/test-e2e/Graph/RecordReplay/host_task_single.cpp b/sycl/test-e2e/Graph/RecordReplay/host_task_single.cpp index da88d7f040d6f..6d86cef96c862 100644 --- a/sycl/test-e2e/Graph/RecordReplay/host_task_single.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/host_task_single.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out -// Extra run to check for leaks in Level Zero -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_RECORD_REPLAY diff --git a/sycl/test-e2e/Graph/RecordReplay/host_task_successive.cpp b/sycl/test-e2e/Graph/RecordReplay/host_task_successive.cpp index 54b588ca41fa3..51da588ab9444 100644 --- a/sycl/test-e2e/Graph/RecordReplay/host_task_successive.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/host_task_successive.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out -// Extra run to check for leaks in Level Zero -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_RECORD_REPLAY diff --git a/sycl/test-e2e/Graph/RecordReplay/interop-level-zero-get-native-mem.cpp b/sycl/test-e2e/Graph/RecordReplay/interop-level-zero-get-native-mem.cpp index b479718f4fb62..c48efc619062e 100644 --- a/sycl/test-e2e/Graph/RecordReplay/interop-level-zero-get-native-mem.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/interop-level-zero-get-native-mem.cpp @@ -4,6 +4,8 @@ // UNSUPPORTED: ze_debug // RUN: %{build} %level_zero_options -o %t.out // RUN: %{run} %t.out +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 %{run} %t.out %} #define GRAPH_E2E_RECORD_REPLAY diff --git a/sycl/test-e2e/Graph/RecordReplay/kernel_bundle.cpp b/sycl/test-e2e/Graph/RecordReplay/kernel_bundle.cpp index 777d8ae3f82ea..790822cf46662 100644 --- a/sycl/test-e2e/Graph/RecordReplay/kernel_bundle.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/kernel_bundle.cpp @@ -1,6 +1,6 @@ // RUN: %{build} -o %t.out // RUN: %if cuda %{ %{run} %t.out %} -// RUN: %if level_zero %{env SYCL_PI_TRACE=2 %{run} %t.out | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_TRACE=2 %{run} %t.out | FileCheck %s --implicit-check-not=LEAK %} // Checks the PI call trace to ensure that the bundle kernel of the single task // is used. diff --git a/sycl/test-e2e/Graph/RecordReplay/multiple_exec_graphs.cpp b/sycl/test-e2e/Graph/RecordReplay/multiple_exec_graphs.cpp index 80fcb5a5e2737..67b5335de4383 100644 --- a/sycl/test-e2e/Graph/RecordReplay/multiple_exec_graphs.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/multiple_exec_graphs.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_RECORD_REPLAY diff --git a/sycl/test-e2e/Graph/RecordReplay/multiple_kernel_bundles.cpp b/sycl/test-e2e/Graph/RecordReplay/multiple_kernel_bundles.cpp index 499a797d53e2b..02fc3bfec9fa6 100644 --- a/sycl/test-e2e/Graph/RecordReplay/multiple_kernel_bundles.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/multiple_kernel_bundles.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_RECORD_REPLAY diff --git a/sycl/test-e2e/Graph/RecordReplay/queue_shortcuts.cpp b/sycl/test-e2e/Graph/RecordReplay/queue_shortcuts.cpp index 60aff6672d68c..99a28bd745853 100644 --- a/sycl/test-e2e/Graph/RecordReplay/queue_shortcuts.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/queue_shortcuts.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_RECORD_REPLAY diff --git a/sycl/test-e2e/Graph/RecordReplay/repeated_exec.cpp b/sycl/test-e2e/Graph/RecordReplay/repeated_exec.cpp index 86d8b20be8f7f..badf7293f49cb 100644 --- a/sycl/test-e2e/Graph/RecordReplay/repeated_exec.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/repeated_exec.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_RECORD_REPLAY diff --git a/sycl/test-e2e/Graph/RecordReplay/return_values.cpp b/sycl/test-e2e/Graph/RecordReplay/return_values.cpp index 7e47d7533a33e..5a88b28a15f91 100644 --- a/sycl/test-e2e/Graph/RecordReplay/return_values.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/return_values.cpp @@ -1,9 +1,8 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // Tests the return values from queue graph functions which change the // internal queue state. diff --git a/sycl/test-e2e/Graph/RecordReplay/spec_constants_handler_api.cpp b/sycl/test-e2e/Graph/RecordReplay/spec_constants_handler_api.cpp index 08740fae12052..c6b95bb744e6e 100644 --- a/sycl/test-e2e/Graph/RecordReplay/spec_constants_handler_api.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/spec_constants_handler_api.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // The following limitation is not restricted to Sycl-Graph // but comes from the orignal test : `SpecConstants/2020/handler-api.cpp` diff --git a/sycl/test-e2e/Graph/RecordReplay/spec_constants_kernel_bundle_api.cpp b/sycl/test-e2e/Graph/RecordReplay/spec_constants_kernel_bundle_api.cpp index cbf4ed221e0d2..7804bbc68d90a 100644 --- a/sycl/test-e2e/Graph/RecordReplay/spec_constants_kernel_bundle_api.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/spec_constants_kernel_bundle_api.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // The following limitation is not restricted to Sycl-Graph // but comes from the orignal test : `SpecConstants/2020/kernel-bundle-api.cpp` diff --git a/sycl/test-e2e/Graph/RecordReplay/stream.cpp b/sycl/test-e2e/Graph/RecordReplay/stream.cpp index 35253373b6c5b..d0cb7c493c75b 100644 --- a/sycl/test-e2e/Graph/RecordReplay/stream.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/stream.cpp @@ -1,8 +1,7 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out %GPU_CHECK_PLACEHOLDER -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out %GPU_CHECK_PLACEHOLDER 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out %GPU_CHECK_PLACEHOLDER 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // Skip as sycl::stream is not implemented yet // REQUIRES: NOT_YET_IMPLEMENTED diff --git a/sycl/test-e2e/Graph/RecordReplay/sub_graph.cpp b/sycl/test-e2e/Graph/RecordReplay/sub_graph.cpp index 8d7e8d9ae50db..2096a7c7a21f7 100644 --- a/sycl/test-e2e/Graph/RecordReplay/sub_graph.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/sub_graph.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_RECORD_REPLAY diff --git a/sycl/test-e2e/Graph/RecordReplay/sub_graph_execute_without_parent.cpp b/sycl/test-e2e/Graph/RecordReplay/sub_graph_execute_without_parent.cpp index 4a3780c440321..f1aeef51f1c31 100644 --- a/sycl/test-e2e/Graph/RecordReplay/sub_graph_execute_without_parent.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/sub_graph_execute_without_parent.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_RECORD_REPLAY diff --git a/sycl/test-e2e/Graph/RecordReplay/sub_graph_in_order.cpp b/sycl/test-e2e/Graph/RecordReplay/sub_graph_in_order.cpp index 6a9b539fd03b0..92635d3e60c34 100644 --- a/sycl/test-e2e/Graph/RecordReplay/sub_graph_in_order.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/sub_graph_in_order.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // Tests adding a sub-graph to an in-order queue. diff --git a/sycl/test-e2e/Graph/RecordReplay/sub_graph_multiple_submission.cpp b/sycl/test-e2e/Graph/RecordReplay/sub_graph_multiple_submission.cpp index d1e9c67c0c67b..d26f99a34c290 100644 --- a/sycl/test-e2e/Graph/RecordReplay/sub_graph_multiple_submission.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/sub_graph_multiple_submission.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_RECORD_REPLAY diff --git a/sycl/test-e2e/Graph/RecordReplay/sub_graph_nested.cpp b/sycl/test-e2e/Graph/RecordReplay/sub_graph_nested.cpp index bc1c62be79d59..f2b7ca35a77d7 100644 --- a/sycl/test-e2e/Graph/RecordReplay/sub_graph_nested.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/sub_graph_nested.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_RECORD_REPLAY diff --git a/sycl/test-e2e/Graph/RecordReplay/sub_graph_reduction.cpp b/sycl/test-e2e/Graph/RecordReplay/sub_graph_reduction.cpp index b01832a76f0bc..3d49833a4e4ea 100644 --- a/sycl/test-e2e/Graph/RecordReplay/sub_graph_reduction.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/sub_graph_reduction.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // Skip as reduction support is not complete. // REQUIRES: NOT_YET_IMPLEMENTED diff --git a/sycl/test-e2e/Graph/RecordReplay/sub_graph_two_parent_graphs.cpp b/sycl/test-e2e/Graph/RecordReplay/sub_graph_two_parent_graphs.cpp index a07e072b95fde..a1d0373290cc6 100644 --- a/sycl/test-e2e/Graph/RecordReplay/sub_graph_two_parent_graphs.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/sub_graph_two_parent_graphs.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_RECORD_REPLAY diff --git a/sycl/test-e2e/Graph/RecordReplay/sub_group_prop.cpp b/sycl/test-e2e/Graph/RecordReplay/sub_group_prop.cpp index ce1dcff74171a..b28523b0ff46d 100644 --- a/sycl/test-e2e/Graph/RecordReplay/sub_group_prop.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/sub_group_prop.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -fsycl-device-code-split=per_kernel -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_RECORD_REPLAY diff --git a/sycl/test-e2e/Graph/RecordReplay/temp_buffer.cpp b/sycl/test-e2e/Graph/RecordReplay/temp_buffer.cpp index 4411801b91c39..3008c226cec27 100644 --- a/sycl/test-e2e/Graph/RecordReplay/temp_buffer.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/temp_buffer.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // This test should be removed or modified as using buffers that don't exceed // the lifetime of the graph doesn't satisfy valid usage of the graphs diff --git a/sycl/test-e2e/Graph/RecordReplay/temp_buffer_reinterpret.cpp b/sycl/test-e2e/Graph/RecordReplay/temp_buffer_reinterpret.cpp index b0700ac8744fb..03a6ea16b3c66 100644 --- a/sycl/test-e2e/Graph/RecordReplay/temp_buffer_reinterpret.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/temp_buffer_reinterpret.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_RECORD_REPLAY diff --git a/sycl/test-e2e/Graph/RecordReplay/temp_scope.cpp b/sycl/test-e2e/Graph/RecordReplay/temp_scope.cpp index 01b67b4c083ad..5140cdbbd2ed1 100644 --- a/sycl/test-e2e/Graph/RecordReplay/temp_scope.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/temp_scope.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // Tests that a command-group function can capture variables by reference // and still work correctly as a graph node. diff --git a/sycl/test-e2e/Graph/RecordReplay/usm_copy.cpp b/sycl/test-e2e/Graph/RecordReplay/usm_copy.cpp index 9cdcff5ffb6cc..09486c4ebc8da 100644 --- a/sycl/test-e2e/Graph/RecordReplay/usm_copy.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/usm_copy.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // // USM copy command not supported for OpenCL // UNSUPPORTED: opencl diff --git a/sycl/test-e2e/Graph/RecordReplay/usm_copy_in_order.cpp b/sycl/test-e2e/Graph/RecordReplay/usm_copy_in_order.cpp index 4df6d97992767..6c47a3944c3f3 100644 --- a/sycl/test-e2e/Graph/RecordReplay/usm_copy_in_order.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/usm_copy_in_order.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // // USM copy command not supported for OpenCL // UNSUPPORTED: opencl diff --git a/sycl/test-e2e/Graph/RecordReplay/usm_fill.cpp b/sycl/test-e2e/Graph/RecordReplay/usm_fill.cpp index 38db19e8f6def..8e89ecc693ed7 100644 --- a/sycl/test-e2e/Graph/RecordReplay/usm_fill.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/usm_fill.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_RECORD_REPLAY diff --git a/sycl/test-e2e/Graph/RecordReplay/usm_fill_host.cpp b/sycl/test-e2e/Graph/RecordReplay/usm_fill_host.cpp index e57ac4198b64f..76ad8fbeef427 100644 --- a/sycl/test-e2e/Graph/RecordReplay/usm_fill_host.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/usm_fill_host.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_RECORD_REPLAY diff --git a/sycl/test-e2e/Graph/RecordReplay/usm_fill_shared.cpp b/sycl/test-e2e/Graph/RecordReplay/usm_fill_shared.cpp index 818266d5a7acc..401cdc7aa430f 100644 --- a/sycl/test-e2e/Graph/RecordReplay/usm_fill_shared.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/usm_fill_shared.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK #define GRAPH_E2E_RECORD_REPLAY diff --git a/sycl/test-e2e/Graph/RecordReplay/usm_memset.cpp b/sycl/test-e2e/Graph/RecordReplay/usm_memset.cpp index acbb0a502c67f..137b3df19cf02 100644 --- a/sycl/test-e2e/Graph/RecordReplay/usm_memset.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/usm_memset.cpp @@ -2,6 +2,8 @@ // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG // RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck --implicit-check-not=LEAK %s %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // USM memset command not supported for OpenCL // UNSUPPORTED: opencl diff --git a/sycl/test-e2e/Graph/RecordReplay/valid_no_end.cpp b/sycl/test-e2e/Graph/RecordReplay/valid_no_end.cpp index 3fee359256613..107c1f349cb46 100644 --- a/sycl/test-e2e/Graph/RecordReplay/valid_no_end.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/valid_no_end.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // Tests obtaining a finalized, executable graph from a graph which is // currently being recorded to without end_recording() being called. diff --git a/sycl/test-e2e/Graph/RecordReplay/work_group_size_prop.cpp b/sycl/test-e2e/Graph/RecordReplay/work_group_size_prop.cpp index 348de34dccbb4..5153aa387e863 100644 --- a/sycl/test-e2e/Graph/RecordReplay/work_group_size_prop.cpp +++ b/sycl/test-e2e/Graph/RecordReplay/work_group_size_prop.cpp @@ -1,9 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out // Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} // -// CHECK-NOT: LEAK // Temporarily disabled for CUDA and OpenCL // The OpenCL emulation layer does not return `CL_INVALID_WORK_GROUP_SIZE` as it diff --git a/sycl/test-e2e/Graph/empty_graph.cpp b/sycl/test-e2e/Graph/empty_graph.cpp index eae37bae5a729..ff4984603d908 100644 --- a/sycl/test-e2e/Graph/empty_graph.cpp +++ b/sycl/test-e2e/Graph/empty_graph.cpp @@ -1,5 +1,10 @@ // RUN: %{build} -o %t.out // RUN: %{run} %t.out +// Extra run to check for leaks in Level Zero using UR_L0_LEAKS_DEBUG +// RUN: %if level_zero %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=0 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// Extra run to check for immediate-command-list in Level Zero +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s --implicit-check-not=LEAK %} +// // Tests the ability to finalize and submit a command graph which doesn't // contain any nodes. @@ -7,7 +12,7 @@ #include "graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/finalize_twice.cpp b/sycl/test-e2e/Graph/finalize_twice.cpp index 9ac7f3cab6339..1c51f13e75479 100644 --- a/sycl/test-e2e/Graph/finalize_twice.cpp +++ b/sycl/test-e2e/Graph/finalize_twice.cpp @@ -6,7 +6,7 @@ #include "graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/immediate_command_list_error.cpp b/sycl/test-e2e/Graph/immediate_command_list_error.cpp deleted file mode 100644 index 7d96b6a87fe00..0000000000000 --- a/sycl/test-e2e/Graph/immediate_command_list_error.cpp +++ /dev/null @@ -1,51 +0,0 @@ -// REQUIRES: level_zero, gpu -// RUN: %{build} -o %t.out -// RUN: %{run} %t.out -// RUN: %if level_zero %{env UR_L0_LEAKS_DEBUG=1 %{run} %t.out 2>&1 | FileCheck %s %} -// -// CHECK-NOT: LEAK - -// Tests that graph submission will throw if the target queue is using immediate -// command lists and not throw if they are using regular command queues. - -#include "graph_common.hpp" - -int main() { - queue QueueImmediate{ - {sycl::ext::intel::property::queue::immediate_command_list{}}}; - queue QueueNoImmediate{ - QueueImmediate.get_context(), - QueueImmediate.get_device(), - {sycl::ext::intel::property::queue::no_immediate_command_list{}}}; - - if (!are_graphs_supported(QueueNoImmediate)) { - return 0; - } - - exp_ext::command_graph Graph{QueueNoImmediate.get_context(), - QueueNoImmediate.get_device()}; - - std::error_code ErrorCode = make_error_code(sycl::errc::success); - try { - auto GraphExec = Graph.finalize(); - QueueNoImmediate.submit( - [&](handler &CGH) { CGH.ext_oneapi_graph(GraphExec); }); - } catch (sycl::exception &E) { - ErrorCode = E.code(); - } - - assert(ErrorCode == make_error_code(errc::success)); - - ErrorCode = make_error_code(sycl::errc::success); - try { - auto GraphExec = Graph.finalize(); - QueueImmediate.submit( - [&](handler &CGH) { CGH.ext_oneapi_graph(GraphExec); }); - } catch (sycl::exception &E) { - ErrorCode = E.code(); - } - - assert(ErrorCode == make_error_code(errc::invalid)); - - return 0; -} diff --git a/sycl/test-e2e/Graph/invalid_depends_on.cpp b/sycl/test-e2e/Graph/invalid_depends_on.cpp index 9caf5494a96a7..04e2d331e438e 100644 --- a/sycl/test-e2e/Graph/invalid_depends_on.cpp +++ b/sycl/test-e2e/Graph/invalid_depends_on.cpp @@ -7,7 +7,7 @@ #include "graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/invalid_event_wait.cpp b/sycl/test-e2e/Graph/invalid_event_wait.cpp index 173374c08dc15..da48cb65575ad 100644 --- a/sycl/test-e2e/Graph/invalid_event_wait.cpp +++ b/sycl/test-e2e/Graph/invalid_event_wait.cpp @@ -7,7 +7,7 @@ #include "graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/Graph/invalid_queue_wait.cpp b/sycl/test-e2e/Graph/invalid_queue_wait.cpp index 2653b8fe3eb10..64295706c1a53 100644 --- a/sycl/test-e2e/Graph/invalid_queue_wait.cpp +++ b/sycl/test-e2e/Graph/invalid_queue_wait.cpp @@ -6,7 +6,7 @@ #include "graph_common.hpp" int main() { - queue Queue{{sycl::ext::intel::property::queue::no_immediate_command_list{}}}; + queue Queue{}; if (!are_graphs_supported(Queue)) { return 0; diff --git a/sycl/test-e2e/USM/queue_copy.cpp b/sycl/test-e2e/USM/queue_copy.cpp new file mode 100644 index 0000000000000..cf22e99a7b0a6 --- /dev/null +++ b/sycl/test-e2e/USM/queue_copy.cpp @@ -0,0 +1,48 @@ +// RUN: %{build} -o %t.out +// RUN: %{run} %t.out +// RUN: %if level_zero && linux %{env SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1 %{run} %t.out %} +// + +#include +#include + +#include +#include + +using namespace sycl; + +// This test checks that queue USM functions are properly waited +// when using immediate queue + +int main() { + + const size_t Size = 1024; + queue Queue{}; + device Dev = Queue.get_device(); + + if (!(Dev.get_info())) + return 0; + + using T = int; + std::vector DataA(Size), DataB(Size); + + std::iota(DataA.begin(), DataA.end(), 1); + std::iota(DataB.begin(), DataB.end(), 10); + + T *Ptr = malloc_device(Size, Queue); + + Queue.copy(DataA.data(), Ptr, Size); + Queue.wait_and_throw(); + + Queue.copy(Ptr, DataB.data(), Size); + Queue.wait_and_throw(); + + free(Ptr, Queue); + + for (size_t i = 0; i < Size; i++) { + assert(DataA[i] == DataB[i]); + } + + std::cout << "Passed\n"; + return 0; +}