| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 | /* * This file is part of the StarPU Handbook. * Copyright (C) 2009--2011  Universit@'e de Bordeaux * Copyright (C) 2010, 2011, 2012, 2013  Centre National de la Recherche Scientifique * Copyright (C) 2011, 2012 Institut National de Recherche en Informatique et Automatique * See the file version.doxy for copying conditions. *//*! \defgroup API_FFT_Support FFT Support\fn void * starpufft_malloc(size_t n)\ingroup API_FFT_SupportAllocates memory for \p n bytes. This is preferred over malloc(),since it allocates pinned memory, which allows overlapped transfers.\fn void * starpufft_free(void *p)\ingroup API_FFT_SupportRelease memory previously allocated.\fn struct starpufft_plan * starpufft_plan_dft_1d(int n, int sign, unsigned flags)\ingroup API_FFT_SupportInitializes a plan for 1D FFT of size \p n. \p sign can be STARPUFFT_FORWARDor STARPUFFT_INVERSE. \p flags must be 0.\fn struct starpufft_plan * starpufft_plan_dft_2d(int n, int m, int sign, unsigned flags)\ingroup API_FFT_SupportInitializes a plan for 2D FFT of size (\p n, \p m). \p sign can beSTARPUFFT_FORWARD or STARPUFFT_INVERSE. flags must be \p 0.\fn struct starpu_task * starpufft_start(starpufft_plan p, void *in, void *out)\ingroup API_FFT_SupportStart an FFT previously planned as \p p, using \p in and \p out asinput and output. This only submits the task and does not wait for it.The application should call starpufft_cleanup() to unregister the\fn struct starpu_task * starpufft_start_handle(starpufft_plan p, starpu_data_handle_t in, starpu_data_handle_t out)\ingroup API_FFT_SupportStart an FFT previously planned as \p p, using data handles \p in and\p out as input and output (assumed to be vectors of elements of theexpected types). This only submits the task and does not wait for it.\fn void starpufft_execute(starpufft_plan p, void *in, void *out)\ingroup API_FFT_SupportExecute an FFT previously planned as \p p, using \p in and \p out asinput and output. This submits and waits for the task.\fn void starpufft_execute_handle(starpufft_plan p, starpu_data_handle_t in, starpu_data_handle_t out)\ingroup API_FFT_SupportExecute an FFT previously planned as \p p, using data handles \p inand \p out as input and output (assumed to be vectors of elements ofthe expected types). This submits and waits for the task.\fn void starpufft_cleanup(starpufft_plan p)\ingroup API_FFT_SupportReleases data for plan \p p, in the starpufft_start() case.\fn void starpufft_destroy_plan(starpufft_plan p)\ingroup API_FFT_SupportDestroys plan \p p, i.e. release all CPU (fftw) and GPU (cufft)resources.*/
 |