Open barracuda156 opened 1 year ago
Build log:
:info:test /opt/local/bin/g++-mp-12 -Wextra -Wall -Wpedantic -Ofast -std=c++17 -pthread -fopenmp -D_GLIBCXX_USE_CXX11_ABI=0 -c -I../include -Iinclude src/gtest_tlib_layout.cpp -o build/gtest_tlib_layout.o
:info:test /opt/local/bin/g++-mp-12 -Wextra -Wall -Wpedantic -Ofast -std=c++17 -pthread -fopenmp -D_GLIBCXX_USE_CXX11_ABI=0 -c -I../include -Iinclude src/gtest_tlib_mtv.cpp -o build/gtest_tlib_mtv.o
:info:test /opt/local/bin/g++-mp-12 -Wextra -Wall -Wpedantic -Ofast -std=c++17 -pthread -fopenmp -D_GLIBCXX_USE_CXX11_ABI=0 -c -I../include -Iinclude src/gtest_tlib_shape.cpp -o build/gtest_tlib_shape.o
:info:test In file included from src/gtest_tlib_shape.cpp:9:
:info:test ../include/tlib/detail/shape.h: In instantiation of 'bool tlib::detail::is_matrix(InputIt, InputIt) [with InputIt = __gnu_cxx::__normal_iterator<unsigned int*, std::vector<unsigned int> >]':
:info:test src/gtest_tlib_shape.cpp:84:3: required from here
:info:test ../include/tlib/detail/shape.h:72:37: warning: comparison of integer expressions of different signedness: 'std::__iterator_traits<__gnu_cxx::__normal_iterator<unsigned int*, std::vector<unsigned int> >, void>::difference_type' {aka 'int'} and 'unsigned int' [-Wsign-compare]
:info:test 72 | if(std::distance(begin,end) < 2u)
:info:test | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
:info:test ../include/tlib/detail/shape.h: In instantiation of 'bool tlib::detail::is_tensor(InputIt, InputIt) [with InputIt = __gnu_cxx::__normal_iterator<unsigned int*, std::vector<unsigned int> >]':
:info:test src/gtest_tlib_shape.cpp:99:3: required from here
:info:test ../include/tlib/detail/shape.h:86:37: warning: comparison of integer expressions of different signedness: 'std::__iterator_traits<__gnu_cxx::__normal_iterator<unsigned int*, std::vector<unsigned int> >, void>::difference_type' {aka 'int'} and 'unsigned int' [-Wsign-compare]
:info:test 86 | if(std::distance(begin,end) < 3u)
:info:test | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
:info:test /opt/local/bin/g++-mp-12 -Wextra -Wall -Wpedantic -Ofast -std=c++17 -pthread -fopenmp -D_GLIBCXX_USE_CXX11_ABI=0 -c -I../include -Iinclude src/gtest_tlib_strides.cpp -o build/gtest_tlib_strides.o
:info:test In file included from src/gtest_tlib_strides.cpp:25:
:info:test ../include/tlib/detail/strides.h: In instantiation of 'void tlib::detail::compute_strides(InputIt1, InputIt1, InputIt2, OutputIt) [with InputIt1 = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >; InputIt2 = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >; OutputIt = __gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int> >]':
:info:test ../include/tlib/detail/strides.h:64:17: required from 'auto tlib::detail::generate_strides(const std::vector<T>&, const std::vector<T>&) [with size_type = long unsigned int]'
:info:test src/gtest_tlib_strides.cpp:35:42: required from here
:info:test ../include/tlib/detail/strides.h:52:28: warning: comparison of integer expressions of different signedness: 'unsigned int' and 'const int' [-Wsign-compare]
:info:test 52 | for(auto r = 1u; r < n; ++r)
:info:test | ~~^~~
:info:test In file included from ../include/tlib/detail/strides.h:25:
:info:test ../include/tlib/detail/shape.h: In instantiation of 'bool tlib::detail::is_matrix(InputIt, InputIt) [with InputIt = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >]':
:info:test src/gtest_tlib_strides.cpp:74:3: required from here
:info:test ../include/tlib/detail/shape.h:72:37: warning: comparison of integer expressions of different signedness: 'std::__iterator_traits<__gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >, void>::difference_type' {aka 'int'} and 'unsigned int' [-Wsign-compare]
:info:test 72 | if(std::distance(begin,end) < 2u)
:info:test | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
:info:test ../include/tlib/detail/shape.h: In instantiation of 'bool tlib::detail::is_tensor(InputIt, InputIt) [with InputIt = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >]':
:info:test src/gtest_tlib_strides.cpp:98:3: required from 'StridesTest_TensorShape_Test::TestBody()::<lambda(std::size_t, const auto:37&, const auto:38&, const auto:39&, const auto:40&)> [with auto:37 = std::vector<long unsigned int>; auto:38 = std::vector<long unsigned int>; auto:39 = std::vector<long unsigned int>; auto:40 = std::vector<long unsigned int>; std::size_t = long unsigned int]'
:info:test src/gtest_tlib_strides.cpp:113:16: required from here
:info:test ../include/tlib/detail/shape.h:86:37: warning: comparison of integer expressions of different signedness: 'std::__iterator_traits<__gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >, void>::difference_type' {aka 'int'} and 'unsigned int' [-Wsign-compare]
:info:test 86 | if(std::distance(begin,end) < 3u)
:info:test | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
:info:test /opt/local/bin/g++-mp-12 -Wextra -Wall -Wpedantic -Ofast -std=c++17 -pthread -fopenmp -D_GLIBCXX_USE_CXX11_ABI=0 -c -I../include -Iinclude src/gtest_tlib_ttv.cpp -o build/gtest_tlib_ttv.o
:info:test In file included from ../include/tlib/detail/tensor_times_vector.h:32,
:info:test from ../include/tlib/ttv.h:21,
:info:test from src/gtest_tlib_ttv.cpp:18:
:info:test ../include/tlib/detail/strides.h: In instantiation of 'void tlib::detail::compute_strides(InputIt1, InputIt1, InputIt2, OutputIt) [with InputIt1 = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >; InputIt2 = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >; OutputIt = __gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int> >]':
:info:test ../include/tlib/detail/strides.h:64:17: required from 'auto tlib::detail::generate_strides(const std::vector<size_type>&, const std::vector<size_type>&) [with size_type = long unsigned int]'
:info:test src/gtest_tlib_ttv.cpp:171:45: required from 'void check_tensor_times_vector(size_type, size_type) [with value_type = double; size_type = long unsigned int; execution_policy = tlib::execution::sequential_policy; slicing_policy = tlib::slicing::large_policy; fusion_policy = tlib::loop_fusion::none_policy; unsigned int rank = 2]'
:info:test src/gtest_tlib_ttv.cpp:199:98: required from here
:info:test ../include/tlib/detail/strides.h:52:28: warning: comparison of integer expressions of different signedness: 'unsigned int' and 'const int' [-Wsign-compare]
:info:test 52 | for(auto r = 1u; r < n; ++r)
:info:test | ~~^~~
:info:test In file included from ../include/tlib/detail/strides.h:25:
:info:test ../include/tlib/detail/shape.h: In instantiation of 'bool tlib::detail::is_matrix(InputIt, InputIt) [with InputIt = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >]':
:info:test ../include/tlib/detail/strides.h:48:16: required from 'void tlib::detail::compute_strides(InputIt1, InputIt1, InputIt2, OutputIt) [with InputIt1 = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >; InputIt2 = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >; OutputIt = __gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int> >]'
:info:test ../include/tlib/detail/strides.h:64:17: required from 'auto tlib::detail::generate_strides(const std::vector<size_type>&, const std::vector<size_type>&) [with size_type = long unsigned int]'
:info:test src/gtest_tlib_ttv.cpp:171:45: required from 'void check_tensor_times_vector(size_type, size_type) [with value_type = double; size_type = long unsigned int; execution_policy = tlib::execution::sequential_policy; slicing_policy = tlib::slicing::large_policy; fusion_policy = tlib::loop_fusion::none_policy; unsigned int rank = 2]'
:info:test src/gtest_tlib_ttv.cpp:199:98: required from here
:info:test ../include/tlib/detail/shape.h:72:37: warning: comparison of integer expressions of different signedness: 'std::__iterator_traits<__gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >, void>::difference_type' {aka 'int'} and 'unsigned int' [-Wsign-compare]
:info:test 72 | if(std::distance(begin,end) < 2u)
:info:test | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
:info:test ../include/tlib/detail/shape.h: In instantiation of 'bool tlib::detail::is_tensor(InputIt, InputIt) [with InputIt = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >]':
:info:test ../include/tlib/detail/strides.h:48:53: required from 'void tlib::detail::compute_strides(InputIt1, InputIt1, InputIt2, OutputIt) [with InputIt1 = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >; InputIt2 = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >; OutputIt = __gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int> >]'
:info:test ../include/tlib/detail/strides.h:64:17: required from 'auto tlib::detail::generate_strides(const std::vector<size_type>&, const std::vector<size_type>&) [with size_type = long unsigned int]'
:info:test src/gtest_tlib_ttv.cpp:171:45: required from 'void check_tensor_times_vector(size_type, size_type) [with value_type = double; size_type = long unsigned int; execution_policy = tlib::execution::sequential_policy; slicing_policy = tlib::slicing::large_policy; fusion_policy = tlib::loop_fusion::none_policy; unsigned int rank = 2]'
:info:test src/gtest_tlib_ttv.cpp:199:98: required from here
:info:test ../include/tlib/detail/shape.h:86:37: warning: comparison of integer expressions of different signedness: 'std::__iterator_traits<__gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >, void>::difference_type' {aka 'int'} and 'unsigned int' [-Wsign-compare]
:info:test 86 | if(std::distance(begin,end) < 3u)
:info:test | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
:info:test ../include/tlib/detail/tensor_times_vector.h: In instantiation of 'void tlib::detail::ttv(tlib::execution::parallel_blas_policy, tlib::slicing::small_policy, tlib::loop_fusion::outer_policy, size_t, size_t, const value_t*, const size_t*, const size_t*, const size_t*, const value_t*, const size_t*, value_t*, const size_t*, const size_t*, const size_t*) [with value_t = double; size_t = long unsigned int]':
:info:test ../include/tlib/ttv.h:92:13: required from 'void tlib::tensor_times_vector(execution_policy, slicing_policy, fusion_policy, size_t, size_t, const value_t*, const size_t*, const size_t*, const size_t*, const value_t*, const size_t*, value_t*, const size_t*, const size_t*, const size_t*) [with value_t = double; size_t = long unsigned int; execution_policy = execution::parallel_blas_policy; slicing_policy = slicing::small_policy; fusion_policy = loop_fusion::outer_policy]'
:info:test src/gtest_tlib_ttv.cpp:125:27: required from 'void ttv_check(execution_policy, slicing_policy, fusion_policy, size_type, const std::vector<size_type>&, const std::vector<size_type>&, const std::vector<size_type>&, const std::vector<size_type>&, const std::vector<size_type>&) [with value_type = double; size_type = long unsigned int; execution_policy = tlib::execution::parallel_blas_policy; slicing_policy = tlib::slicing::small_policy; fusion_policy = tlib::loop_fusion::outer_policy]'
:info:test src/gtest_tlib_ttv.cpp:183:14: required from 'void check_tensor_times_vector(size_type, size_type) [with value_type = double; size_type = long unsigned int; execution_policy = tlib::execution::parallel_blas_policy; slicing_policy = tlib::slicing::small_policy; fusion_policy = tlib::loop_fusion::outer_policy; unsigned int rank = 2]'
:info:test src/gtest_tlib_ttv.cpp:299:98: required from here
:info:test ../include/tlib/detail/tensor_times_vector.h:355:28: warning: variable 'na_m' set but not used [-Wunused-but-set-variable]
:info:test 355 | auto const na_m = na[m-1];
:info:test | ^~~~
:info:test ../include/tlib/detail/tensor_times_vector.h:356:28: warning: variable 'wa_m' set but not used [-Wunused-but-set-variable]
:info:test 356 | auto const wa_m = wa[m-1];
:info:test | ^~~~
:info:test ../include/tlib/detail/tensor_times_vector.h: In instantiation of 'void tlib::detail::set_blas_threads(size_t) [with size_t = unsigned int]':
:info:test ../include/tlib/detail/tensor_times_vector.h:521:19: required from 'void tlib::detail::ttv(tlib::execution::parallel_policy, tlib::slicing::large_policy, tlib::loop_fusion::none_policy, size_t, size_t, const value_t*, const size_t*, const size_t*, const size_t*, const value_t*, const size_t*, value_t*, const size_t*, const size_t*, const size_t*) [with value_t = double; size_t = long unsigned int]'
:info:test ../include/tlib/ttv.h:92:13: required from 'void tlib::tensor_times_vector(execution_policy, slicing_policy, fusion_policy, size_t, size_t, const value_t*, const size_t*, const size_t*, const size_t*, const value_t*, const size_t*, value_t*, const size_t*, const size_t*, const size_t*) [with value_t = double; size_t = long unsigned int; execution_policy = execution::parallel_policy; slicing_policy = slicing::large_policy; fusion_policy = loop_fusion::none_policy]'
:info:test src/gtest_tlib_ttv.cpp:125:27: required from 'void ttv_check(execution_policy, slicing_policy, fusion_policy, size_type, const std::vector<size_type>&, const std::vector<size_type>&, const std::vector<size_type>&, const std::vector<size_type>&, const std::vector<size_type>&) [with value_type = double; size_type = long unsigned int; execution_policy = tlib::execution::parallel_policy; slicing_policy = tlib::slicing::large_policy; fusion_policy = tlib::loop_fusion::none_policy]'
:info:test src/gtest_tlib_ttv.cpp:183:14: required from 'void check_tensor_times_vector(size_type, size_type) [with value_type = double; size_type = long unsigned int; execution_policy = tlib::execution::parallel_policy; slicing_policy = tlib::slicing::large_policy; fusion_policy = tlib::loop_fusion::none_policy; unsigned int rank = 2]'
:info:test src/gtest_tlib_ttv.cpp:213:98: required from here
:info:test ../include/tlib/detail/tensor_times_vector.h:51:37: warning: unused parameter 'num' [-Wunused-parameter]
:info:test 51 | inline void set_blas_threads(size_t num)
:info:test | ~~~~~~~^~~
:info:test ../include/tlib/detail/tensor_times_vector.h: In instantiation of 'void tlib::detail::set_blas_threads(size_t) [with size_t = int]':
:info:test ../include/tlib/detail/tensor_times_vector.h:533:19: required from 'void tlib::detail::ttv(tlib::execution::parallel_policy, tlib::slicing::large_policy, tlib::loop_fusion::none_policy, size_t, size_t, const value_t*, const size_t*, const size_t*, const size_t*, const value_t*, const size_t*, value_t*, const size_t*, const size_t*, const size_t*) [with value_t = double; size_t = long unsigned int]'
:info:test ../include/tlib/ttv.h:92:13: required from 'void tlib::tensor_times_vector(execution_policy, slicing_policy, fusion_policy, size_t, size_t, const value_t*, const size_t*, const size_t*, const size_t*, const value_t*, const size_t*, value_t*, const size_t*, const size_t*, const size_t*) [with value_t = double; size_t = long unsigned int; execution_policy = execution::parallel_policy; slicing_policy = slicing::large_policy; fusion_policy = loop_fusion::none_policy]'
:info:test src/gtest_tlib_ttv.cpp:125:27: required from 'void ttv_check(execution_policy, slicing_policy, fusion_policy, size_type, const std::vector<size_type>&, const std::vector<size_type>&, const std::vector<size_type>&, const std::vector<size_type>&, const std::vector<size_type>&) [with value_type = double; size_type = long unsigned int; execution_policy = tlib::execution::parallel_policy; slicing_policy = tlib::slicing::large_policy; fusion_policy = tlib::loop_fusion::none_policy]'
:info:test src/gtest_tlib_ttv.cpp:183:14: required from 'void check_tensor_times_vector(size_type, size_type) [with value_type = double; size_type = long unsigned int; execution_policy = tlib::execution::parallel_policy; slicing_policy = tlib::slicing::large_policy; fusion_policy = tlib::loop_fusion::none_policy; unsigned int rank = 2]'
:info:test src/gtest_tlib_ttv.cpp:213:98: required from here
:info:test ../include/tlib/detail/tensor_times_vector.h:51:37: warning: unused parameter 'num' [-Wunused-parameter]
:info:test /opt/local/bin/g++-mp-12 -Wextra -Wall -Wpedantic -Ofast -std=c++17 -pthread -fopenmp -D_GLIBCXX_USE_CXX11_ABI=0 -c -I../include -Iinclude src/gtest_tlib_workload.cpp -o build/gtest_tlib_workload.o
:info:test In file included from ../include/tlib/detail/tensor_times_vector.h:32,
:info:test from ../include/tlib/ttv.h:21,
:info:test from src/gtest_tlib_workload.cpp:18:
:info:test ../include/tlib/detail/strides.h: In instantiation of 'void tlib::detail::compute_strides(InputIt1, InputIt1, InputIt2, OutputIt) [with InputIt1 = __gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >; InputIt2 = __gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >; OutputIt = __gnu_cxx::__normal_iterator<unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >]':
:info:test ../include/tlib/detail/strides.h:64:17: required from 'auto tlib::detail::generate_strides(const std::vector<size_type>&, const std::vector<size_type>&) [with size_type = unsigned int]'
:info:test src/gtest_tlib_workload.cpp:56:43: required from 'auto check_index_space_division(size_type, size_type) [with size_type = unsigned int; size_type rank = 3]'
:info:test src/gtest_tlib_workload.cpp:134:41: required from here
:info:test ../include/tlib/detail/strides.h:52:28: warning: comparison of integer expressions of different signedness: 'unsigned int' and 'const int' [-Wsign-compare]
:info:test 52 | for(auto r = 1u; r < n; ++r)
:info:test | ~~^~~
:info:test In file included from ../include/tlib/detail/strides.h:25:
:info:test ../include/tlib/detail/shape.h: In instantiation of 'bool tlib::detail::is_matrix(InputIt, InputIt) [with InputIt = __gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >]':
:info:test ../include/tlib/detail/strides.h:48:16: required from 'void tlib::detail::compute_strides(InputIt1, InputIt1, InputIt2, OutputIt) [with InputIt1 = __gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >; InputIt2 = __gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >; OutputIt = __gnu_cxx::__normal_iterator<unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >]'
:info:test ../include/tlib/detail/strides.h:64:17: required from 'auto tlib::detail::generate_strides(const std::vector<size_type>&, const std::vector<size_type>&) [with size_type = unsigned int]'
:info:test src/gtest_tlib_workload.cpp:56:43: required from 'auto check_index_space_division(size_type, size_type) [with size_type = unsigned int; size_type rank = 3]'
:info:test src/gtest_tlib_workload.cpp:134:41: required from here
:info:test ../include/tlib/detail/shape.h:72:37: warning: comparison of integer expressions of different signedness: 'std::__iterator_traits<__gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >, void>::difference_type' {aka 'int'} and 'unsigned int' [-Wsign-compare]
:info:test 72 | if(std::distance(begin,end) < 2u)
:info:test | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
:info:test ../include/tlib/detail/shape.h: In instantiation of 'bool tlib::detail::is_tensor(InputIt, InputIt) [with InputIt = __gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >]':
:info:test ../include/tlib/detail/strides.h:48:53: required from 'void tlib::detail::compute_strides(InputIt1, InputIt1, InputIt2, OutputIt) [with InputIt1 = __gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >; InputIt2 = __gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >; OutputIt = __gnu_cxx::__normal_iterator<unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >]'
:info:test ../include/tlib/detail/strides.h:64:17: required from 'auto tlib::detail::generate_strides(const std::vector<size_type>&, const std::vector<size_type>&) [with size_type = unsigned int]'
:info:test src/gtest_tlib_workload.cpp:56:43: required from 'auto check_index_space_division(size_type, size_type) [with size_type = unsigned int; size_type rank = 3]'
:info:test src/gtest_tlib_workload.cpp:134:41: required from here
:info:test ../include/tlib/detail/shape.h:86:37: warning: comparison of integer expressions of different signedness: 'std::__iterator_traits<__gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >, void>::difference_type' {aka 'int'} and 'unsigned int' [-Wsign-compare]
:info:test 86 | if(std::distance(begin,end) < 3u)
:info:test | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
:info:test /opt/local/bin/g++-mp-12 -Wextra -Wall -Wpedantic -Ofast -std=c++17 -pthread -fopenmp -D_GLIBCXX_USE_CXX11_ABI=0 -c -I../include -Iinclude src/main.cpp -o build/main.o
:info:test /opt/local/bin/g++-mp-12 -Wextra -Wall -Wpedantic -Ofast -std=c++17 -pthread -fopenmp -D_GLIBCXX_USE_CXX11_ABI=0 build/gtest_tlib_layout.o build/gtest_tlib_mtv.o build/gtest_tlib_shape.o build/gtest_tlib_strides.o build/gtest_tlib_ttv.o build/gtest_tlib_workload.o build/main.o -lgtest -lpthread -lgomp -lpthread -lm -lopenblas -o bin/main
Tests log: ttv_tests_10.6.8_rosetta.txt
@hrhee I noticed you have extra commits in your fork. Has this problem been addressed already?
[==========] 31 tests from 5 test suites ran. (95552 ms total) [ PASSED ] 28 tests. [ FAILED ] 3 tests, listed below: [ FAILED ] MatrixTimesVector.Gemv [ FAILED ] MatrixTimesVector.GemvParallel [ FAILED ] MatrixTimesVector.GemvBLAS 3 FAILED TESTS
Hmmm. I will have a look into it. Thanks for pointing this out.
Build log:
:info:test /opt/local/bin/g++-mp-12 -Wextra -Wall -Wpedantic -Ofast -std=c++17 -pthread -fopenmp -D_GLIBCXX_USE_CXX11_ABI=0 -c -I../include -Iinclude src/gtest_tlib_layout.cpp -o build/gtest_tlib_layout.o :info:test /opt/local/bin/g++-mp-12 -Wextra -Wall -Wpedantic -Ofast -std=c++17 -pthread -fopenmp -D_GLIBCXX_USE_CXX11_ABI=0 -c -I../include -Iinclude src/gtest_tlib_mtv.cpp -o build/gtest_tlib_mtv.o :info:test /opt/local/bin/g++-mp-12 -Wextra -Wall -Wpedantic -Ofast -std=c++17 -pthread -fopenmp -D_GLIBCXX_USE_CXX11_ABI=0 -c -I../include -Iinclude src/gtest_tlib_shape.cpp -o build/gtest_tlib_shape.o :info:test In file included from src/gtest_tlib_shape.cpp:9: :info:test ../include/tlib/detail/shape.h: In instantiation of 'bool tlib::detail::is_matrix(InputIt, InputIt) [with InputIt = __gnu_cxx::__normal_iterator<unsigned int*, std::vector<unsigned int> >]': :info:test src/gtest_tlib_shape.cpp:84:3: required from here :info:test ../include/tlib/detail/shape.h:72:37: warning: comparison of integer expressions of different signedness: 'std::__iterator_traits<__gnu_cxx::__normal_iterator<unsigned int*, std::vector<unsigned int> >, void>::difference_type' {aka 'int'} and 'unsigned int' [-Wsign-compare] :info:test 72 | if(std::distance(begin,end) < 2u) :info:test | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~ :info:test ../include/tlib/detail/shape.h: In instantiation of 'bool tlib::detail::is_tensor(InputIt, InputIt) [with InputIt = __gnu_cxx::__normal_iterator<unsigned int*, std::vector<unsigned int> >]': :info:test src/gtest_tlib_shape.cpp:99:3: required from here :info:test ../include/tlib/detail/shape.h:86:37: warning: comparison of integer expressions of different signedness: 'std::__iterator_traits<__gnu_cxx::__normal_iterator<unsigned int*, std::vector<unsigned int> >, void>::difference_type' {aka 'int'} and 'unsigned int' [-Wsign-compare] :info:test 86 | if(std::distance(begin,end) < 3u) :info:test | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~ :info:test /opt/local/bin/g++-mp-12 -Wextra -Wall -Wpedantic -Ofast -std=c++17 -pthread -fopenmp -D_GLIBCXX_USE_CXX11_ABI=0 -c -I../include -Iinclude src/gtest_tlib_strides.cpp -o build/gtest_tlib_strides.o :info:test In file included from src/gtest_tlib_strides.cpp:25: :info:test ../include/tlib/detail/strides.h: In instantiation of 'void tlib::detail::compute_strides(InputIt1, InputIt1, InputIt2, OutputIt) [with InputIt1 = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >; InputIt2 = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >; OutputIt = __gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int> >]': :info:test ../include/tlib/detail/strides.h:64:17: required from 'auto tlib::detail::generate_strides(const std::vector<T>&, const std::vector<T>&) [with size_type = long unsigned int]' :info:test src/gtest_tlib_strides.cpp:35:42: required from here :info:test ../include/tlib/detail/strides.h:52:28: warning: comparison of integer expressions of different signedness: 'unsigned int' and 'const int' [-Wsign-compare] :info:test 52 | for(auto r = 1u; r < n; ++r) :info:test | ~~^~~ :info:test In file included from ../include/tlib/detail/strides.h:25: :info:test ../include/tlib/detail/shape.h: In instantiation of 'bool tlib::detail::is_matrix(InputIt, InputIt) [with InputIt = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >]': :info:test src/gtest_tlib_strides.cpp:74:3: required from here :info:test ../include/tlib/detail/shape.h:72:37: warning: comparison of integer expressions of different signedness: 'std::__iterator_traits<__gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >, void>::difference_type' {aka 'int'} and 'unsigned int' [-Wsign-compare] :info:test 72 | if(std::distance(begin,end) < 2u) :info:test | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~ :info:test ../include/tlib/detail/shape.h: In instantiation of 'bool tlib::detail::is_tensor(InputIt, InputIt) [with InputIt = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >]': :info:test src/gtest_tlib_strides.cpp:98:3: required from 'StridesTest_TensorShape_Test::TestBody()::<lambda(std::size_t, const auto:37&, const auto:38&, const auto:39&, const auto:40&)> [with auto:37 = std::vector<long unsigned int>; auto:38 = std::vector<long unsigned int>; auto:39 = std::vector<long unsigned int>; auto:40 = std::vector<long unsigned int>; std::size_t = long unsigned int]' :info:test src/gtest_tlib_strides.cpp:113:16: required from here :info:test ../include/tlib/detail/shape.h:86:37: warning: comparison of integer expressions of different signedness: 'std::__iterator_traits<__gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >, void>::difference_type' {aka 'int'} and 'unsigned int' [-Wsign-compare] :info:test 86 | if(std::distance(begin,end) < 3u) :info:test | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~ :info:test /opt/local/bin/g++-mp-12 -Wextra -Wall -Wpedantic -Ofast -std=c++17 -pthread -fopenmp -D_GLIBCXX_USE_CXX11_ABI=0 -c -I../include -Iinclude src/gtest_tlib_ttv.cpp -o build/gtest_tlib_ttv.o :info:test In file included from ../include/tlib/detail/tensor_times_vector.h:32, :info:test from ../include/tlib/ttv.h:21, :info:test from src/gtest_tlib_ttv.cpp:18: :info:test ../include/tlib/detail/strides.h: In instantiation of 'void tlib::detail::compute_strides(InputIt1, InputIt1, InputIt2, OutputIt) [with InputIt1 = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >; InputIt2 = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >; OutputIt = __gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int> >]': :info:test ../include/tlib/detail/strides.h:64:17: required from 'auto tlib::detail::generate_strides(const std::vector<size_type>&, const std::vector<size_type>&) [with size_type = long unsigned int]' :info:test src/gtest_tlib_ttv.cpp:171:45: required from 'void check_tensor_times_vector(size_type, size_type) [with value_type = double; size_type = long unsigned int; execution_policy = tlib::execution::sequential_policy; slicing_policy = tlib::slicing::large_policy; fusion_policy = tlib::loop_fusion::none_policy; unsigned int rank = 2]' :info:test src/gtest_tlib_ttv.cpp:199:98: required from here :info:test ../include/tlib/detail/strides.h:52:28: warning: comparison of integer expressions of different signedness: 'unsigned int' and 'const int' [-Wsign-compare] :info:test 52 | for(auto r = 1u; r < n; ++r) :info:test | ~~^~~ :info:test In file included from ../include/tlib/detail/strides.h:25: :info:test ../include/tlib/detail/shape.h: In instantiation of 'bool tlib::detail::is_matrix(InputIt, InputIt) [with InputIt = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >]': :info:test ../include/tlib/detail/strides.h:48:16: required from 'void tlib::detail::compute_strides(InputIt1, InputIt1, InputIt2, OutputIt) [with InputIt1 = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >; InputIt2 = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >; OutputIt = __gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int> >]' :info:test ../include/tlib/detail/strides.h:64:17: required from 'auto tlib::detail::generate_strides(const std::vector<size_type>&, const std::vector<size_type>&) [with size_type = long unsigned int]' :info:test src/gtest_tlib_ttv.cpp:171:45: required from 'void check_tensor_times_vector(size_type, size_type) [with value_type = double; size_type = long unsigned int; execution_policy = tlib::execution::sequential_policy; slicing_policy = tlib::slicing::large_policy; fusion_policy = tlib::loop_fusion::none_policy; unsigned int rank = 2]' :info:test src/gtest_tlib_ttv.cpp:199:98: required from here :info:test ../include/tlib/detail/shape.h:72:37: warning: comparison of integer expressions of different signedness: 'std::__iterator_traits<__gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >, void>::difference_type' {aka 'int'} and 'unsigned int' [-Wsign-compare] :info:test 72 | if(std::distance(begin,end) < 2u) :info:test | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~ :info:test ../include/tlib/detail/shape.h: In instantiation of 'bool tlib::detail::is_tensor(InputIt, InputIt) [with InputIt = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >]': :info:test ../include/tlib/detail/strides.h:48:53: required from 'void tlib::detail::compute_strides(InputIt1, InputIt1, InputIt2, OutputIt) [with InputIt1 = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >; InputIt2 = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >; OutputIt = __gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int> >]' :info:test ../include/tlib/detail/strides.h:64:17: required from 'auto tlib::detail::generate_strides(const std::vector<size_type>&, const std::vector<size_type>&) [with size_type = long unsigned int]' :info:test src/gtest_tlib_ttv.cpp:171:45: required from 'void check_tensor_times_vector(size_type, size_type) [with value_type = double; size_type = long unsigned int; execution_policy = tlib::execution::sequential_policy; slicing_policy = tlib::slicing::large_policy; fusion_policy = tlib::loop_fusion::none_policy; unsigned int rank = 2]' :info:test src/gtest_tlib_ttv.cpp:199:98: required from here :info:test ../include/tlib/detail/shape.h:86:37: warning: comparison of integer expressions of different signedness: 'std::__iterator_traits<__gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >, void>::difference_type' {aka 'int'} and 'unsigned int' [-Wsign-compare] :info:test 86 | if(std::distance(begin,end) < 3u) :info:test | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~ :info:test ../include/tlib/detail/tensor_times_vector.h: In instantiation of 'void tlib::detail::ttv(tlib::execution::parallel_blas_policy, tlib::slicing::small_policy, tlib::loop_fusion::outer_policy, size_t, size_t, const value_t*, const size_t*, const size_t*, const size_t*, const value_t*, const size_t*, value_t*, const size_t*, const size_t*, const size_t*) [with value_t = double; size_t = long unsigned int]': :info:test ../include/tlib/ttv.h:92:13: required from 'void tlib::tensor_times_vector(execution_policy, slicing_policy, fusion_policy, size_t, size_t, const value_t*, const size_t*, const size_t*, const size_t*, const value_t*, const size_t*, value_t*, const size_t*, const size_t*, const size_t*) [with value_t = double; size_t = long unsigned int; execution_policy = execution::parallel_blas_policy; slicing_policy = slicing::small_policy; fusion_policy = loop_fusion::outer_policy]' :info:test src/gtest_tlib_ttv.cpp:125:27: required from 'void ttv_check(execution_policy, slicing_policy, fusion_policy, size_type, const std::vector<size_type>&, const std::vector<size_type>&, const std::vector<size_type>&, const std::vector<size_type>&, const std::vector<size_type>&) [with value_type = double; size_type = long unsigned int; execution_policy = tlib::execution::parallel_blas_policy; slicing_policy = tlib::slicing::small_policy; fusion_policy = tlib::loop_fusion::outer_policy]' :info:test src/gtest_tlib_ttv.cpp:183:14: required from 'void check_tensor_times_vector(size_type, size_type) [with value_type = double; size_type = long unsigned int; execution_policy = tlib::execution::parallel_blas_policy; slicing_policy = tlib::slicing::small_policy; fusion_policy = tlib::loop_fusion::outer_policy; unsigned int rank = 2]' :info:test src/gtest_tlib_ttv.cpp:299:98: required from here :info:test ../include/tlib/detail/tensor_times_vector.h:355:28: warning: variable 'na_m' set but not used [-Wunused-but-set-variable] :info:test 355 | auto const na_m = na[m-1]; :info:test | ^~~~ :info:test ../include/tlib/detail/tensor_times_vector.h:356:28: warning: variable 'wa_m' set but not used [-Wunused-but-set-variable] :info:test 356 | auto const wa_m = wa[m-1]; :info:test | ^~~~ :info:test ../include/tlib/detail/tensor_times_vector.h: In instantiation of 'void tlib::detail::set_blas_threads(size_t) [with size_t = unsigned int]': :info:test ../include/tlib/detail/tensor_times_vector.h:521:19: required from 'void tlib::detail::ttv(tlib::execution::parallel_policy, tlib::slicing::large_policy, tlib::loop_fusion::none_policy, size_t, size_t, const value_t*, const size_t*, const size_t*, const size_t*, const value_t*, const size_t*, value_t*, const size_t*, const size_t*, const size_t*) [with value_t = double; size_t = long unsigned int]' :info:test ../include/tlib/ttv.h:92:13: required from 'void tlib::tensor_times_vector(execution_policy, slicing_policy, fusion_policy, size_t, size_t, const value_t*, const size_t*, const size_t*, const size_t*, const value_t*, const size_t*, value_t*, const size_t*, const size_t*, const size_t*) [with value_t = double; size_t = long unsigned int; execution_policy = execution::parallel_policy; slicing_policy = slicing::large_policy; fusion_policy = loop_fusion::none_policy]' :info:test src/gtest_tlib_ttv.cpp:125:27: required from 'void ttv_check(execution_policy, slicing_policy, fusion_policy, size_type, const std::vector<size_type>&, const std::vector<size_type>&, const std::vector<size_type>&, const std::vector<size_type>&, const std::vector<size_type>&) [with value_type = double; size_type = long unsigned int; execution_policy = tlib::execution::parallel_policy; slicing_policy = tlib::slicing::large_policy; fusion_policy = tlib::loop_fusion::none_policy]' :info:test src/gtest_tlib_ttv.cpp:183:14: required from 'void check_tensor_times_vector(size_type, size_type) [with value_type = double; size_type = long unsigned int; execution_policy = tlib::execution::parallel_policy; slicing_policy = tlib::slicing::large_policy; fusion_policy = tlib::loop_fusion::none_policy; unsigned int rank = 2]' :info:test src/gtest_tlib_ttv.cpp:213:98: required from here :info:test ../include/tlib/detail/tensor_times_vector.h:51:37: warning: unused parameter 'num' [-Wunused-parameter] :info:test 51 | inline void set_blas_threads(size_t num) :info:test | ~~~~~~~^~~ :info:test ../include/tlib/detail/tensor_times_vector.h: In instantiation of 'void tlib::detail::set_blas_threads(size_t) [with size_t = int]': :info:test ../include/tlib/detail/tensor_times_vector.h:533:19: required from 'void tlib::detail::ttv(tlib::execution::parallel_policy, tlib::slicing::large_policy, tlib::loop_fusion::none_policy, size_t, size_t, const value_t*, const size_t*, const size_t*, const size_t*, const value_t*, const size_t*, value_t*, const size_t*, const size_t*, const size_t*) [with value_t = double; size_t = long unsigned int]' :info:test ../include/tlib/ttv.h:92:13: required from 'void tlib::tensor_times_vector(execution_policy, slicing_policy, fusion_policy, size_t, size_t, const value_t*, const size_t*, const size_t*, const size_t*, const value_t*, const size_t*, value_t*, const size_t*, const size_t*, const size_t*) [with value_t = double; size_t = long unsigned int; execution_policy = execution::parallel_policy; slicing_policy = slicing::large_policy; fusion_policy = loop_fusion::none_policy]' :info:test src/gtest_tlib_ttv.cpp:125:27: required from 'void ttv_check(execution_policy, slicing_policy, fusion_policy, size_type, const std::vector<size_type>&, const std::vector<size_type>&, const std::vector<size_type>&, const std::vector<size_type>&, const std::vector<size_type>&) [with value_type = double; size_type = long unsigned int; execution_policy = tlib::execution::parallel_policy; slicing_policy = tlib::slicing::large_policy; fusion_policy = tlib::loop_fusion::none_policy]' :info:test src/gtest_tlib_ttv.cpp:183:14: required from 'void check_tensor_times_vector(size_type, size_type) [with value_type = double; size_type = long unsigned int; execution_policy = tlib::execution::parallel_policy; slicing_policy = tlib::slicing::large_policy; fusion_policy = tlib::loop_fusion::none_policy; unsigned int rank = 2]' :info:test src/gtest_tlib_ttv.cpp:213:98: required from here :info:test ../include/tlib/detail/tensor_times_vector.h:51:37: warning: unused parameter 'num' [-Wunused-parameter] :info:test /opt/local/bin/g++-mp-12 -Wextra -Wall -Wpedantic -Ofast -std=c++17 -pthread -fopenmp -D_GLIBCXX_USE_CXX11_ABI=0 -c -I../include -Iinclude src/gtest_tlib_workload.cpp -o build/gtest_tlib_workload.o :info:test In file included from ../include/tlib/detail/tensor_times_vector.h:32, :info:test from ../include/tlib/ttv.h:21, :info:test from src/gtest_tlib_workload.cpp:18: :info:test ../include/tlib/detail/strides.h: In instantiation of 'void tlib::detail::compute_strides(InputIt1, InputIt1, InputIt2, OutputIt) [with InputIt1 = __gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >; InputIt2 = __gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >; OutputIt = __gnu_cxx::__normal_iterator<unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >]': :info:test ../include/tlib/detail/strides.h:64:17: required from 'auto tlib::detail::generate_strides(const std::vector<size_type>&, const std::vector<size_type>&) [with size_type = unsigned int]' :info:test src/gtest_tlib_workload.cpp:56:43: required from 'auto check_index_space_division(size_type, size_type) [with size_type = unsigned int; size_type rank = 3]' :info:test src/gtest_tlib_workload.cpp:134:41: required from here :info:test ../include/tlib/detail/strides.h:52:28: warning: comparison of integer expressions of different signedness: 'unsigned int' and 'const int' [-Wsign-compare] :info:test 52 | for(auto r = 1u; r < n; ++r) :info:test | ~~^~~ :info:test In file included from ../include/tlib/detail/strides.h:25: :info:test ../include/tlib/detail/shape.h: In instantiation of 'bool tlib::detail::is_matrix(InputIt, InputIt) [with InputIt = __gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >]': :info:test ../include/tlib/detail/strides.h:48:16: required from 'void tlib::detail::compute_strides(InputIt1, InputIt1, InputIt2, OutputIt) [with InputIt1 = __gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >; InputIt2 = __gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >; OutputIt = __gnu_cxx::__normal_iterator<unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >]' :info:test ../include/tlib/detail/strides.h:64:17: required from 'auto tlib::detail::generate_strides(const std::vector<size_type>&, const std::vector<size_type>&) [with size_type = unsigned int]' :info:test src/gtest_tlib_workload.cpp:56:43: required from 'auto check_index_space_division(size_type, size_type) [with size_type = unsigned int; size_type rank = 3]' :info:test src/gtest_tlib_workload.cpp:134:41: required from here :info:test ../include/tlib/detail/shape.h:72:37: warning: comparison of integer expressions of different signedness: 'std::__iterator_traits<__gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >, void>::difference_type' {aka 'int'} and 'unsigned int' [-Wsign-compare] :info:test 72 | if(std::distance(begin,end) < 2u) :info:test | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~ :info:test ../include/tlib/detail/shape.h: In instantiation of 'bool tlib::detail::is_tensor(InputIt, InputIt) [with InputIt = __gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >]': :info:test ../include/tlib/detail/strides.h:48:53: required from 'void tlib::detail::compute_strides(InputIt1, InputIt1, InputIt2, OutputIt) [with InputIt1 = __gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >; InputIt2 = __gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >; OutputIt = __gnu_cxx::__normal_iterator<unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >]' :info:test ../include/tlib/detail/strides.h:64:17: required from 'auto tlib::detail::generate_strides(const std::vector<size_type>&, const std::vector<size_type>&) [with size_type = unsigned int]' :info:test src/gtest_tlib_workload.cpp:56:43: required from 'auto check_index_space_division(size_type, size_type) [with size_type = unsigned int; size_type rank = 3]' :info:test src/gtest_tlib_workload.cpp:134:41: required from here :info:test ../include/tlib/detail/shape.h:86:37: warning: comparison of integer expressions of different signedness: 'std::__iterator_traits<__gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >, void>::difference_type' {aka 'int'} and 'unsigned int' [-Wsign-compare] :info:test 86 | if(std::distance(begin,end) < 3u) :info:test | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~ :info:test /opt/local/bin/g++-mp-12 -Wextra -Wall -Wpedantic -Ofast -std=c++17 -pthread -fopenmp -D_GLIBCXX_USE_CXX11_ABI=0 -c -I../include -Iinclude src/main.cpp -o build/main.o :info:test /opt/local/bin/g++-mp-12 -Wextra -Wall -Wpedantic -Ofast -std=c++17 -pthread -fopenmp -D_GLIBCXX_USE_CXX11_ABI=0 build/gtest_tlib_layout.o build/gtest_tlib_mtv.o build/gtest_tlib_shape.o build/gtest_tlib_strides.o build/gtest_tlib_ttv.o build/gtest_tlib_workload.o build/main.o -lgtest -lpthread -lgomp -lpthread -lm -lopenblas -o bin/main
I will get after the warnings. However, they should not cause any tests to fails ...