From b62cb0a168867aaab9e6160bfbf793fa8fb9d767 Mon Sep 17 00:00:00 2001 From: Berenger Bramas <Berenger.Bramas@inria.fr> Date: Wed, 25 Mar 2015 11:39:25 +0100 Subject: [PATCH] Update opencl --- Src/GroupTree/TestKernel/FTestOpenCLCode.hpp | 8 +++++++- Tests/noDist/testBlockedWithOpenCLAlgorithm.cpp | 2 +- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/Src/GroupTree/TestKernel/FTestOpenCLCode.hpp b/Src/GroupTree/TestKernel/FTestOpenCLCode.hpp index 743cd3c9b..4bc796aa1 100644 --- a/Src/GroupTree/TestKernel/FTestOpenCLCode.hpp +++ b/Src/GroupTree/TestKernel/FTestOpenCLCode.hpp @@ -7,6 +7,7 @@ #include "../OpenCl/FTextReplacer.hpp" // Initialize the types +template <class FReal> class FTestOpenCLCode{ FTextReplacer kernelfile; size_t dim; @@ -14,7 +15,12 @@ class FTestOpenCLCode{ public: //FTestOpenCLCode() : kernelfile("/home/berenger/Projets/ScalfmmGit/scalfmm/Src/GroupTree/OpenCl/FEmptyKernel.cl"){ FTestOpenCLCode() : kernelfile("/home/berenger/Projets/ScalfmmGit/scalfmm/Src/GroupTree/TestKernel/FTestKernel.cl"){ - kernelfile.replaceAll("___FReal___", "double"); + if(sizeof(FReal) == sizeof(double)){ + kernelfile.replaceAll("___FReal___", "double"); + } + else{ + kernelfile.replaceAll("___FReal___", "float"); + } kernelfile.replaceAll("___FParticleValueClass___", "long long"); kernelfile.replaceAll("___NbSymbAttributes___", 0); kernelfile.replaceAll("___NbAttributesPerParticle___", 1); diff --git a/Tests/noDist/testBlockedWithOpenCLAlgorithm.cpp b/Tests/noDist/testBlockedWithOpenCLAlgorithm.cpp index ec137f494..c3ce53e0b 100644 --- a/Tests/noDist/testBlockedWithOpenCLAlgorithm.cpp +++ b/Tests/noDist/testBlockedWithOpenCLAlgorithm.cpp @@ -79,7 +79,7 @@ int main(int argc, char* argv[]){ #ifdef ScalFMM_ENABLE_CUDA_KERNEL , FStarPUCudaWrapper<KernelClass, FCudaEmptyCell, FCudaGroupOfCells<FCudaEmptyCell>, FCudaGroupOfParticles<0, int>, FCudaGroupAttachedLeaf<0, int>, FCudaEmptyKernel<>> #endif - , FStarPUOpenClWrapper<GroupKernelClass, FOpenCLDeviceWrapper<GroupKernelClass, FTestOpenCLCode> > + , FStarPUOpenClWrapper<GroupKernelClass, FOpenCLDeviceWrapper<GroupKernelClass, FTestOpenCLCode<FReal> > > > GroupAlgorithm; typedef FTestCell CellClass; -- GitLab