![]() |
Sorry, thought I was responding to my own post, so it would be obvious ...
There's something about this forum that's not organized the way I'm used to from other forums.
Makes it hard to keep related posts together. "I've downloaded an executable (CUDALucas) that I know other people are running under Linux. Typing ./filename gives me the error message "No such file or directory". ls -l clearly show the file is there, belongs to me, and I have permission to read,write, and execute. I get the same error in Lubuntu ! How can a file which is so obviously "there" not be there ??" Note that I've already got mfaktc up and running on two different systems, so I've had some experience with NVidia drivers and CUDA libs at this point, and I'm starting to doubt whether it has anything to do with finding the linked files. Here's a summary: [url]http://www.mersenneforum.org/showthread.php?p=396570#post396570[/url] I've tried running in sh, bsh, bash, csh, tcsh, none of which helps. file(1) returns ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, .... not stripped. Hope the ... isn't important stuff. I'm running it on another computer, using this one for browser only. It's not like I'm getting any usable error messages at all. And the instructions at Source Forge are pretty minimalist -- dl the files, change one env variable. Didn't work, now what ? |
Numerous people have run into that issue, myself included. It seems to happy with Ubuntu and derivatives. If you're already on Linux, it should be simple enough to recompile it. Note that TheJudger has found a bug in CUDA 7.x that is not fixed, so you should compiling it using an earlier version.
|
UNIX (including Linux) can produce rather misleading error messages. The program you are trying to run is probably calling some other file which it can't find, putting out that message and terminating. Of course it [B]should[/B] also say what it's trying to call, but the programmer writing the relevant code has to make it do that.
Try "strace ./CUDALucas" which should trace all the system calls CUDALucas makes with parameters passed to them. You may get quite a lot of output, but hopefully one line will tell you what file it's trying to call. Read the man page for strace to help understand the output. Chris |
[QUOTE=Mark Rose;405795]Numerous people have run into that issue, myself included. It seems to happy with Ubuntu and derivatives. If you're already on Linux, it should be simple enough to recompile it. Note that TheJudger has found a bug in CUDA 7.x that is not fixed, so you should compiling it using an earlier version.[/QUOTE]
Thanks, I sure wish I had known that earlier ! You''d think they'd update the instructions ... I've dl'ed the source, will try compiling later. I was reluctant to try that because I've never done a compilation outside of an IDE -- now it sounds like it would have been easier to go straight for the compile, instead of wasting so much time trying to figure out how to get the binaries to work. SHN |
Not sure that helps much ...
[CODE]
shn@C2D ~/Desktop/CUDALucas $ strace ./CUDALucas execve("./CUDALucas", ["./CUDALucas"], [/* 46 vars */]) = -1 ENOENT (No such file or directory) write(2, "strace: exec: No such file or di"..., 40strace: exec: No such file or directory ) = 40 exit_group(1) = ? +++ exited with 1 +++ [/CODE] [CODE]shn@C2D ~/Desktop/CUDALucas/other_versions $ strace CUDALucas-2.05.1-CUDA4.2-linux-x86_64 strace: Can't stat 'CUDALucas-2.05.1-CUDA4.2-linux-x86_64': No such file or directory [/CODE][QUOTE=chris2be8;405799]UNIX (including Linux) can produce rather misleading error messages. The program you are trying to run is probably calling some other file which it can't find, putting out that message and terminating. Of course it [B]should[/B] also say what it's trying to call, but the programmer writing the relevant code has to make it do that. Try "strace ./CUDALucas" which should trace all the system calls CUDALucas makes with parameters passed to them. You may get quite a lot of output, but hopefully one line will tell you what file it's trying to call. Read the man page for strace to help understand the output. Chris[/QUOTE] |
This may be part of the problem ...
[CODE] ~/Desktop/CUDALucas $ ldd runll linux-vdso.so.1 => (0x00007fffd8d9c000) libcufft.so.4 => /home/shn/CUDAlibs/libcufft.so.4 (0x00007fc31dca7000) libcudart.so.4 => /home/shn/CUDAlibs/libcudart.so.4 (0x00007fc31da49000) libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fc31d742000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fc31d37d000) libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fc31d179000) libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fc31cf5a000) [B] libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007fc31cc56000)[/B] libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fc31ca40000) librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007fc31c837000) /lib/ld-linux-x86-64.so.2 => /lib64/ld-linux-x86-64.so.2 (0x00007fc31fced000) [/CODE]The file in bold cannot be found. |
[QUOTE=Mark Rose;405795]Note that TheJudger has found a bug in CUDA 7.x that is not fixed, so you should compiling it using an earlier version.[/QUOTE]
That doesn't affect CUDALucas. Compiling with CUDA 7.x is fine. Just don't compile mfaktc with CUDA 7.x. |
[QUOTE=frmky;405816]That doesn't affect CUDALucas. Compiling with CUDA 7.x is fine. Just don't compile mfaktc with CUDA 7.x.[/QUOTE]
Good to know. :) |
[QUOTE=MacFactor;405806][CODE]
shn@C2D ~/Desktop/CUDALucas $ strace ./CUDALucas execve("./CUDALucas", ["./CUDALucas"], [/* 46 vars */]) = -1 ENOENT (No such file or directory) write(2, "strace: exec: No such file or di"..., 40strace: exec: No such file or directory ) = 40 exit_group(1) = ? +++ exited with 1 +++ [/CODE] [/QUOTE] That does give a (slightly cryptic) clue. From the man page for execve: [code] ENOENT The file filename or a script or ELF interpreter does not exist, or a shared library needed for file or interpreter can‐not be found. [/code] Which matches up with the ldd output in your next post where one of the libraries is missing. Obviously the system should have said which file it could not find. If you can install a version of libstdc++.so.6 on your system the program might work. As I said UNIX can produce rather cryptic error messages. In my previous job as a MVS systems programmer I went to some effort to ensure error messages put out by programs I wrote or updated had enough information in them to point to the real problem. Chris |
Thanks, I've been told it's fairly distro-specific ...
I've been told by someone with more knowledge than myself in this area that that particular C++ linked file is probably not found in most Linux distros, so I'm going to try compiling a local version. "make" informs me that I don't have the CUDA toolkit installed on that particular platform, so that's next. I had dl'ed the toolkits on a WinXP computer but that was a while ago -- trying to do everything in Linux now, and don't even have that WinXP box available anymore.
I appreciate the analysis you've provided, it really helped me make some progress. Sure wish I had known some of this months ago. MF |
I've been running CUDALucas v2.05.1 under Windows 10. The bug with CUDA drivers >=310.70 and cc 2.0 cards still exists, but its behaviour is slightly different than before. Now it causes round off errors which are unrecoverable. Increasing FFT doesn't help. Only a restart of CUDALucas will overcome this. I've managed to match a residue using a run with similar behaviour, so no harm done, I just find it interesting.
[CODE]| Date Time | Test Num Iter Residue | FFT Error ms/It Time | ETA Done | | Jul 25 11:22:57 | M39823489 100000 0xfbb2e64a7a7f1a9c | 2160K 0.15766 3.4682 346.82s | 1:14:16:10 0.25% | | Jul 25 11:28:44 | M39823489 200000 0x2f5728b5a730a4f2 | 2160K 0.15464 3.4692 346.92s | 1:14:10:42 0.50% | | Jul 25 11:34:31 | M39823489 300000 0x0ba36acaa24b9bed | 2160K 0.17899 3.4686 346.86s | 1:14:04:55 0.75% | | Jul 25 11:40:18 | M39823489 400000 0xee75195443fb9609 | 2160K 0.16523 3.4706 347.06s | 1:13:59:27 1.00% | | Jul 25 11:46:05 | M39823489 500000 0x5fd2260c0b578ccc | 2160K 0.16088 3.4706 347.06s | 1:13:53:52 1.25% | CUDALucas.cu(1878) : cudaSafeCall() Runtime API error 30: unknown error. Resetting device and restarting from last checkpoint. Using threads: square 32, splice 64. Continuing M39823489 @ iteration 500001 with fft length 2160K, 1.26% done Round off error at iteration = 500100, err = 0.49866 > 0.35, fft = 2160K. Restarting from last checkpoint to see if the error is repeatable. Using threads: square 32, splice 64. Continuing M39823489 @ iteration 500001 with fft length 2160K, 1.26% done Round off error at iteration = 500100, err = 0.49866 > 0.35, fft = 2160K. The error persists. Trying a larger fft until the next checkpoint. Using threads: square 32, splice 64. Continuing M39823489 @ iteration 500001 with fft length 2240K, 1.26% done Round off error at iteration = 500400, err = 0.42053 > 0.35, fft = 2240K. The error won't go away. I give up. Waiting for 0 seconds, press a key to continue ... ------- DEVICE 1 ------- name GeForce GTX 580 Compatibility 2.0 clockRate (MHz) 1544 memClockRate (MHz) 2004 totalGlobalMem 3221225472 totalConstMem 65536 l2CacheSize 786432 sharedMemPerBlock 49152 regsPerBlock 32768 warpSize 32 memPitch 2147483647 maxThreadsPerBlock 1024 maxThreadsPerMP 1536 multiProcessorCount 16 maxThreadsDim[3] 1024,1024,64 maxGridSize[3] 65535,65535,65535 textureAlignment 512 deviceOverlap 1 Using threads: square 32, splice 64. Continuing M39823489 @ iteration 500001 with fft length 2160K, 1.26% done | Date Time | Test Num Iter Residue | FFT Error ms/It Time | ETA Done | | Jul 25 11:55:59 | M39823489 600000 0x2bfa199a2cf44a3c | 2160K 0.16825 3.4688 346.87s | 1:13:48:00 1.50% | | Jul 25 12:01:46 | M39823489 700000 0x4bc8273a3c703323 | 2160K 0.16035 3.4704 347.04s | 1:13:42:19 1.75% | | Jul 25 12:07:33 | M39823489 800000 0xdacbc4353a989884 | 2160K 0.15374 3.4703 347.03s | 1:13:36:36 2.00% | | Jul 25 12:13:20 | M39823489 900000 0x02e00bcef8ecf468 | 2160K 0.15009 3.4705 347.05s | 1:13:30:53 2.25% | | Jul 25 12:19:07 | M39823489 1000000 0x0fbd344fdae4c273 | 2160K 0.15717 3.4703 347.03s | 1:13:25:09 2.51% |[/CODE] |
| All times are UTC. The time now is 23:03. |
Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.