pstlspoc Index du Forum

pstlspoc
SPOC

 FAQFAQ   RechercherRechercher   MembresMembres   GroupesGroupes   S’enregistrerS’enregistrer 
 ProfilProfil   Se connecter pour vérifier ses messages privésSe connecter pour vérifier ses messages privés   ConnexionConnexion 

Installation - SPOC

 
Poster un nouveau sujet   Répondre au sujet    pstlspoc Index du Forum -> pstlspoc -> pstlspoc
Sujet précédent :: Sujet suivant  
Auteur Message
sam
Administrateur

Hors ligne

Inscrit le: 15 Jan 2013
Messages: 83

MessagePosté le: Mar 22 Jan - 22:24 (2013)    Sujet du message: Installation - SPOC Répondre en citant


Il faut installer la dernière version de Ocaml manuellement :
http://caml.inria.fr/pub/distrib/ocaml-4.00/ocaml-4.00.1.tar.gz





puis Opam manuellement:

https://github.com/OCamlPro/opam/archive/0.9.1.tar.gz
 
Code:


https://github.com/OCamlPro/opam/archive/0.9.1.tar.gz
./configure make make install (y me semble)
 




puis finalement SPOC:
pas oublié les dépendances indiqués : http://www.algo-prog.info/spoc/web/index.php?id=installation_notes
puis

Code:



opam remote -add spoc http://www.algo-prog.info/spoc/distribution/opam/




(si ca marche pas il me semble que le tiret de "-add" était en trop)
Code:



  opam update    opam install SPOC




.


Code:



[size=10]ran@ran-laptop:~/Desktop/SPOC-121217$ cd Spoc/[/size] [size=10]
 ran@ran-laptop:~/Desktop/SPOC-121217/Spoc$ make
 cd extension && make kernels_ext.cmo
 make[1]: entrant dans le répertoire « /home/ran/Desktop/SPOC-121217/Spoc/extension »
  /usr/local/lib/ocaml/../../bin/ocamlc -I +camlp4 -pp   /usr/local/lib/ocaml/../../bin/camlp4of dynlink.cma camlp4lib.cma   kernels_ext.ml
 make[1]: /usr/local/lib/ocaml/../../bin/ocamlc : commande introuvable
 make[1]: *** [kernels_ext.cmo] Erreur 127
 make[1]: quittant le répertoire « /home/ran/Desktop/SPOC-121217/Spoc/extension »
 make: *** [extension/kernels_ext.cmo] Erreur 2[/size] 






Dernière édition par sam le Mar 22 Jan - 23:07 (2013); édité 3 fois
Revenir en haut
Publicité






MessagePosté le: Mar 22 Jan - 22:24 (2013)    Sujet du message: Publicité

PublicitéSupprimer les publicités ?
Revenir en haut
sam
Administrateur

Hors ligne

Inscrit le: 15 Jan 2013
Messages: 83

MessagePosté le: Mar 22 Jan - 22:27 (2013)    Sujet du message: Installation - SPOC Répondre en citant

Si tu es en 32bits tu peux rencontrer un problème de compilation. avec "opam install SPOC" A ce moment là installe SPOC en manuelle:

Citation:

www.algo-prog.info/spoc/distribution/SPOC-121217.tar.gz

Je te fais suivre le message pour corriger le problème.



 
Citation:


Bonsoir,

En regardant le message d'erreur,
après avoir décompressé l'archive vous pouvez commenter l'appel a printf ainsi que l'appel a flush (lignes 936-940 du fichier Spoc/Mem_c.c)
C'est du code qui ne devrait pas être présent normalement et qui semble poser problème sur votre architecture.

Je ferai une nouvelle archive de SPOC prochainement sans l'erreur.

En attendant dîtes moi si ça plante toujours (ailleurs) après correction.

à bientôt.
Mathias

[Cacher les citations]
Il y a une erreur lors de la compilation avec "spoc_cuda_matrix_copy".
C'est pourquoi je croyais que cuda était nécessaire.

Je cherche si le problème viens de mon installation gcc.
Peut il y avoir un changement à faire entre architecture 32bits et 64bits?



 
Code:


ran@ran-laptop:~/Desktop/SPOC-121217/Spoc$ make
 gcc -g -Werror -p -fPIC -O0 -g  -I/usr/local/lib/ocaml   -c -o Mem_c.o Mem_c.c
 cc1: warnings being treated as errors
 Mem_c.c: In function ?spoc_cuda_matrix_copy?:
 Mem_c.c:939: error: format ?%ld? expects type ?long int?, but argument 2 has type ?size_t?
 Mem_c.c:939: error: format ?%ld? expects type ?long int?, but argument 3 has type ?size_t?
 Mem_c.c:939: error: format ?%ld? expects type ?long int?, but argument 4 has type ?size_t?
 Mem_c.c:939: error: format ?%ld? expects type ?long int?, but argument 5 has type ?size_t?
 Mem_c.c:939: error: format ?%ld? expects type ?long int?, but argument 6 has type ?size_t?
 Mem_c.c:939: error: format ?%ld? expects type ?long int?, but argument 7 has type ?size_t?
 Mem_c.c:939: error: format ?%ld? expects type ?long int?, but argument 8 has type ?size_t?
 Mem_c.c:939: error: format ?%ld? expects type ?long int?, but argument 9 has type ?size_t?
 make: *** [Mem_c.o] Erreur 1 


Merci.
Cordialement.





Dernière édition par sam le Mar 22 Jan - 22:33 (2013); édité 3 fois
Revenir en haut
sam
Administrateur

Hors ligne

Inscrit le: 15 Jan 2013
Messages: 83

MessagePosté le: Mar 22 Jan - 22:30 (2013)    Sujet du message: Installation - SPOC Répondre en citant

Si tu as des problèmes ou ce que j'ai écris est incompréhensible dis moi (j'ai fait ca rapide), sinon ensuite y faut opencl pour ta carte ATI.
Je te fais quand même suivre le mail.

 
Citation:


Bonjour,

