Commit 46b8cee5 authored by Jö Fahlke's avatar Jö Fahlke

[vectorclasstest] Keep < 1G memory when compiling.

Measure: `ulimit -v $((1024*1024))`
Options: `-DCMAKE_CXX_FLAGS='-O2 -g -Wall'`
`g++ (Debian 6.3.0-18+deb9u1) 6.3.0 20170516`

Closes: #12
parent 23c01609
Pipeline #17917 passed with stage
in 6 minutes and 37 seconds
......@@ -19,15 +19,27 @@ foreach(VECTOR_SIZE IN ITEMS 128 256 512)
# float and associated types
math(EXPR LANES "${VECTOR_SIZE} / 32")
foreach(TYPE IN ITEMS f i)
dune_instance_add(ID "${LANES}${TYPE}"
FILES vectorclasstest_vector.cc vectorclasstest_mask.cc)
dune_instance_add(ID "${LANES}${TYPE}")
foreach(POINT IN ITEMS
Type
BinaryOpsScalarVector BinaryOpsVectorScalar
BinaryOpsProxyVector BinaryOpsVectorProxy)
dune_instance_add(TEMPLATE POINT ID "${POINT}_${LANES}${TYPE}"
FILES vectorclasstest_vector.cc vectorclasstest_mask.cc)
endforeach(POINT)
endforeach(TYPE)
# double and associated types
math(EXPR LANES "${VECTOR_SIZE} / 64")
foreach(TYPE IN ITEMS d q)
dune_instance_add(ID "${LANES}${TYPE}"
FILES vectorclasstest_vector.cc vectorclasstest_mask.cc)
dune_instance_add(ID "${POINT}_${LANES}${TYPE}")
foreach(POINT IN ITEMS
Type
BinaryOpsScalarVector BinaryOpsVectorScalar
BinaryOpsProxyVector BinaryOpsVectorProxy)
dune_instance_add(TEMPLATE POINT ID "${POINT}_${LANES}${TYPE}"
FILES vectorclasstest_vector.cc vectorclasstest_mask.cc)
endforeach(POINT)
endforeach(TYPE)
endforeach(VECTOR_SIZE)
......
......@@ -10,10 +10,10 @@
namespace Dune {
namespace Simd {
#cmake @template@
#cmake @template POINT@
#if MAX_VECTOR_SIZE >= @VECTOR_SIZE@
extern template void UnitTest::checkType<Vec@LANES@@TYPE@>();
extern template void UnitTest::checkType<Vec@LANES@@TYPE@b>();
extern template void UnitTest::check@POINT@<Vec@LANES@@TYPE@>();
extern template void UnitTest::check@POINT@<Vec@LANES@@TYPE@b>();
#endif // MAX_VECTOR_SIZE >= @VECTOR_SIZE@
#cmake @endtemplate@
......
......@@ -8,7 +8,7 @@ namespace Dune {
namespace Simd {
#if MAX_VECTOR_SIZE >= @VECTOR_SIZE@
template void UnitTest::checkType<Vec@LANES@@TYPE@b>();
template void UnitTest::check@POINT@<Vec@LANES@@TYPE@b>();
#endif // MAX_VECTOR_SIZE >= @VECTOR_SIZE@
}
......
......@@ -8,7 +8,7 @@ namespace Dune {
namespace Simd {
#if MAX_VECTOR_SIZE >= @VECTOR_SIZE@
template void UnitTest::checkType<Vec@LANES@@TYPE@>();
template void UnitTest::check@POINT@<Vec@LANES@@TYPE@>();
#endif // MAX_VECTOR_SIZE >= @VECTOR_SIZE@
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment