mersenneforum.org  

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

Reply
 
Thread Tools
Old 2016-02-16, 22:45   #1
Brain
 
Brain's Avatar
 
Dec 2009
Peine, Germany

14B16 Posts
Default CUDALucas / cuFFT Performance on CUDA 7 / 7.5 / 8

Hi folks,

I am running CUDALucas compiled against CUDA 6.5. (download from here: https://sourceforge.net/projects/cudalucas/files/ ).
I use 2 Titans (Kepler, GK110, CC 3.5).

Question is: Will there be a speedup when recompiling against CUDA 7 / 7.5 / 8 ?
Has anyone tried it? (I have compiled CUDALucas years ago when CUDA was at 4.2 or so...)
I read that airsquirrels is working on this here: http://www.mersenneforum.org/showpos...postcount=2431

Could anybody provide a newer compile for evaluation? Maybe Win64, CUDA 7.5, CC 3.5?
(Nvidia claims cuFFT improvements in CUDA 7: https://devblogs.nvidia.com/parallel...ture-overview/)

Futher questions:
  1. I read that CUDA 7 / 7.5 has a bug an Maxwell GPUs: http://www.mersenneforum.org/showthr...bug#post424786
    Is this relevant fur CUDALucas? Is this relevant for Kepler?
  2. I noticed CUDA 8 is available at driver level: CUDA 8 driver release
    http://us.download.nvidia.com/Window...ease-notes.pdf
    Maybe they'll release the toolkit soon? Anything with regard to cuFFT in there?
Thanks in advance for replies and sorry if I missed a thread.


Bye, Sebastian
Brain is offline   Reply With Quote
Old 2016-02-16, 22:47   #2
airsquirrels
 
airsquirrels's Avatar
 
"David"
Jul 2015
Ohio

51710 Posts
Default

I tried CUDALucas against both 6.5 and 7.5 and did see a small improvement using 7.5, enough that I installed both 6.5 (for mfaktc which hits a bug in 7.5) and 7.5 on most of my systems. I don't remember the exact benchmark numbers off hand other than it being worth it.
airsquirrels is offline   Reply With Quote
Old 2016-02-16, 22:50   #3
Brain
 
Brain's Avatar
 
Dec 2009
Peine, Germany

33110 Posts
Default

Quote:
Originally Posted by airsquirrels View Post
I tried CUDALucas against both 6.5 and 7.5 and did see a small improvement using 7.5, enough that I installed both 6.5 (for mfaktc which hits a bug in 7.5) and 7.5 on most of my systems. I don't remember the exact benchmark numbers off hand other than it being worth it.
Could you post a CUDA 7.5 binary? Win64, CC 3.5? ;-)
Brain is offline   Reply With Quote
Old 2016-02-16, 23:00   #4
airsquirrels
 
airsquirrels's Avatar
 
"David"
Jul 2015
Ohio

11·47 Posts
Default

Quote:
Originally Posted by Brain View Post
Could you post a CUDA 7.5 binary? Win64, CC 3.5? ;-)
Unfortunately I am only setup to build under Linux at the moment
airsquirrels is offline   Reply With Quote
Old 2016-02-17, 00:36   #5
kladner
 
kladner's Avatar
 
"Kieren"
Jul 2011
In My Own Galaxy!

9,923 Posts
Default

Quote:
Originally Posted by Brain View Post
Could you post a CUDA 7.5 binary? Win64, CC 3.5? ;-)
Perhaps Flash aka Jerry could do this for you?
kladner is offline   Reply With Quote
Old 2016-02-17, 10:49   #6
ATH
Einyen
 
ATH's Avatar
 
Dec 2003
Denmark

287810 Posts
Default

Quote:
Originally Posted by Brain View Post
[*]I read that CUDA 7 / 7.5 has a bug an Maxwell GPUs: http://www.mersenneforum.org/showthr...bug#post424786
Is this relevant fur CUDALucas? Is this relevant for Kepler?
This bug in CUDA 7 / 7.5 affecting mfaktc is not affecting CUDALucas?
ATH is offline   Reply With Quote
Old 2016-02-17, 11:55   #7
airsquirrels
 
airsquirrels's Avatar
 
"David"
Jul 2015
Ohio

20516 Posts
Default

Quote:
Originally Posted by ATH View Post
This bug in CUDA 7 / 7.5 affecting mfaktc is not affecting CUDALucas?
My understanding from TheJudger's posts is this only affects mfaktc. I have not had any problems with CUDALucas using 7.5
airsquirrels is offline   Reply With Quote
Old 2016-02-18, 07:23   #8
Brain
 
Brain's Avatar
 
Dec 2009
Peine, Germany

1010010112 Posts
Default DIY

Old Version from 2012 (out-dated):
Quote:
Originally Posted by Brain View Post
One way to compile CUDALucas for Win64:
0. Have Win7 64 bit
1. Install Nvidia GPU Toolkit (e.g. version 4.1)
2. Install Nvidia GPU SDK (e.g. version 4.1)
3. Install Make for Windows
4. Install MS Visual Studio 2010 Professional Trial Edition (needed for 64bit, trial will not run out as only command line usage)
5. Set Path for nvcc, make and cl.exe (from VS/bin)
6. Edit given makefile for Win64: Adapt CUDA and SM parameter (e.g. 4.1/2.0). Rename it to makefile.
7. Enter "make" in console being in the CUDALucas/src directory.
8. Delete *.obj files.
9. Find the exe and be happy.

This should be it.
The upper HowTo from 2012 is out-dated. I will probably soon setup a new Windows Make environment - this is one current way, Taken from CUDALucas README.txt:
Code:
WINDOWS MAKE:
This can make non-debug versions from CUDA 4.0 and up.  To compile CUDA 4.0
thru 6.5 you need to have the applicable CUDA toolkit installed and MSVS
2012.  CUDA 6.5 requires the toolkit and MSVS 2012.

** You must have the correct MSVS, the applicable CUDA Toolkit and current
drivers installed first **

1. Obtain make.exe from here:
   http://www.equation.com/servlet/equation.cmd?fa=make
2. Place make.exe into the folder with the sourcefiles and makefile.win
3. Use MUST use the 'command shortcut' included with the appropriate
   version of MSVS
   If you want x86, use the x86 and if you want x64, use x64.
   Use the shortcut from MSVS 2010 for CUDA 4.0 to CUDA 5.0 and MSVS 2012
   for CUDA 5.5/6.5
4. Open makefile.win and set your desired bit level, cuda and version and
   location of MSVS then save
5. Type: make -f makefile.win
6. When complete type make -f makefile.win clean
7. The executable is placed one directory up from your source files
Or Do It Yourself. ;-)
Brain is offline   Reply With Quote
Old 2016-02-18, 23:08   #9
Brain
 
Brain's Avatar
 
Dec 2009
Peine, Germany

331 Posts
Default Just for experimental purpose: CL with CUDA 7.5 for Win64

I have compiled "cudalucas-code-99-trunk" with CUDA 7.5 for Win64.

HowTo compile CUDALucas for Win64, additional info to README:
  1. Have Win7/8/10 64bit
  2. Install Nvidia GPU Toolkit (e.g. version 7.5) (Manual installation, select only GPU Toolkit)
  3. Install Make for Windows (from http://www.equation.com/servlet/equation.cmd?fa=make)
  4. Install MS Visual Studio 2012 Professional Trial Edition (needed for 64bit, trial will not run out as only command line usage)
  5. Edit given makefile.win for Win64: Adapt CUDA_VERSION and BIT (e.g. 7.5 / x64). (Add 7.5 to if-else statements if missing)
  6. Type "make -f makefile.win" in VS2012 x64 Native Tools Command Prompt after having switched into CUDALucas/src directory with makefile.
  7. Delete *temp files via "make -f makefile.win clean".
  8. Find the "CUDALucas2.05.1-CUDA7.5-Windows-x64.exe" one directory up from your source files and be happy.
First test results after 30 minutes:

Tests with 5184K FFT length @Titan @836 MHz / 2600 MHz:
CUDA 6.5: ~4.185ms / It @ ~ERR = 0.25
CUDA 7.5: ~4.22 ms / It @ ~ERR = 0.18
cufftbench still recommends 5184K as optimal FFT length in my exponent case.
--> CUDA 7.5 seems to be at this run ~8% SLOWER than CUDA 6.5 but has a ~30% smaller error!??

Find attached my modified makefile.win for CUDA 7.5 support.
I'd be very interested in independent compiles and checks. Maybe I did something wrong but I don't think so. At the weekend I will probably run a 7.5 double check but current performance is a disappointment.

Bye, Sebastian
Attached Files
File Type: exe CUDALucas2.05.1-CUDA7.5-Windows-x64.exe (898.0 KB, 73 views)
File Type: txt Makefile.win.txt (2.9 KB, 206 views)
Brain is offline   Reply With Quote
Old 2016-02-18, 23:29   #10
airsquirrels
 
airsquirrels's Avatar
 
"David"
Jul 2015
Ohio

10000001012 Posts
Default

The change in error makes me suspect a different FFT size was used.

Did you configure the FFT size yourself, or let the automatic error detection select it?
airsquirrels is offline   Reply With Quote
Old 2016-02-19, 05:53   #11
Brain
 
Brain's Avatar
 
Dec 2009
Peine, Germany

331 Posts
Default

Quote:
Originally Posted by airsquirrels View Post
The change in error makes me suspect a different FFT size was used.

Did you configure the FFT size yourself, or let the automatic error detection select it?
Myself, via worktodo: ...,5184K
Code:
Device              GeForce GTX TITAN
Compatibility       3.5
clockRate (MHz)     875
memClockRate (MHz)  2600

  fft    max exp  ms/iter
 4096   75846319   3.0423
 4320   79902611   3.9058
 4374   80879779   4.0908
 4536   83809729   4.1059
 4608   85111207   4.1071
 5184   95507747   4.1222
 5488  100984691   4.7986
 5600  103000823   5.0615
 5832  107174381   5.4100
 6048  111056879   5.4940
 6144  112781477   5.5065
 6250  114685037   5.7932
 6400  117377567   5.8289
 6480  118813021   5.8704
 6561  120266023   6.1004
 6912  126558077   6.2039
 7776  142017539   6.3066
 8192  149447533   6.4384

Last fiddled with by Brain on 2016-02-19 at 05:54 Reason: cufftbench
Brain is offline   Reply With Quote
Reply

Thread Tools


Similar Threads
Thread Thread Starter Forum Replies Last Post
CUDALucas (a.k.a. MaclucasFFTW/CUDA 2.3/CUFFTW) msft GPU Computing 2817 2020-07-03 19:43
Don't DC/LL them with CudaLucas LaurV Data 131 2017-05-02 18:41
CUDALucas gives all-zero residues fivemack GPU Computing 4 2016-07-21 15:49
Performance of cuda-ecm on newer hardware? fivemack GMP-ECM 14 2015-02-12 20:10
cuFFT on multiple GPUs HHfromG GPU Computing 2 2014-05-11 19:57

All times are UTC. The time now is 02:41.

Wed Aug 5 02:41:17 UTC 2020 up 18 days, 22:28, 1 user, load averages: 1.27, 1.58, 1.66

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.