CPPuddle
Loading...
Searching...
No Matches
sycl_recycling_allocators.hpp
Go to the documentation of this file.
1// Copyright (c) 2020-2024 Gregor Daiß
2//
3// Distributed under the Boost Software License, Version 1.0. (See accompanying
4// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
5
6#ifndef SYCL_RECYCLING_ALLOCATORS_HPP
7#define SYCL_RECYCLING_ALLOCATORS_HPP
8
11
15
16namespace cppuddle {
17namespace memory_recycling {
18
19namespace device_selection {
20// No MutliGPU support yet, hence no select_device_function required
21static_assert(max_number_gpus <= 1, "CPPuddle currently does not support MultiGPU SYCL builds!");
22} // namespace device_selection
23
25template <typename T, std::enable_if_t<std::is_trivial<T>::value, int> = 0>
29template <typename T, std::enable_if_t<std::is_trivial<T>::value, int> = 0>
32
33} // namespace memory_recycling
34} // end namespace cppuddle
35#endif
Definition aligned_recycling_allocators.hpp:19
CPPuddle namespace containing the memory recycling functionality.
Definition aligned_recycling_allocators.hpp:17
detail::aggressive_recycle_allocator< T, detail::sycl_host_default_allocator< T > > recycle_allocator_sycl_host
Recycling allocator for SYCL pinned host memory (default device).
Definition sycl_recycling_allocators.hpp:26
detail::recycle_allocator< T, detail::sycl_device_default_allocator< T > > recycle_allocator_sycl_device
Recycling allocator for SYCL device memory (default device).
Definition sycl_recycling_allocators.hpp:30
Definition config.hpp:31
constexpr size_t max_number_gpus
Definition config.hpp:52
Recycles not only allocations but also the contents of a buffer.
Definition buffer_management.hpp:865
Definition buffer_management.hpp:795