Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Iker Martín Álvarez
Proteo
Commits
a49aea25
Commit
a49aea25
authored
Jul 09, 2021
by
iker_martin
Browse files
Arreglados errores de ejecucion y check de resultados
parent
b4c7f177
Changes
3
Hide whitespace changes
Inline
Side-by-side
Codes/IOcodes/results.c
View file @
a49aea25
...
@@ -161,8 +161,8 @@ void init_results_data(results_data **results, int resizes, int iters_size) {
...
@@ -161,8 +161,8 @@ void init_results_data(results_data **results, int resizes, int iters_size) {
(
*
results
)
->
sync_time
=
calloc
(
resizes
,
sizeof
(
double
));
(
*
results
)
->
sync_time
=
calloc
(
resizes
,
sizeof
(
double
));
(
*
results
)
->
async_time
=
calloc
(
resizes
,
sizeof
(
double
));
(
*
results
)
->
async_time
=
calloc
(
resizes
,
sizeof
(
double
));
(
*
results
)
->
iters_time
=
calloc
(
iters_size
*
20
,
sizeof
(
double
));
//FIXME Numero magico - Añadir funcion que amplie tamaño
(
*
results
)
->
iters_time
=
calloc
(
iters_size
*
20
+
100
,
sizeof
(
double
));
//FIXME Numero magico - Añadir funcion que amplie tamaño
(
*
results
)
->
iters_type
=
calloc
(
iters_size
*
20
,
sizeof
(
int
));
(
*
results
)
->
iters_type
=
calloc
(
iters_size
*
20
+
100
,
sizeof
(
int
));
(
*
results
)
->
iter_index
=
0
;
(
*
results
)
->
iter_index
=
0
;
}
}
...
...
Codes/Main/Main.c
View file @
a49aea25
...
@@ -97,7 +97,6 @@ int main(int argc, char *argv[]) {
...
@@ -97,7 +97,6 @@ int main(int argc, char *argv[]) {
MPI_Barrier
(
MPI_COMM_WORLD
);
MPI_Barrier
(
MPI_COMM_WORLD
);
results
->
exec_time
=
MPI_Wtime
()
-
results
->
exec_start
;
results
->
exec_time
=
MPI_Wtime
()
-
results
->
exec_start
;
}
}
print_final_results
();
print_final_results
();
free_application_data
();
free_application_data
();
...
...
Exec/CheckRun.sh
View file @
a49aea25
...
@@ -9,6 +9,13 @@ ResultsDirName=$1
...
@@ -9,6 +9,13 @@ ResultsDirName=$1
maxIndex
=
$2
maxIndex
=
$2
cantidadGrupos
=
$3
#Contando a los padres
cantidadGrupos
=
$3
#Contando a los padres
if
[
$#
-lt
3
]
then
echo
"Faltan argumentos"
echo
"Uso -> bash CheckRun NombreDirectorio IndiceMaximo Grupos"
exit
-1
fi
cd
$dir$ResultsDir
cd
$dir$ResultsDir
if
[
!
-d
$ResultsDirName
]
if
[
!
-d
$ResultsDirName
]
then
then
...
@@ -25,10 +32,22 @@ qty=$(wc -l errores2.txt | cut -d ' ' -f1)
...
@@ -25,10 +32,22 @@ qty=$(wc -l errores2.txt | cut -d ' ' -f1)
if
[
$qty
-gt
0
]
if
[
$qty
-gt
0
]
then
then
echo
"Se han encontrado errores de ejecución graves. Abortando"
echo
"Se han encontrado errores de ejecución graves. Abortando"
echo
"Revisar archivo errores2.txt en el directorio
$ResultsDirName
"
exit
-2
exit
-2
fi
fi
rm
errores2.txt
rm
errores2.txt
qtyG
=
$(
ls
R
*
/R
*
_Global.out |
wc
-l
)
qtyG
=
$((
$qtyG
*
2
))
qtyL
=
$(
ls
R
*
/R
*
_G?N
*
.out |
wc
-l
)
if
[
$qtyG
==
$qtyL
]
then
echo
"El numero de ficheros G(
$qtyG
) y L(
$qtyL
) coincide"
else
# TODO Expandir indicando cuales
echo
"Faltan ejecuciones Locales o globales"
exit
-1
fi
#Comprobar si hay runs con tiempo negativos
#Comprobar si hay runs con tiempo negativos
#Si los hay, reejecutar e informar de cuales son
#Si los hay, reejecutar e informar de cuales son
grep
-
*
/R
*
|
grep
Tex
>
errores.txt
grep
-
*
/R
*
|
grep
Tex
>
errores.txt
...
@@ -40,7 +59,7 @@ then
...
@@ -40,7 +59,7 @@ then
while
IFS
=
""
read
-r
lineRun
||
[
-n
"
$lineRun
"
]
while
IFS
=
""
read
-r
lineRun
||
[
-n
"
$lineRun
"
]
do
do
#Obtener datos de una ejecución erronea
#Obtener datos de una ejecución erronea
run
=
$(
echo
$lineRun
|
cut
-d
'
/
R'
-f
2
|
cut
-d
'_'
-f1
)
run
=
$(
echo
$lineRun
|
cut
-d
'R'
-f
3
|
cut
-d
'_'
-f1
)
if
[
$run
-gt
$maxIndex
]
if
[
$run
-gt
$maxIndex
]
then
#Indice de ejecuciones posteriores
then
#Indice de ejecuciones posteriores
realRun
=
$((
$run
-
$maxIndex
))
realRun
=
$((
$run
-
$maxIndex
))
...
@@ -65,7 +84,7 @@ then
...
@@ -65,7 +84,7 @@ then
aux
=
$((
$fin
/
7
))
#Utilizado para saber de entre las ejecuciones del fichero, cual es la erronea
aux
=
$((
$fin
/
7
))
#Utilizado para saber de entre las ejecuciones del fichero, cual es la erronea
fin
=
$((
$aux
*
5
))
fin
=
$((
$aux
*
5
))
ini
=
$((
$fin
-
4
))
ini
t
=
$((
$fin
-
4
))
for
((
j
=
0
;
j<cantidadGrupos
;
j++
))
;
do
for
((
j
=
0
;
j<cantidadGrupos
;
j++
))
;
do
sed
-i
''
$init
','
$fin
'd'
R
${
realRun
}
_G
${
j
}*
sed
-i
''
$init
','
$fin
'd'
R
${
realRun
}
_G
${
j
}*
done
done
...
@@ -78,13 +97,3 @@ then
...
@@ -78,13 +97,3 @@ then
done
< errores.txt
done
< errores.txt
exit
0
exit
0
fi
fi
qtyG
=
$(
ls
R
*
/R
*
_Global.out |
wc
-l
)
qtyG
=
$((
$qtyG
*
2
))
qtyL
=
$(
ls
R
*
/R
*
_G?N
*
.out |
wc
-l
)
if
[
$qtyG
==
$qtyL
]
then
echo
"Ejecucciones correctas"
else
# TODO Expandir indicando cuales
echo
"Faltan ejecuciones Locales o globales"
fi
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment