DPC++ Runtime
Runtime libraries for oneAPI DPC++
fusion_wrapper_impl.hpp
Go to the documentation of this file.
1 //==-- fusion_wrapper_impl.hpp - SYCL wrapper for queue for kernel fusion --==//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 
9 #pragma once
10 
11 #include <detail/queue_impl.hpp>
12 
13 namespace sycl {
14 inline namespace _V1 {
15 namespace detail {
17 public:
18  explicit fusion_wrapper_impl(std::shared_ptr<detail::queue_impl> Queue);
19 
20  std::shared_ptr<detail::queue_impl> get_queue() const;
21 
22  bool is_in_fusion_mode() const;
23 
24  void start_fusion();
25 
26  void cancel_fusion();
27 
28  event complete_fusion(const property_list &propList = {});
29 
30 private:
31  std::shared_ptr<detail::queue_impl> MQueue;
32 };
33 } // namespace detail
34 } // namespace _V1
35 } // namespace sycl
event complete_fusion(const property_list &propList={})
fusion_wrapper_impl(std::shared_ptr< detail::queue_impl > Queue)
std::shared_ptr< detail::queue_impl > get_queue() const
Objects of the property_list class are containers for the SYCL properties.
Definition: access.hpp:18