opencl_fft.h 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. #ifndef OPENCL_FFT_H
  2. #define OPENCL_FFT_H
  3. #include <CL/cl.h>
  4. #ifdef HAVE_AMD_FFT
  5. #include <clFFT.h>
  6. #endif
  7. #ifdef HAVE_APPLE_FFT
  8. #include <oclfft/clFFT.h>
  9. #endif
  10. #include "utilities.h"
  11. typedef bool (*OclBenchmarkFunc) (cl_context context, cl_command_queue queue,
  12. cl_mem dev_mem, cl_mem dev_out_mem,
  13. int n_dims, size_t *dims, int n_runs, Timer *timer);
  14. double sum_of_absolute_differences (float *a, float *b, int n, bool scale);
  15. void loop_data_opencl (const char *vendor,
  16. OclBenchmarkFunc func,
  17. cl_context context,
  18. cl_command_queue *queues,
  19. int n_devices,
  20. OutputType outputType,
  21. TimeEntry *time_entries);
  22. bool compute_amd_fft (cl_context context,
  23. cl_command_queue queue,
  24. cl_mem dev_mem,
  25. cl_mem out_mem,
  26. int n_dims,
  27. size_t *dims,
  28. int n_runs,
  29. Timer *timer);
  30. bool compute_apple_fft (cl_context context,
  31. cl_command_queue queue,
  32. cl_mem dev_mem,
  33. cl_mem out_mem,
  34. int n_dims,
  35. size_t *dims,
  36. int n_runs,
  37. Timer *timer);
  38. #endif