Pour utiliser SPOC avec OpenCL il va falloir installer la bibliothèque OpenCL compatible avec votre processeur (trouvable sur le site d'intel) s'il en existe une ou la bibliothèque OpenCL trouvable sur le site d'AMD compatible avec votre processeur. (Les deux bibliothèques sont compatibles avec des processeurs Intel).
Je ne crois pas qu'il existe de bibliothèque OpenCL pour carte graphique Intel compatible Linux.
Essayez avec la bibliothèque pour CPU si vous pouvez d'ici la réunion de mardi et pensez a apporter votre portable si possible.

Mathias

[Cacher les citations] Bonjour,

Oui, après mise en commentaire des lignes indiqués Spoc s'installe correctement.

DeviceQuery.byte m'indique 0 devices mais il me semble que je doivent correctement installé OpenCL car j'ai l'erreur dlopen "libOpenCL.so failed!" .

Merci.
Cordialement.

PS: j'ai mal lue les mails précédents qui comprenaient des questions:
Je suis sur pc portable carte graphique intel



Revenir en haut
Mathias


Hors ligne

Inscrit le: 23 Jan 2013
Messages: 57

MessagePosté le: Mer 23 Jan - 21:26 (2013)    Sujet du message: Installation - SPOC Répondre en citant

Je pense quand même que ce sera plus simple à utiliser/modifier si vous l'installer sans passer par Opam.
Car si vous devez modifier les sources de Spoc (pour de petits ajustements) vous allez avoir du mal a le réinstaller (il faudra reconstruire un paquet opam etc)


Revenir en haut
sam
Administrateur

Hors ligne

Inscrit le: 15 Jan 2013
Messages: 83

MessagePosté le: Jeu 24 Jan - 23:11 (2013)    Sujet du message: Installation - SPOC Répondre en citant

Chez moi Spoc est bien installé.

Pour info je ne suis pas encore sur PC portable alienware mais:
- HP pavillon
- ubuntu 12.04 32 bits
- cuda_5.0.35_linux_32_ubuntu11.10-1.run
- carte Geforce 8800 GTS

 


Pour DeviceQuery.byte:
Code:

DeviceQuery
This application prints informations about every
device compatible with Spoc found on your computer.
Found 2 devices: 
  ** 1 Cuda devices 
  ** 1 OpenCL devices 

Devices Info:
  Device  : 0
    Name : GeForce 8800 GTS
    Total Global Memory : 670760960
    Local Memory Size : 16384
    Clock Rate : 1188000
    Total Constant Memory : 65536
    Multi Processor Count : 12
    ECC Enabled : false
    Powered by Cuda
    Driver Version 5
    Cuda 1.0 compatible
    Regs Per Block : 8192
    Warp Size : 32
    Memory Pitch : -1
    Max Threads Per Block : 512
    Max Threads Dim : 512x512x64
    Max Grid Size : 65535x65535x1
    Texture Alignment : 256
    Device Overlap : false
    Kernel Exec Timeout Enabled : true
    Integrated : false
    Can Map Host Memory : false
    Compute Mode : 0
    Concurrent Kernels : false
    PCI Bus ID : 4
    PCI Device ID : 0
  Device  : 1
    Name : GeForce 8800 GTS
    Total Global Memory : 670760960
    Local Memory Size : 16384
    Clock Rate : 1188
    Total Constant Memory : 65536
    Multi Processor Count : 12
    ECC Enabled : false
    Powered by OpenCL
    OpenCL compatible (via Platform : NVIDIA CUDA)
    Platform Profile : FULL_PROFILE
    Platform Version : OpenCL 1.1 CUDA 4.2.1
    Platform Vendor : NVIDIA Corporation
    Platform Extensions : cl_khr_byte_addressable_store cl_khr_icd cl_khr_gl_sharing cl_nv_compiler_options cl_nv_device_attribute_query cl_nv_pragma_unroll 
    Platform Number of Devices : 1
    Type : GPU
    Profile : FULL_PROFILE
    Version : OpenCL 1.0 CUDA
    Vendor : NVIDIA Corporation
    Driver : 304.64
    Extensions : cl_khr_byte_addressable_store cl_khr_icd cl_khr_gl_sharing cl_nv_compiler_options cl_nv_device_attribute_query cl_nv_pragma_unroll  
    Vendor ID : 4318
    Max Work Iem Dimensions : 3
    Max Work Group Size : 512
    Max Work Item Size : 512x512x64
    Address Bits : 32
    Max Memory Alloc Size : 32
    Image Support : true
    Max Read Image Args : 128
    Max Write Image Args : 8
    Max Samplers : 16
    Memory Base Addr Align : 2048
    Min Data Type Align Size : 128
    Global Mem Cacheline Size : 0
    Global Mem Cache Size : 0
    Max Constant Args : 9
    Endian Little : true
    Available : true
    Compiler Available : true
    CL Device Single FP Config : FP FMA
    CL Device Double FP Config : FP NONE
    CL Device Half FP Config : FP NONE
    CL Device Global Mem Cache Type : NONE
    CL Device Queue Properties : PROFILING ENABLE
    CL Local Mem Type : Local
    Image2D DIM : 16383x4096
    Image3D DIM : 2048x2048x2048
    Preferred Vector Width Char : 1
    Preferred Vector Width Short : 1
    Preferred Vector Width Int : 1
    Preferred Vector Width Long : 1
    Preferred Vector Width Float : 1
    Preferred Vector Width Double : 0
    Profiling Timer Resolution : 1000
    !!Warning!! could be Device 0


Pour Game.byte:


  
Pour Mandelbrot.byte:


 
Code:
time 0 : 0.0623409748077s
Will use device : GeForce 8800 GTS
Press any key to close
time 1 : 1.55379796028s
Total_time : 1.61614
Pour Mandelbrot2.byte:


 
Code:
temps 0 : 0.0600569248199
Will use device : GeForce 8800 GTS and GeForce 8800 GTS
temps 1 : 2.49885702133
Total_time : 2.55891
Pour VeccAdd.byte:
Code:

Will use device : GeForce 8800 GTS
Size of vectors : 1024
Will use simple precision
Allocating Vectors (on CPU memory)
Loading Vectors with random floats
Transfering Vectors (on Device memory)
Computing
Transfering Vectors (on CPU memory)
IN: spoc_cuda_device_to_cpu@ 293
Fatal error: exception Cuda.ERROR_LAUNCH_FAILED
 

Pour VeccAdd_MultiGPU.byte:
Code:

Wow 2 compatible devices found
Will use devices : GeForce 8800 GTS and GeForce 8800 GTS
Size of vectors : 1024
Allocating Vectors (on CPU memory)
Set auto-transfers false
Loading Vectors with random floats
Transfering Vectors (on Device memory)
Computing
 :77:14: error: invalid address space for argument to __kernel function
__global int count)
             ^
:77:14: error: parameter may not be qualified with an address space
:98:39: error: must specify '#pragma OPENCL EXTENSION cl_khr_fp64: enable' before using 'double'
__kernel void spoc_max(__global const double* input, __global double* output, const int size) 
                                      ^
:103:18: error: openCL does not support variable length arrays
        __local double r[NB_THREADS]; 
                        ^
IN: spoc_debug_opencl_compile@ 119
Fatal error: exception OpenCL.OPENCL_ERROR_UNKNOWN 



Revenir en haut
Mathias


Hors ligne

Inscrit le: 23 Jan 2013
Messages: 57

MessagePosté le: Ven 25 Jan - 08:20 (2013)    Sujet du message: Installation - SPOC Répondre en citant

Vous pouvez retenter de lancer les exemples en specifiant le materiel a utiliser (via l'option -device 0 ou 1 pour les exemples simples et -device1 0 ou 1 et -device 2 0 ou 1 pour les exemples multi gpu).
Vous pouvez par exemple tout a fait lancer mandelbrot2 avec 2fois la même carte : 
./mandelbrot2.byte -device1 0 -device2 0
Essayez aussi avec les binaires natifes mandelbrot.nat etc.
Attention cependant, chez vous device 1 et 2 sont équivalents.
Par ailleurs les 8800 sont les premières generations de cartes compatibles Cuda/OpenCL et il se peut que certaines options de SPOC ne soient pas reconnues.
Quel est le processeur de cette machine? En fonction de ça vous pouvez tenter d'installer une version d'OpenCL compatible CPU Intel ou AMD.


Question: Spoc installé avec opam ou à la main?


Revenir en haut
sam
Administrateur

Hors ligne

Inscrit le: 15 Jan 2013
Messages: 83

MessagePosté le: Ven 25 Jan - 12:46 (2013)    Sujet du message: Installation - SPOC Répondre en citant

- Je vais tester les exemples avec les arguments.

- Qu'elle différence binaire et natif?
Qu'est ce que binaire et natif?

- J'ai fait l'installation sur cette machine manuellement.
^^ Contrairement à ce que je disais la dernière fois il ne m'est pas possible d'utiliser opam sinon la compilation rale sur le printf et flush .

- processeur de cette ordi: Intel® Core™2 Quad CPU Q6600 @ 2.40GHz × 4
cuda 5.0 ne suffit il pas pour que OpenCL soit installé?


Revenir en haut
Mathias


Hors ligne

Inscrit le: 23 Jan 2013
Messages: 57

MessagePosté le: Ven 25 Jan - 12:51 (2013)    Sujet du message: Installation - SPOC Répondre en citant

sam a écrit:
- Je vais tester les exemples avec les arguments.


- Qu'elle différence binaire et natif?
Qu'est ce que binaire et natif?



Difference entre bytecode et natif:
les .byte sont compilés avec ocamlc et sont exécutés dans la machine virtuelle de caml. Je l'ai peu testé et de toute façon il risque d'y avoir une baisse de performance mais le code est plus portable
Les .nat sont compilés avec ocamlopt en code natif pour votre système architecture. Du coup ils sont exécutés sans passer par une machine virtuelle et du coup on doit normalement obtenir de meilleures performances. Pour spoc c'est ce que j'utilise le plus souvent.


sam a écrit:
- processeur de cette ordi: Intel® Core™2 Quad CPU Q6600 @ 2.40GHz × 4
cuda 5.0 ne suffit il pas pour que OpenCL soit installé?

cuda 5.0 installe opencl pour votre carte graphique nvidia, pas pour votre processeur.

Revenir en haut
Junt


Hors ligne

Inscrit le: 23 Jan 2013
Messages: 13

MessagePosté le: Jeu 31 Jan - 02:01 (2013)    Sujet du message: Installation - SPOC Répondre en citant

Je fais un petit résumé sur l'installation de OCaml, OPAM et SPOC en m'inspirant du post de SAM et des README.txt des différents packets.

Installation de Ocaml 4.00.1 :

http://caml.inria.fr/pub/distrib/ocaml-4.00/ocaml-4.00.1.tar.gz
Decompresser avec : tar zxf caml-4.00.1.tar.gz
Dans le dossier decompresse faite :
     1>./configure
     2>./make world
     3>./make opt
     4>./make opt.opt (Il est possible de faire ./make world.opt pour faire 2 - 4 en une seul commande)
     5>./make install
     6>./make clean

Installation de OPAM :

https://github.com/OCamlPro/opam/archive/0.9.1.tar.gz
Decompresser avec : tar zxf opam-0.9.1.tar.gz
Dans le dossier decompresse faite :
     1>./configure
     2>./make
     3>./make install

Installation de SPOC via OPAM :


Installer aptitude si ce n'est pas fait :
     >sudo apt-get install aptitude
Installer les dependance :
     >sudo aptitude install ocaml camlp4-extra ocaml-native-compilers mesa-common-dev libglu1-mesa-dev freeglut3-dev
Installation de SPOC :
     1>opam remote -add spoc http://www.algo-prog.info/spoc/distribution/opam/
     2>opam update
     3>opam install SPOC


Revenir en haut
Contenu Sponsorisé






MessagePosté le: Aujourd’hui à 05:04 (2018)    Sujet du message: Installation - SPOC

Revenir en haut
Montrer les messages depuis:   
Poster un nouveau sujet   Répondre au sujet    pstlspoc Index du Forum -> pstlspoc -> pstlspoc Toutes les heures sont au format GMT + 1 Heure
Page 1 sur 1

 
Sauter vers:  

Index | Panneau d’administration | creer un forum | Forum gratuit d’entraide | Annuaire des forums gratuits | Signaler une violation | Conditions générales d'utilisation
Powered by phpBB © 2001, 2005 phpBB Group
Traduction par : phpBB-fr.com