mersenneforum.org  

Go Back   mersenneforum.org > Great Internet Mersenne Prime Search > Hardware > GPU Computing

Reply
 
Thread Tools
Old 2019-05-07, 17:06   #3147
kriesel
 
kriesel's Avatar
 
"TF79LL86GIMPS96gpu17"
Mar 2017
US midwest

3×13×113 Posts
Default

Quote:
Originally Posted by Rodrigo View Post
OK, I have this driver installed, it's the one that the Nvidia site led me to when entering the particulars on the driver downloads page.

How does one check which version of Windows MFAKTC 0.21 was compiled for? The ZIP file contains 32- and 64-bit versions and this XP is 32 bits, so...

Regarding the other types of info you asked about, I've struck out on all of them. The release notes for this driver were of no help, and I didn't find anything that looked useful in Device Manager. A Web search for "what CUDA level does 368.81 driver support" didn't turn up anything; the specifications page for the 960 says merely that "Yes" it supports CUDA, but not what levels.
Sorry, I earlier posted GTX960 needed CUDA 5.2. That was wrong. It supports compute capabality 5.2, a completely different distinction.
I don't see the GTX960 listed as among the gpu models that driver version supports. 950 yes, 960 no. But maybe it's ok. Are you able to run other CUDA software on the gpu?

http://us.download.nvidia.com/Window...es-updated.pdf Table 3.1 in section 3, "Supported NVIDIA desktop products"
Mfaktc on GTX960 might require CUDA8 though. I' m not sure that's supported for XP.

I don't have any GTX9xx to compare directly against, nor currently any gpu-equipped XP. My GTX 10xx are on Windows 7 systems and 64-bit OS; they are all at CUDA 8 which is required for them for mfaktc, although earlier CUDA versions work ok for CUDAPm1 or CUDALucas as I recall. I'm running an old Quadro 2000 on Vista but that is 64 bit too. I had run version 0.20 or 0.21 of mfaktc on Quadro 2000 on 32bit XP pentium-4 systems, but both those 2 systems failed some time ago so I can not check details there.

The message you started with reminds me of an incompatibility I ran into when attempting to run a version of Mlucas compiled on one cpu type (E5645 on Win 7) on an older cpu type and much older OS (pentium NT 4).

So, we have possible compatibility variables:
CUDA level app and dlls,
driver level present and what that supports,
gpu model & compute capability level,
32 vs 64 bitness,
OS type and version compatibility,
cpu types allowed/supported in the CUDA app,
cpu type present on run system.

It gets even more interesting when mixing old and new gpus in the same system, since support of old gpus is phased out, so old gpus require a driver old enough to support them, while new gpus require a driver new enough to support them, and NVIDIA allows only one NVIDIA gpu driver per system, and with sufficiently old and new gpus there may be few, one or no simultaneous solution. https://www.mersenneforum.org/showpo...15&postcount=4

Last fiddled with by kriesel on 2019-05-07 at 17:56
kriesel is offline   Reply With Quote
Old 2019-05-07, 21:43   #3148
Rodrigo
 
Rodrigo's Avatar
 
Jun 2010
Pennsylvania

32·103 Posts
Default

Quote:
Originally Posted by kriesel View Post
Sorry, I earlier posted GTX960 needed CUDA 5.2. That was wrong. It supports compute capabality 5.2, a completely different distinction.
I don't see the GTX960 listed as among the gpu models that driver version supports. 950 yes, 960 no. But maybe it's ok. Are you able to run other CUDA software on the gpu?
Thanks for following up, @kriesel. We've made some progress. As I write this, the GTX 960 in the XP is running the "short test" of the CUDA 6.5 version of CUDALucas, without complaint.

I'll be happy to provide output text if that will help.
Rodrigo is offline   Reply With Quote
Old 2019-05-08, 15:18   #3149
Rodrigo
 
Rodrigo's Avatar
 
Jun 2010
Pennsylvania

11100111112 Posts
Default

In case my previous post left the wrong impression, the original issue has yet to be solved, as MFAKTC still refuses to run.

Any ideas for how to approach the matter, now that we know that another CUDA 6.5 program (CUDALucas) does work?
Rodrigo is offline   Reply With Quote
Old 2019-05-08, 23:07   #3150
kriesel
 
kriesel's Avatar
 
"TF79LL86GIMPS96gpu17"
Mar 2017
US midwest

10001001101112 Posts
Default

Quote:
Originally Posted by Rodrigo View Post
According to the first post on this page, the 368.81 driver should support CUDA 8.0 as well as previous levels. The thread addresses Ubuntu, but I have to think that the concepts are equally applicable to Windows.
Not quite equally (and that's probably why that page uses XX some places). But close enough for your purposes I think.

GTX960 is Maxwell which has compute capability 5.2 which requires at least CUDA6.5 for full support.

Searching online for an error message you reported, "is not a valid Win32 application" leads to links like
https://www.techwalla.com/articles/h...32-application
I would ignore the advice there about using certain emulators though, since my impression is things
like VirtualBox do not provide sufficient access to the underlying gpu for gpu applications to work.

I haven't found a good way to determine what version of Windows, or what type of cpu, a given executable file requires.
Typically this is handled in the software documentation. What cpu type is in your XP system? If the mfaktc you're trying to use requires a higher cpu type, or OS, it's game over.
https://www.intel.com/content/www/us...ity-tools.html https://cpuid.com/softwares/cpu-z.html etc will tell you what you have.
Even the Visual Studio dumper doesn't tell what cpu type is required.
https://stackoverflow.com/questions/...32-application

Try a different mfaktc download?
Try a newer OS perhaps on USB bootable stick on your cpu and gpu?
There are entirely too many flavors: https://en.wikipedia.org/wiki/Compar...ndows_versions

Possibly running something like this would provide some hints about what is going wrong with the newer mfaktc on your xp system, although it may be a deeper dive than you want to try.
https://docs.microsoft.com/en-us/sys...oads/debugview
https://docs.microsoft.com/en-us/cpp...e?view=vs-2019 requires a Visual Studio install

Maybe try https://answers.microsoft.com/en-us/...1-5d0ebe7a8bd4
or https://www.youtube.com/watch?v=mABpeLwbolY

Where did you download from, the mfaktc version you're having trouble with?
How do the downloaded file's properties compare to those shown at https://download.mersenne.ca/mfaktc/mfaktc-0.21

All the above is about the first error message you identified as showing up.
There's also the "access denied" one. Is any file in the folder restricted such as read only, not execute? Check permissions of all files, and also the folder.

Unfortunately, a CUDALucas run does not provide information about the cpu involved, or much else that's likely to shed light on the mfaktc issue you reported.
It's encouraging though that you're able to run SOMETHING gpu oriented with the driver and gpu that's in place on the OS (XP) that's there.


Code:
CUDALucas v2.06beta 32-bit build, compiled Apr 16 2017 @ 21:23:16

You may experience a small delay on 1st startup to due to Just-in-Time Compilation

binary compiled for CUDA  6.50
CUDA runtime version      6.50
CUDA driver version       8.0

------- DEVICE 0 -------
name                GeForce GTX 1050 Ti
ECC Support?        Disabled
Compatibility       6.1
clockRate (MHz)     1468
memClockRate (MHz)  3504
totalGlobalMem      4294967295
totalConstMem       65536
l2CacheSize         1048576
sharedMemPerBlock   49152
regsPerBlock        65536
warpSize            32
memPitch            2147483647
maxThreadsPerBlock  1024
maxThreadsPerMP     2048
multiProcessorCount 6
maxThreadsDim[3]    1024,1024,64
maxGridSize[3]      2147483647,65535,65535
textureAlignment    512
deviceOverlap       1
pciDeviceID         0
 pciBusID            40
Code:
mfaktc v0.21 (64bit built)

Compiletime options
  THREADS_PER_BLOCK         256
  SIEVE_SIZE_LIMIT          32kiB
  SIEVE_SIZE                193154bits
  SIEVE_SPLIT               250
  MORE_CLASSES              enabled

Runtime options
  SievePrimes               25000
  SievePrimesAdjust         1
  SievePrimesMin            5000
  SievePrimesMax            100000
  NumStreams                3
  CPUStreams                3
  GridSize                  3
  GPUSievePrimes            82486
  GPUSieveSize              64Mi bits
  GPUSieveProcessSize       16Ki bits
  Checkpoints               enabled
  CheckpointDelay           300s
WARNING: Cannot read WorkFileAddDelay from mfaktc.ini, set to 600s by default
  WorkFileAddDelay          600s
  Stages                    enabled
  StopAfterFactor           bitlevel
  PrintMode                 full
  V5UserID                  Kriesel
  ComputerID                condorette-q2000
  ProgressHeader            "Date    Time | class   Pct |   time     ETA | GHz-d/day    Sieve     Wait"
  ProgressFormat            "%d %T | %C %p%% | %t  %e |   %g  %s  %W%%"
  AllowSleep                no
  TimeStampInResults        yes

CUDA version info
  binary compiled for CUDA  6.50
  CUDA runtime version      6.50
  CUDA driver version       8.0

CUDA device info
  name                      Quadro 2000
  compute capability        2.1
  max threads per block     1024
  max shared memory per MP  49152 byte
  number of multiprocessors 4
  CUDA cores per MP         48
  CUDA cores - total        192
  clock rate (CUDA cores)   1251MHz
  memory clock rate:        1304MHz
  memory bus width:         128 bit

Automatic parameters
  threads per grid          1048576
  random selftest offset    29825
  GPUSievePrimes (adjusted) 82486
  GPUsieve minimum exponent 1055144

running a simple selftest...
Selftest statistics
  number of tests           107
   successfull tests         107
I recall being required to use the CUDA 8 version of mfaktc to get it going on GTX10xx.
Code:
mfaktc v0.21 (64bit built)

Compiletime options
  THREADS_PER_BLOCK         256
  SIEVE_SIZE_LIMIT          32kiB
  SIEVE_SIZE                230945bits
  SIEVE_SPLIT               250
  MORE_CLASSES              disabled

Runtime options
  SievePrimes               25000
  SievePrimesAdjust         1
  SievePrimesMin            5000
  SievePrimesMax            100000
  NumStreams                3
  CPUStreams                3
  GridSize                  3
  GPUSievePrimes            82486
  GPUSieveSize              64Mi bits
  GPUSieveProcessSize       16Ki bits
  Checkpoints               enabled
  CheckpointDelay           300s
WARNING: Cannot read WorkFileAddDelay from mfaktc.ini, set to 600s by default
  WorkFileAddDelay          600s
  Stages                    enabled
  StopAfterFactor           bitlevel
  PrintMode                 full
  V5UserID                  Kriesel
  ComputerID                condorette-gtx1050ti
  ProgressHeader            "Date    Time | class   Pct |   time     ETA | GHz-d/day    Sieve     Wait"
  ProgressFormat            "%d %T | %C %p%% | %t  %e |   %g  %s  %W%%"
  AllowSleep                no
  TimeStampInResults        yes

CUDA version info
  binary compiled for CUDA  8.0
  CUDA runtime version      8.0
  CUDA driver version       8.0

CUDA device info
  name                      GeForce GTX 1050 Ti
  compute capability        6.1
  max threads per block     1024
  max shared memory per MP  98304 byte
  number of multiprocessors 6
  clock rate (CUDA cores)   1468MHz
  memory clock rate:        3504MHz
  memory bus width:         128 bit

Automatic parameters
  threads per grid          786432
  random selftest offset    16198
  GPUSievePrimes (adjusted) 82486
  GPUsieve minimum exponent 1055144

running a simple selftest...
Selftest statistics
  number of tests           107
  successfull tests         107

 selftest PASSED!
All the above code sections are from the same 64bit Windows 7 system. I think trying a CUDA8 version of mfaktc is not an option for you, since CUDA8 only comes in 64-bit flavor, and your XP is 32 bit. Maybe try v7.0 or 7.5 if you have it?


From a different system (Windows 10, so 64 bit):
Code:
mfaktc v0.21 (32bit built)

Compiletime options
  THREADS_PER_BLOCK         256
  SIEVE_SIZE_LIMIT          32kiB
  SIEVE_SIZE                193154bits
  SIEVE_SPLIT               250
  MORE_CLASSES              enabled

Runtime options
  SievePrimes               25000
  SievePrimesAdjust         1
  SievePrimesMin            5000
  SievePrimesMax            100000
  NumStreams                3
  CPUStreams                3
  GridSize                  3
  GPUSievePrimes            82486
  GPUSieveSize              64Mi bits
  GPUSieveProcessSize       16Ki bits
  Checkpoints               enabled
  CheckpointDelay           30s
  WorkFileAddDelay          600s
  Stages                    enabled
  StopAfterFactor           bitlevel
  PrintMode                 full
  V5UserID                  (none)
  ComputerID                (none)
  ProgressHeader            "Date    Time | class   Pct |   time     ETA | GHz-d/day    Sieve     Wait"
  ProgressFormat            "%d %T | %C %p%% | %t  %e |   %g  %s  %W%%"
  AllowSleep                no
  TimeStampInResults        no

CUDA version info
  binary compiled for CUDA  6.50
  CUDA runtime version      6.50
  CUDA driver version       7.50

CUDA device info
  name                      Quadro K4000
  compute capability        3.0
  max threads per block     1024
  max shared memory per MP  49152 byte
  number of multiprocessors 4
  CUDA cores per MP         192
  CUDA cores - total        768
  clock rate (CUDA cores)   810MHz
  memory clock rate:        2808MHz
  memory bus width:         192 bit

Automatic parameters
  threads per grid          1048576
  random selftest offset    2966
  GPUSievePrimes (adjusted) 82486
  GPUsieve minimum exponent 1055144

running a simple selftest...
Selftest statistics
  number of tests           107
  successfull tests         107

selftest PASSED!
32bit apps will run on a 64bit OS and hardware, but 64bit apps won't run on a 32bit OS or hardware.
If you're still completely stuck getting mfaktc v0.21 to run on your GTX960 on XP, you could try downloading an earlier version from the mirror site. Or if your older gpu is still present in the system, experiment with what mfaktc variations will run on that and try the exact same thing on the GTX960.

Last fiddled with by kriesel on 2019-05-08 at 23:42
kriesel is offline   Reply With Quote
Old 2019-05-09, 06:21   #3151
LaurV
Romulan Interpreter
 
LaurV's Avatar
 
Jun 2011
Thailand

2×11×397 Posts
Default

This tread repeats exactly my case, few years ago (the discussion is on the forum).

Mfaktc won't run on XP32 with new cards, no matter what, or at least, not solvable in short time (or we don't know yet the short path to solve it).

Solution: switch to 64 bit OS (Win 7, still using it).
LaurV is offline   Reply With Quote
Old 2019-05-09, 09:20   #3152
nomead
 
nomead's Avatar
 
"Sam Laur"
Dec 2018
Turku, Finland

23×41 Posts
Default

Sounds like the precompiled binary needs to be compiled again on an old enough version of Visual Studio that still supports XP. It's not a 32-bit vs. 64-bit thing, but some things changed between XP and Vista. Maybe I'll be able to do some tests later this evening, but no promises.
nomead is offline   Reply With Quote
Old 2019-05-09, 10:12   #3153
nomead
 
nomead's Avatar
 
"Sam Laur"
Dec 2018
Turku, Finland

23×41 Posts
Default

Sorry, failed. VS2012 complained that it needs to run on a 32-bit machine to compile 32-bit executables; all I have is 64-bit Windows 7. And at least VS2012 wouldn't install on the 32-bit XP machine I still have at work. Maybe I'll still think of something but this wasn't it.
nomead is offline   Reply With Quote
Old 2019-05-10, 17:27   #3154
Rodrigo
 
Rodrigo's Avatar
 
Jun 2010
Pennsylvania

32·103 Posts
Default

@kriesel, @LaurV, and @nomead: thank you very much for investigating this frustrating issue.

Turns out that the machine in question came with a second set of operating system disks, for Vista Business x32. I installed Vista this morning alongside XP, installed the 32-bit Vista/7 driver for the GTX960, and ran the self-test for the CUDA 6.5 version of MFAKTC 0.21 -- success! A sample TF also worked.

Next I tried running the CUDA 8.0 version. This one threw an error: the CUDA runtime version is listed as 539041.24 and it needs to match "the CUDA toolkit version used during compile."

So we have a working solution with CUDA 6.5. However, can someone fill me in on the part about the CUDA runtime version being 539041.24 instead of 8.0 as one might expect?
Rodrigo is offline   Reply With Quote
Old 2019-05-10, 18:31   #3155
kriesel
 
kriesel's Avatar
 
"TF79LL86GIMPS96gpu17"
Mar 2017
US midwest

3·13·113 Posts
Default

Quote:
Originally Posted by Rodrigo View Post
@kriesel, @LaurV, and @nomead: thank you very much for investigating this frustrating issue.

Turns out that the machine in question came with a second set of operating system disks, for Vista Business x32. I installed Vista this morning alongside XP, installed the 32-bit Vista/7 driver for the GTX960, and ran the self-test for the CUDA 6.5 version of MFAKTC 0.21 -- success! A sample TF also worked.

Next I tried running the CUDA 8.0 version. This one threw an error: the CUDA runtime version is listed as 539041.24 and it needs to match "the CUDA toolkit version used during compile."

So we have a working solution with CUDA 6.5. However, can someone fill me in on the part about the CUDA runtime version being 539041.24 instead of 8.0 as one might expect?
It's been a while so I don't remember the details, but I recall getting seemingly random CUDA levels reported when there was some sort of fatal mismatch, like maybe the program version CUDA level exceeds the driver support or something.
kriesel is offline   Reply With Quote
Old 2019-05-10, 20:20   #3156
kriesel
 
kriesel's Avatar
 
"TF79LL86GIMPS96gpu17"
Mar 2017
US midwest

3×13×113 Posts
Default

In linux, with a too-low driver version for the CUDA level, you get CUDA 0.0 runtime indicated, per thread https://www.mersenneforum.org/showthread.php?t=21651.

On one of my Win7 x64 systems, I was able to duplicate your runtime mismatch issue, sort of (different alleged runtime number).
Code:
Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation.  All rights reserved.
>mfaktc-win-64
mfaktc v0.21 (64bit built)

Compiletime options
  THREADS_PER_BLOCK         256
  SIEVE_SIZE_LIMIT          32kiB
  SIEVE_SIZE                193154bits
  SIEVE_SPLIT               250
  MORE_CLASSES              enabled

Runtime options
  SievePrimes               25000
  SievePrimesAdjust         1
  SievePrimesMin            5000
  SievePrimesMax            100000
  NumStreams                3
  CPUStreams                3
  GridSize                  3
  GPU Sieving               enabled
  GPUSievePrimes            82486
  GPUSieveSize              64Mi bits
  GPUSieveProcessSize       16Ki bits
  Checkpoints               enabled
  CheckpointDelay           30s
  WorkFileAddDelay          600s
  Stages                    enabled
  StopAfterFactor           bitlevel
  PrintMode                 full
  V5UserID                  (none)
  ComputerID                (none)
  AllowSleep                no
  TimeStampInResults        no

