Hello,
I download the latest release of the source code of the Binary Radio Pulsar app from this site and I am trying to compile the linux-cuda application.
I receive the following error:g++: error: demod_binary_cuda.cu.cpp: No such file or directory
I search for this file in the src/cuda/app directory with no luck.
Is there a git repository for the sources of the cuda application I can clone to retrieve the specific file ?
Copyright © 2024 Einstein@Home. All rights reserved.
Compile of Binary Radio Pulsar app (linux-cuda)
)
This is not a source file but an intermediate file produced by the NVIDIA SDK toolchain. The reason why you get this error is probably because you are using a more recent version of the SDK than we do for the official apps (for compatibility with old drivers). In newer version of the SDK, those intermediate files are named *.cu.cpp.ii instead of *.cu.cpp . If you edit the Makefile for your target platform accordingly, this might work ("might" because newer SDKs may introduce other changes as well. Especially the cross-compilation for Windows under Linux will be affected by changes in the most recent SDK.)
Cheers
HBE
Thank you for your help. I
)
Thank you for your help.
I managed to build brp cuda app successfully after some changes in the linux-cuda makefile and C sources (compatibility issues).
I noticed that there are no test data for the cuda application in the zip file to run the profile target of the build.sh script. The profile target needs the files : "templates_400Hz_2_short.bank", "zaplist_232.txt" and "J1907+0740_dm_482.binary" to run.
I find these files from an old attempt to build EaH application (with eah_build.sh script) and when I am trying to run the profile target on the brp cuda app I get the following error (in the stderr.txt file):
I am running the cuda app in 2 PCs with Gentoo AMD64 (cuda sdk 5.0.35) in which the current brp cuda app is running without problems through the boinc platform.
Is there a compatibility issue with the cuda sdk 5.0 ?
Hi, I managed to run the
)
Hi,
I managed to run the brp cuda app by adding the missing -D flag (selection of the CUDA Device).
Now, when I am running with the test data I am getting an error from the creation of the FFT cuda plan (error code: 4). With the help of Nemiver I found that the problem is on line 837 of the demod_binary_cuda.cu file:
cufResult = cufftPlan1d(&cufPlan, nsamples, CUFFT_R2C, 1);
The above cuda function returns CUFFT_INVALID_VALUE when I use the cuda libraries (libcufft.so.3, libcudart.so.3) from the release zip file.
I run the application with the libraries from the CUDA-SDK 5.0.35 and the same function (cufftPlan1d) crashes with "abnormal program termination" (Application caught signal 6).
Is it possible these problems are related to the test data ?
Is there any other test data for the brp cuda app ?
Thanks,
Hi It's difficult to debug
)
Hi
It's difficult to debug this remotely without seeing the changes that were done to the build script, but if you want to use CUDA 5.0 , you need to make sure that both the header files that come with the SDK (e.g. for libcufft) and the binary library files (*.so*) are all from version 5.0. You cannot expect the program to run with 3.x libs when the source is compiled against 5.0 header files.
So yes, it should work with the CUDA 5.0 SDK supplied libraries for runtime and cuFFT, I'm at a loss why it doesn't do so. Make sure that you remove/change every reference to CUDA 3.2 from the Makefile (e.g. do not link against the libs in the source/cuda/redist/*/3.2/lib/ directory, and make sure headers are read from the SDK 5.0 header dirs.
Cheers
HBE