Révision 83
Pi/C/OpenMP/XeonPhi/Makefile (revision 83) | ||
---|---|---|
1 |
# Compile all version of Pi_OpenMP using Xeon Phi |
|
2 |
# Cecill v2 Emmanuel QUEMENER <emmanuel.quemener@gmail.com> |
|
3 |
|
|
1 | 4 |
SOURCE=Pi_OpenMP.c |
2 | 5 |
|
3 | 6 |
COMPUTING=INT32 INT64 FP32 FP64 |
Pi/C/OpenMP/XeonPhi/Pi_OpenMP.c (revision 83) | ||
---|---|---|
1 | 1 |
// |
2 | 2 |
// Estimation of Pi using Monte Carlo exploration process |
3 |
// Cecill v2 Emmanuel QUEMENER <emmanuel.quemener@gmail.com> |
|
3 | 4 |
// Exploit OpenMP on Xeon Phi |
4 | 5 |
// source /opt/intel/bin/compilervars.sh intel64 |
5 | 6 |
// icpc -std=c99 -O3 -o Pi Pi.c -lm |
Pi/C/OpenMP/XeonPhi/bench.sh (revision 83) | ||
---|---|---|
1 | 1 |
#!/bin/bash |
2 | 2 |
|
3 |
EXE=Pi_OpenMP_LONG |
|
3 |
EXE=Pi_OpenMP_FP32_MWC |
|
4 |
#EXE=Pi_OpenMP_FP64_MWC |
|
4 | 5 |
ITERATIONS=100000000000 |
5 | 6 |
MYTIME=/usr/bin/time |
6 | 7 |
|
7 | 8 |
REPEAT=10 |
8 |
PROCESS=960 |
|
9 |
START=960 |
|
10 |
END=1920 |
|
9 | 11 |
|
10 | 12 |
[ ! $1 == '' ] && EXE=$1 |
11 | 13 |
[ ! $2 == '' ] && ITERATIONS=$2 |
... | ... | |
14 | 16 |
LOGFILE=${EXE}_${HOSTNAME}_${ITERATIONS}_$(date "+%Y%m%d").log |
15 | 17 |
|
16 | 18 |
> $LOGFILE |
17 |
p=3 |
|
18 |
while [ $p -le $PROCESS ] |
|
19 |
for p in $(seq $START $END) |
|
19 | 20 |
do |
20 | 21 |
export OMP_NUM_THREADS=$p |
21 | 22 |
echo -e "Process $p" >> $LOGFILE |
22 | 23 |
echo -ne "Start $EXE with $ITERATIONS and $p : " |
23 |
i=1 |
|
24 |
while [ $i -le $REPEAT ] |
|
24 |
for i in $(seq $REPEAT) |
|
25 | 25 |
do |
26 | 26 |
echo -ne "$i " |
27 | 27 |
$MYTIME hwloc-bind -p pu:1 ./$EXE $ITERATIONS $p >> $LOGFILE 2>&1 |
28 |
#$MYTIME ./$EXE $ITERATIONS $p >> $LOGFILE 2>&1 |
|
28 | 29 |
sleep 10 |
29 |
i=$(($i+1)) |
|
30 | 30 |
done |
31 | 31 |
echo |
32 |
p=$(($p+1)) |
|
33 | 32 |
done |
Formats disponibles : Unified diff