CUDA version info
  binary compiled for CUDA  10.0
  CUDA runtime version      13697.32
  CUDA driver version       8.0
ERROR: current CUDA driver version is lower than the CUDA toolkit version used d
uring compile!
       Please update your graphics driver.
The message is a bit misleading, since the runtime driver in the same folder is v10.0.

Code:
>dir
 Volume in drive C has no label.
 Volume Serial Number is 947C-6AF8

 Directory of C:\Users\ken\My Documents\mfaktc-cuda10-test

05/10/2019  03:21 PM    <DIR>          .
05/10/2019  03:21 PM    <DIR>          ..
09/17/2015  02:00 AM            19,231 Changelog.txt
09/17/2015  02:00 AM            35,821 COPYING
08/26/2018  06:33 AM           416,256 cudart64_100.dll
09/30/2018  02:13 PM         1,745,408 mfaktc-win-64.exe
09/17/2015  02:00 AM             9,118 mfaktc.ini
09/17/2015  02:00 AM            13,279 README.txt
               6 File(s)      2,239,113 bytes
But apparently the driver CUDA level limitation causes something to go wrong.
Code:
C:\Users\ken\Documents>"C:\Program Files\NVIDIA Corporation\NVSMI\nvidia-smi.exe
"
Fri May 10 15:27:53 2019
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 378.92                 Driver Version: 378.92                    |
|-------------------------------+----------------------+----------------------+
| GPU  Name            TCC/WDDM | Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  Quadro 4000        WDDM  | 0000:03:00.0     Off |                  N/A |
|100%   93C    P0    N/A /  N/A |    135MiB /  2048MiB |     99%      Default |
+-------------------------------+----------------------+----------------------+
|   1  GeForce GTX 1080   WDDM  | 0000:04:00.0     Off |                  N/A |
| 87%   82C    P2   118W / 240W |    377MiB /  8192MiB |    100%      Default |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID  Type  Process name                               Usage      |
|=============================================================================|
|    0      5436    C   ... Documents\mfaktc-q4000\mfaktc-win-64.exe N/A      |
|    1      5868    C   ...CUDALucas2.06beta-CUDA8.0-Windows-x64.exe N/A      |
+-----------------------------------------------------------------------------+
Driver v378.92 is only capable of CUDA 8, per its release notes.
I've put together a small compabitility grid at https://www.mersenneforum.org/showpo...15&postcount=4

Last fiddled with by kriesel on 2019-05-10 at 20:41
kriesel is offline   Reply With Quote
Old 2019-05-10, 22:58   #3157
Rodrigo
 
Rodrigo's Avatar
 
Jun 2010
Pennsylvania

32×103 Posts
Default

Nice work there with the compatibility grids!

FWIW, the GTX960 NVIDIA driver on the new Vista installation is 365.19 (x32).
Rodrigo is offline   Reply With Quote
Reply

Thread Tools


Similar Threads
Thread Thread Starter Forum Replies Last Post
mfakto: an OpenCL program for Mersenne prefactoring Bdot GPU Computing 1634 2020-09-10 21:40
The P-1 factoring CUDA program firejuggler GPU Computing 752 2020-09-08 16:15
"CUDA runtime version 0.0" when running mfaktc.exe froderik GPU Computing 4 2016-10-30 15:29
World's second-dumbest CUDA program fivemack Programming 112 2015-02-12 22:51
World's dumbest CUDA program? xilman Programming 1 2009-11-16 10:26

All times are UTC. The time now is 09:19.

Sat Sep 19 09:19:32 UTC 2020 up 9 days, 6:30, 0 users, load averages: 1.63, 1.83, 1.86

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.

This forum has received and complied with 0 (zero) government requests for information.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation.
A copy of the license is included in the FAQ.