PLSSVM - Parallel Least Squares Support Vector Machine  2.0.0
A Least Squares Support Vector Machine implementation using different backends.
utility.hpp
Go to the documentation of this file.
1 
12 #ifndef PLSSVM_BACKENDS_SYCL_DPCPP_DETAIL_UTILITY_HPP_
13 #define PLSSVM_BACKENDS_SYCL_DPCPP_DETAIL_UTILITY_HPP_
14 #pragma once
15 
16 #include "plssvm/backends/SYCL/DPCPP/detail/queue.hpp" // plssvm::dpcpp::detail::queue (PImpl)
17 #include "plssvm/target_platforms.hpp" // plssvm::target_platform
18 
19 #include <utility> // std::pair
20 #include <vector> // std::vector
21 
22 namespace plssvm::dpcpp::detail {
23 
36 [[nodiscard]] std::pair<std::vector<queue>, target_platform> get_device_list(target_platform target);
37 
42 void device_synchronize(const queue &q);
43 
49 [[nodiscard]] queue get_default_queue();
50 
51 } // namespace plssvm::dpcpp::detail
52 
53 #endif // PLSSVM_BACKENDS_SYCL_DPCPP_DETAIL_UTILITY_HPP_
PImpl class used to hide the "sycl/sycl.hpp" header from the public interface.
PImpl class to hide the SYCL queue class from the public interface (and, therefore,...
Definition: queue.hpp:23
Namespace containing the C-SVM using the SYCL backend with DPC++ as SYCL implementation....
Definition: device_ptr.hpp:19
std::pair< std::vector< queue >, target_platform > get_device_list(target_platform target)
Returns the list devices matching the target platform target and the actually used target platform (o...
void device_synchronize(const queue &q)
Wait for the compute device associated with q to finish.
queue get_default_queue()
Get the default SYCL queue.
target_platform
Enum class for all possible targets.
Definition: target_platforms.hpp:25
Defines an enumeration holding all possible target platforms. Can also include targets not available ...