X-Git-Url: https://cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fplugins%2Fnbodycuda%2Fnbodycuda.cu;fp=cinelerra-5.1%2Fplugins%2Fnbodycuda%2Fnbodycuda.cu;h=b82c79fd6f0237851c80568ceccd9e887ac3bebf;hb=b1649fe7b38cfb4bbec58b19fb8dda2daa0ce520;hp=0000000000000000000000000000000000000000;hpb=abf5c6bb4dec2c2d03df2872e1d337e3905b3619;p=goodguy%2Fcinelerra.git diff --git a/cinelerra-5.1/plugins/nbodycuda/nbodycuda.cu b/cinelerra-5.1/plugins/nbodycuda/nbodycuda.cu new file mode 100644 index 00000000..b82c79fd --- /dev/null +++ b/cinelerra-5.1/plugins/nbodycuda/nbodycuda.cu @@ -0,0 +1,35 @@ +#include +#include +#include "helper_cuda.h" +#include "helper_gl.h" + +#include "nbodycuda.h" + +void N_BodyCuda::init() +{ + checkCudaErrors(cudaEventCreate(&startEvent)); + checkCudaErrors(cudaEventCreate(&stopEvent)); + checkCudaErrors(cudaEventCreate(&hostMemSyncEvent)); +} + +void N_BodyCuda::init_dev() +{ +// int dev_id = findCudaDevice(argc, (const char **)argv); + int dev_id = gpuGetMaxGflopsDeviceId(); + checkCudaErrors(cudaSetDevice(dev_id)); + cudaDeviceProp deviceProp; + checkCudaErrors(cudaGetDeviceProperties(&deviceProp, dev_id)); +printf("GPU Device %d: \"%s\" with compute capability %d.%d\n", + dev_id, deviceProp.name, deviceProp.major, deviceProp.minor); + version = deviceProp.major * 10 + deviceProp.minor; + numSMs = deviceProp.multiProcessorCount; +} + + +void N_BodyCuda::finish() +{ + checkCudaErrors(cudaEventDestroy(startEvent)); + checkCudaErrors(cudaEventDestroy(stopEvent)); + checkCudaErrors(cudaEventDestroy(hostMemSyncEvent)); +} +