cherche cobaye pour test cuda

cherche cobaye pour test cuda - Codes et scripts - Linux et OS Alternatifs

Marsh Posté le 05-09-2013 à 12:54:48    

Bonjour,
 
Je cherche des cobayes pour exécuter un simple code sur gpu nvidia sous linux. ça devrait marcher sous windows également.
Il s'agit simplement d'un appel à ssyrk intégrer dans cublas et une référence pour le cpu. Aucune importance pour la carte graphique, plus il y a de diversité, mieux c'est.
Si il y a des volontaire pour traduire le tout pour amd ou intel, ça m'interesse :)
 
L’exécution prend moins de 5min. Typiquement 1min si mkl est utilisé pour le cpu à la place de lapack.
 
Il faut compiler les 2 fichiers ci-dessous:
http://pascal.parois.net/public/interopf.f90
http://pascal.parois.net/public/interopc.cu
 


nvcc -c -O3 -g interopc.cu
gfortran -c -g -O3 interopf.f90
gfortran interopc.o interopf.o -g -I /opt/cuda/include -L /opt/cuda/lib64 -lcudart -lcublas -lpthread -lstdc++ -llapack  -o test


 
J'ai juste besoin des valeurs retournées sur le terminal ainsi que la référence de votre cpu et gpu.
Merci de m'indiquer également quelle est à bibliothèque utilisé pour lapack.
 
Pour info, avec un intel q9505, gpu gtx260:


[pascal@vinci gpubench]$ ./test
 cpu:         1834 ms
 cpu:         1826 ms
 cpu:         1828 ms
 cpu:         1795 ms
 cpu:         1792 ms
 
 gpu:          863 ms
 gpu:          496 ms
 gpu:          492 ms
 gpu:          498 ms
 gpu:          492 ms
 
 diff:    9.8148895340547486E-003
 


Reply

Marsh Posté le 05-09-2013 à 12:54:48   

Reply

Marsh Posté le 05-09-2013 à 16:46:45    

/usr/bin/ld: cannot find -lcudart


---------------
"Your god is too small", Giordano Bruno, 1548 - 1600
Reply

Marsh Posté le 05-09-2013 à 19:07:19    

roscocoltran : tu as une carte graphique Nvidia ?
Je lance le test ce soir sinon ;).

Reply

Marsh Posté le 05-09-2013 à 20:03:34    

Double Tesla sur double xeon X5650 [:prodigy]  
 

Citation :

-bash-4.1$ ./NVIDIA_GPU_Computing_SDK/C/bin/linux/release/deviceQuery
[deviceQuery] starting...
./NVIDIA_GPU_Computing_SDK/C/bin/linux/release/deviceQuery Starting...
 
 CUDA Device Query (Runtime API) version (CUDART static linking)
 
Found 2 CUDA Capable device(s)
 
Device 0: "Tesla C2070"
  CUDA Driver Version / Runtime Version          5.50 / 4.0
  CUDA Capability Major/Minor version number:    2.0
  Total amount of global memory:                 5375 MBytes (5636554752 bytes)
  (14) Multiprocessors x (32) CUDA Cores/MP:     448 CUDA Cores
  GPU Clock Speed:                               1.15 GHz
  Memory Clock rate:                             1494.00 Mhz
  Memory Bus Width:                              384-bit
  L2 Cache Size:                                 786432 bytes
  Max Texture Dimension Size (x,y,z)             1D=(65536), 2D=(65536,65535), 3D=(2048,2048,2048)
  Max Layered Texture Size (dim) x layers        1D=(16384) x 2048, 2D=(16384,16384) x 2048
  Total amount of constant memory:               65536 bytes
  Total amount of shared memory per block:       49152 bytes
  Total number of registers available per block: 32768
  Warp size:                                     32
  Maximum number of threads per block:           1024
  Maximum sizes of each dimension of a block:    1024 x 1024 x 64
  Maximum sizes of each dimension of a grid:     65535 x 65535 x 65535
  Maximum memory pitch:                          2147483647 bytes
  Texture alignment:                             512 bytes
  Concurrent copy and execution:                 Yes with 2 copy engine(s)
  Run time limit on kernels:                     No
  Integrated GPU sharing Host Memory:            No
  Support host page-locked memory mapping:       Yes
  Concurrent kernel execution:                   Yes
  Alignment requirement for Surfaces:            Yes
  Device has ECC support enabled:                Yes
  Device is using TCC driver mode:               No
  Device supports Unified Addressing (UVA):      Yes
  Device PCI Bus ID / PCI location ID:           2 / 0
  Compute Mode:
     < Default (multiple host threads can use ::cudaSetDevice() with device simultaneously) >
 
