summaryrefslogtreecommitdiff
path: root/cuda
AgeCommit message (Collapse)Author
2022-07-26Half-precision back-/forward-projection for parallel geometryhalfSuren A. Chilingaryan
2021-12-06Add transferConstants functions for FP kernels for consistencyWillem Jan Palenstijn
2021-12-02Fix potential invalid memory access in par3d_fp with many anglesWillem Jan Palenstijn
2021-12-01Handle angular range discretisation betterWillem Jan Palenstijn
2021-12-01Adjust Parker weights to angular rangeWillem Jan Palenstijn
This fixes a global scaling in shortscan reconstruction. Also add some debugging logs for the Parker weighting and a warning if the angular range is too small. Issue #229
2021-11-26Fix memleak in error handlingWillem Jan Palenstijn
2021-11-26De-duplicate 2D texture object creationWillem Jan Palenstijn
2021-11-26Replace texref by texobj in par_bpWillem Jan Palenstijn
2021-11-26Replace texref by texobj in fan_bpWillem Jan Palenstijn
2021-11-26De-duplicate 3D texture object creationWillem Jan Palenstijn
2021-11-26Replace texref by texobj in cone_bpWillem Jan Palenstijn
2021-11-26Replace texref by texobj in par3d_bpWillem Jan Palenstijn
2021-11-26Replace texref by texobj in cone_fpWillem Jan Palenstijn
2021-11-26Replace texref by texobj in par3d_fpWillem Jan Palenstijn
2021-11-26Replace texref by texobj in fan_fpWillem Jan Palenstijn
2021-11-26Replace texref by texobj in par_fpWillem Jan Palenstijn
2021-11-17Fix (harmless) duplicationWillem Jan Palenstijn
2021-11-17Switch cuda memhandle checks to checkCudaWillem Jan Palenstijn
2021-11-16Fix non-padded GPULink memory handling in FP3D kernelsWillem Jan Palenstijn
This would fail silently if the output projection data object was not padded to a multiple of 32 pixels, potentially corrupting the start of projection rows. 3D GPU memory allocated by ASTRA itself is always padded by cudaMalloc3D and therefore not affected. GPULink allows bypassing this, possibly triggering this bug.
2021-11-16Remove fft.cu custom cuda error handling macrosWillem Jan Palenstijn
2021-11-16Remove unnecessary costly syncs in FFTWillem Jan Palenstijn
2021-11-16Add missing synchronize before free in FFTWillem Jan Palenstijn
2021-11-16Add checkCufft functionWillem Jan Palenstijn
2021-11-16Remove cudaTextForceKernelsCompletionWillem Jan Palenstijn
2021-11-16Remove ASTRA_CUDA_ASSERTWillem Jan Palenstijn
2021-11-16Remove reportCudaError functionWillem Jan Palenstijn
2021-11-16Add new checkCuda function to simplify error handlingWillem Jan Palenstijn
2021-11-16Add specialization to BP3D kernels for single slice volumesWillem Jan Palenstijn
2021-10-27Update copyright yearsWillem Jan Palenstijn
2021-01-27Fix memory leak in CUDA 2D fan_bpFerdia Sherry
2021-01-22Fix supersampling version of cone_bp and add testWillem Jan Palenstijn
2020-09-11Fix memory leak in CUDA 2D par_fpFerdia
Arrays were dynamically allocated in the function convertAndUploadAngles, but were not deallocated, resulting in a memory leak. At the end of this function I now delete [] these arrays, fixing the memory leak.
2020-02-05Fix potential geometry constant corruption in par3d_bpWillem Jan Palenstijn
2020-02-05Fix memory leaks in 3D BPWillem Jan Palenstijn
2019-09-25Add noteWillem Jan Palenstijn
2019-09-25Remove unmaintained, out of date 'STANDALONE' cuda codeWillem Jan Palenstijn
2019-09-25Adjust par3d adjoint scaling, and clean upWillem Jan Palenstijn
2019-09-25Fix part of non-cube cone scalingWillem Jan Palenstijn
2019-09-25Small clean up of factorsWillem Jan Palenstijn
2019-09-25Remove obsolete DensityWeighting optionWillem Jan Palenstijn
2019-09-25Improve adjoint matching for fan/cone BP functions, and clean upWillem Jan Palenstijn
2019-09-25Fix fan-beam FBP scalingWillem Jan Palenstijn
2019-09-25Adjust SART to line integral scalingWillem Jan Palenstijn
2019-09-25Clean up outputscale naming confusion in cuda::algoWillem Jan Palenstijn
2019-09-25Adjust FBP to line integral scalingWillem Jan Palenstijn
2019-09-25Adjust adjoint to line integral scalingWillem Jan Palenstijn
2019-09-25Adjust linear/cuda kernels to line integral scalingWillem Jan Palenstijn
2019-08-14Replace signal-based abort handling by query-based handlingWillem Jan Palenstijn
The abort handling is currently only used to process Ctrl-C from Matlab. Since Matlab R2019a, it appears that calling utIsInterruptPending() from a thread other than the main thread will crash. The previous approach of checking utIsInterruptPending() in a thread, and then signalling the running algorithm was therefore broken.
2018-11-01Add minimal GPU Array interfaceWillem Jan Palenstijn
This extension (only) allows creating a CUDA 3D array, copying projection data into it, performing a BP from the array, and freeing the array.
2018-07-17Reorganize more filter size functionsWillem Jan Palenstijn