Block-Structured AMR Software Framework
Loading...
Searching...
No Matches
AMReX_GpuPrint.H
Go to the documentation of this file.
1#ifndef AMREX_GPU_PRINT_H_
2#define AMREX_GPU_PRINT_H_
3#include <AMReX_Config.H>
4
5#include <cstdio>
6
7#ifdef AMREX_USE_SYCL
8# include <sycl/sycl.hpp>
9#endif
10
11#if defined(AMREX_USE_SYCL)
12# define AMREX_DEVICE_PRINTF(...) \
13 sycl::ext::oneapi::experimental::printf(__VA_ARGS__);
14#elif defined(AMREX_USE_CUDA)
15# define AMREX_DEVICE_PRINTF(...) std::printf(__VA_ARGS__);
16#elif defined(AMREX_USE_HIP)
17# define AMREX_DEVICE_PRINTF(...) ::printf(__VA_ARGS__);
18#else
19# define AMREX_DEVICE_PRINTF(...) std::printf(__VA_ARGS__);
20#endif
21
22#endif // AMREX_GPU_PRINT_H_