Device 1: "Tesla C2070"
  CUDA Driver Version / Runtime Version          5.50 / 4.0
  CUDA Capability Major/Minor version number:    2.0
  Total amount of global memory:                 5375 MBytes (5636554752 bytes)
  (14) Multiprocessors x (32) CUDA Cores/MP:     448 CUDA Cores
  GPU Clock Speed:                               1.15 GHz
  Memory Clock rate:                             1494.00 Mhz
  Memory Bus Width:                              384-bit
  L2 Cache Size:                                 786432 bytes
  Max Texture Dimension Size (x,y,z)             1D=(65536), 2D=(65536,65535), 3D=(2048,2048,2048)
  Max Layered Texture Size (dim) x layers        1D=(16384) x 2048, 2D=(16384,16384) x 2048
  Total amount of constant memory:               65536 bytes
  Total amount of shared memory per block:       49152 bytes
  Total number of registers available per block: 32768
  Warp size:                                     32
  Maximum number of threads per block:           1024
  Maximum sizes of each dimension of a block:    1024 x 1024 x 64
  Maximum sizes of each dimension of a grid:     65535 x 65535 x 65535
  Maximum memory pitch:                          2147483647 bytes
  Texture alignment:                             512 bytes
  Concurrent copy and execution:                 Yes with 2 copy engine(s)
  Run time limit on kernels:                     No
  Integrated GPU sharing Host Memory:            No
  Support host page-locked memory mapping:       Yes
  Concurrent kernel execution:                   Yes
  Alignment requirement for Surfaces:            Yes
  Device has ECC support enabled:                Yes
  Device is using TCC driver mode:               No
  Device supports Unified Addressing (UVA):      Yes
  Device PCI Bus ID / PCI location ID:           3 / 0
  Compute Mode:
     < Default (multiple host threads can use ::cudaSetDevice() with device simultaneously) >
 
deviceQuery, CUDA Driver = CUDART, CUDA Driver Version = 5.50, CUDA Runtime Version = 4.0, NumDevs = 2, Device = Tesla C2070, Device = Tesla C2070
[deviceQuery] test results...
PASSED


---------------
"Your god is too small", Giordano Bruno, 1548 - 1600
Reply

Marsh Posté le 05-09-2013 à 20:52:19    

Hop, j'ai lancé le truc (ça tourne sur 1 core aussi!) :

Code :
  1. jcp@phoenix64 ~/poub/test compilation CUDA $ ./test
  2. cpu:       334578 ms
  3. cpu:       334551 ms
  4. cpu:       334575 ms
  5. cpu:       335213 ms
  6. cpu:       331242 ms
  7. gpu:         2084 ms
  8. gpu:          423 ms
  9. gpu:          419 ms
  10. gpu:          420 ms
  11. gpu:          422 ms
  12. diff:    2.6801050156448538E-002


lapack version 3.1.1.

Reply

Marsh Posté le 05-09-2013 à 21:04:58    

roscocoltran a écrit :

/usr/bin/ld: cannot find -lcudart


 
Bizarre, la lib n'est peut-être pas dans le path? Il faut ajuster -I, et -L, c'est le path pour ma machine.
 
Xeon E5-2665 au boulot :D J'ai pas les tesla par contre...

Reply

Marsh Posté le 05-09-2013 à 21:10:27    

j_c_p a écrit :

Hop, j'ai lancé le truc (ça tourne sur 1 core aussi!) :

Code :
  1. jcp@phoenix64 ~/poub/test compilation CUDA $ ./test
  2. cpu:       334578 ms
  3. cpu:       334551 ms
  4. cpu:       334575 ms
  5. cpu:       335213 ms
  6. cpu:       331242 ms
  7. gpu:         2084 ms
  8. gpu:          423 ms
  9. gpu:          419 ms
  10. gpu:          420 ms
  11. gpu:          422 ms
  12. diff:    2.6801050156448538E-002


lapack version 3.1.1.

 

le lapack de base c'est pourri. Avec un 8cores xeon et openblas, je tombe à 330ms.
C'est quel cpu/gpu?
Je suis super etonné du temps cpu, avec lapack je toune à 60sec. L'initialiasation gpu est horrible egalement.


Message édité par pascal22 le 05-09-2013 à 21:13:23
Reply

Marsh Posté le 05-09-2013 à 22:18:37    

Ok, je vais tester avec mkl du coup.
Sinon, ma config est dans la petite icône : X6 et GTX260+.


Message édité par j_c_p le 05-09-2013 à 23:23:50
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed