Doc faite super à l'arrache, juste pour indiquer la marche à suivre, à un moment je ferai une version anglaise.
-
Cloner le repo sur la machine sur laquelle faire les tests.
-
Définir la variable d'environnement
SBENCH_SYCL_COMPILER_CMD
: elle doit indiquer le chemin absolu vers le compilateur. Exemples :
# DPC++ installé
# Potentiellement défini via quelque chose du genre : source ~/intel/oneapi/setvars.sh
export SBENCH_SYCL_COMPILER_CMD=dpcpp
# DPC++ compilé
export SBENCH_SYCL_COMPILER_CMD="/...full_path.../llvm/build/bin/clang++ -fsycl -fsycl-targets=nvptx64-nvidia-cuda --cuda-path=/usr/local/cuda"
# HipSYCL
export SBENCH_SYCL_COMPILER_CMD=syclcc
# etc.
- Dans le dossier du git, faire
make build
pour créer l'exécutablebin/bench
. - Faire
make run
(ou directement./bin/bench
). Please provide the score of the device you wish to use:
=> Indiquer le score du périphérique sur lequel exécuter le benchmark. (les scores de chaque device sont listés juste au-dessus, dans le terminal)- Si le score entré est valide, il demande confirmation
Device selected: Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz
. Appuyer sur entrée (lePlease press enter to continue...
). Load count value (traccc): (default = 10)
est le nombre de fois que devra être répété le chargement du fichierevents_bin/lite_all_events.bin
. USM host prend énormément de temps. Dans l'idéal, sur une grosse machine (comme cassidi ou sandor), une valeur de100
est recommandée (mais ça prend facilement une heure à tourner, si ce n'est plus) donc une valeur de10
pour commencer c'est déjà très bien. Faire entrée ne fonctionne pas, il faut soit entrer un nombre, soit une chaine de caractères (qui sera vue comme étant invalide, donc sélection de la valeur par défaut).- Il y a confirmation :
Selected load count value (traccc): 10
puisPlease press enter to continue...
. - Appuyer sur entrée, et le banchmark se lance.
- Les fichiers à récupérer pour pouvoir les visualiser sont ceux qui se terminent en .t :
sparseccl108_generalFlatten_[nom ordi]_ld[valeur de ld]_RUN1_[nom du device].t
sparseccl108_generalGraphPtr_uniqueModules_[nom ordi]_ld[valeur de ld]_RUN1_[nom du device].t
ubench2_2_[nom ordi]_4GiB_RUN1_[nom du device].t