<html dir="ltr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style id="owaParaStyle" type="text/css">P {margin-top:0;margin-bottom:0;}</style>
</head>
<body ocsi="0" fpstyle="1">
<div style="direction: ltr;font-family: Tahoma;color: #000000;font-size: 10pt;">Dear Neurodebianers,<br>
<br>
Before buying expensive hardware I would like to try the fsl-5.0-gpu on my laptop which has a NVIDIA quadro1000M (cuda capabilities 2.1 so OK for FSL) card. For that purpose I installed debian 7 wheezy, the neurodebian repository, and the nvidia driver and
 the cuda toolkit. This time I did it all through apt-get instead of installing with the NVIDIA*.run files (maybe I shouldn't have?) which is always a nightmare since you have to block "nouveau" and it's never easy.
<br>
<br>
I have first a preliminary question that has nothing to do with neurodebian but rather with cuda. Why should we block nouveau and install the nvidia grafical driver since at the end we want to avoid using the nvidia card as a graphical adapter but rather as
 a computing gpu? I have tried bedpostx_gpu both with gdm3 on and off. It nevers works anyway.<br>
<br>
So I want to check that my installation of the cudatoolkit is correct. I download the cuda SDK samples with hello_world and deviceQuery. I use nvcc to compile both and they work (even if gdm3 is on). The result of deviceQuery is:<br>
<br>
<font size="1"><i>~/NVIDIA_CUDA-5.0_Samples/bin/linux/release$ ./deviceQuery<br>
./deviceQuery Starting...<br>
<br>
 CUDA Device Query (Runtime API) version (CUDART static linking)<br>
<br>
Detected 1 CUDA Capable device(s)<br>
<br>
Device 0: "Quadro 1000M"<br>
  CUDA Driver Version / Runtime Version          5.0 / 4.2<br>
  CUDA Capability Major/Minor version number:    2.1<br>
  Total amount of global memory:                 2047 MBytes (2146631680 bytes)<br>
  ( 2) Multiprocessors x ( 48) CUDA Cores/MP:    96 CUDA Cores<br>
  GPU Clock rate:                                1400 MHz (1.40 GHz)<br>
  Memory Clock rate:                             900 Mhz<br>
  Memory Bus Width:                              128-bit<br>
  L2 Cache Size:                                 131072 bytes<br>
  Max Texture Dimension Size (x,y,z)             1D=(65536), 2D=(65536,65535), 3D=(2048,2048,2048)<br>
  Max Layered Texture Size (dim) x layers        1D=(16384) x 2048, 2D=(16384,16384) x 2048<br>
  Total amount of constant memory:               65536 bytes<br>
  Total amount of shared memory per block:       49152 bytes<br>
  Total number of registers available per block: 32768<br>
  Warp size:                                     32<br>
  Maximum number of threads per multiprocessor:  1536<br>
  Maximum number of threads per block:           1024<br>
  Maximum sizes of each dimension of a block:    1024 x 1024 x 64<br>
  Maximum sizes of each dimension of a grid:     65535 x 65535 x 65535<br>
  Maximum memory pitch:                          2147483647 bytes<br>
  Texture alignment:                             512 bytes<br>
  Concurrent copy and kernel execution:          Yes with 1 copy engine(s)<br>
  Run time limit on kernels:                     Yes<br>
  Integrated GPU sharing Host Memory:            No<br>
  Support host page-locked memory mapping:       Yes<br>
  Alignment requirement for Surfaces:            Yes<br>
  Device has ECC support:                        Disabled<br>
  Device supports Unified Addressing (UVA):      Yes<br>
  Device PCI Bus ID / PCI location ID:           1 / 0<br>
  Compute Mode:<br>
     < Default (multiple host threads can use ::cudaSetDevice() with device simultaneously) ><br>
<br>
deviceQuery, CUDA Driver = CUDART, CUDA Driver Version = 5.0, CUDA Runtime Version = 4.2, NumDevs = 1, Device0 = Quadro 1000M</i></font><br>
<br>
....which gives good hope. Then I have downloaded fsl-5.0-gpu and some sample data ready for bedpostx. Here is the forever result of monitor<br>
<br>
<i>:~$ gpu_run3.bedpostX/monitor <br>
0 parts processed of 1</i><br>
<br>
and of canceling the bedpostx:<br>
<br>
<i>jonathan@adhd:~$ gpu_run3.bedpostX/cancel<br>
The job error: of user(s) jonathan does not exist<br>
The job invalid of user(s) jonathan does not exist<br>
The job option of user(s) jonathan does not exist<br>
The job argument of user(s) jonathan does not exist<br>
The job -j of user(s) jonathan does not exist<br>
gpu_run3.bedpostX/cancel: 3: gpu_run3.bedpostX/cancel: Usage:: not found<br>
gpu_run3.bedpostX/cancel: 4: gpu_run3.bedpostX/cancel: Invalid: not found<br>
gpu_run3.bedpostX/cancel: 5: gpu_run3.bedpostX/cancel: Usage:: not found<br>
gpu_run3.bedpostX/cancel: 6: gpu_run3.bedpostX/cancel: Invalid: not found<br>
</i><br>
Something is wrong. I have also installed centos on my laptop and I can try to check the behaviour of bedpostx_gpu on centos but I don't give any warranty it will succeed as centos is pain compared to debian.<br>
<br>
Have you tried fsl-5.0-gpu ? Do you have any idea what I did wrong? <br>
<br>
Thank you in advance,<br>
<br>
Jonathan<br>
<br>
<br>
<br>
<br>
</div>
</body>
</html>