Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix Issues detected by Valgrind #273

Closed
thoasm opened this issue Mar 18, 2019 · 0 comments · Fixed by #284
Closed

Fix Issues detected by Valgrind #273

thoasm opened this issue Mar 18, 2019 · 0 comments · Fixed by #284
Assignees
Labels
is:bug Something looks wrong. mod:cuda This is related to the CUDA module.

Comments

@thoasm
Copy link
Member

thoasm commented Mar 18, 2019

Currently, we have two potential memory problems according to Valgrind:

In cuda/test/matrix/csr_kernels.cpp (see the full Valgrind output):

Valgrind reported problems for csr_kernels.cpp
==6701== Memcheck, a memory error detector
==6701== Copyright (C) 2002-2015, and GNU GPL'd, by Julian Seward et al.
==6701== Using Valgrind-3.11.0 and LibVEX; rerun with -h for copyright info
==6701== Command: /builds/ginkgo-project/ginkgo-public-ci/build/cuda/test/matrix/csr_kernels
==6701== Parent PID: 9
==6701== 
==6701== Warning: noted but unhandled ioctl 0x30000001 with no size/direction hints.
==6701==    This could cause spurious value errors to appear.
==6701==    See README_MISSING_SYSCALL_OR_IOCTL for guidance on writing a proper wrapper.
==6701== Warning: noted but unhandled ioctl 0x27 with no size/direction hints.
==6701==    This could cause spurious value errors to appear.
==6701==    See README_MISSING_SYSCALL_OR_IOCTL for guidance on writing a proper wrapper.
==6701== Warning: noted but unhandled ioctl 0x7ff with no size/direction hints.
==6701==    This could cause spurious value errors to appear.
==6701==    See README_MISSING_SYSCALL_OR_IOCTL for guidance on writing a proper wrapper.
==6701== Warning: noted but unhandled ioctl 0x25 with no size/direction hints.
==6701==    This could cause spurious value errors to appear.
==6701==    See README_MISSING_SYSCALL_OR_IOCTL for guidance on writing a proper wrapper.
==6701== Warning: noted but unhandled ioctl 0x17 with no size/direction hints.
==6701==    This could cause spurious value errors to appear.
==6701==    See README_MISSING_SYSCALL_OR_IOCTL for guidance on writing a proper wrapper.
==6701== Warning: set address range perms: large range [0x1000000000, 0x2100000000) (noaccess)
==6701== Warning: set address range perms: large range [0x200000000, 0x600000000) (noaccess)
==6701== Warning: set address range perms: large range [0x11f56000, 0x31f55000) (noaccess)
==6701== Warning: noted but unhandled ioctl 0x19 with no size/direction hints.
==6701==    This could cause spurious value errors to appear.
==6701==    See README_MISSING_SYSCALL_OR_IOCTL for guidance on writing a proper wrapper.
==6701== Warning: noted but unhandled ioctl 0x21 with no size/direction hints.
==6701==    This could cause spurious value errors to appear.
==6701==    See README_MISSING_SYSCALL_OR_IOCTL for guidance on writing a proper wrapper.
==6701== Warning: noted but unhandled ioctl 0x1b with no size/direction hints.
==6701==    This could cause spurious value errors to appear.
==6701==    See README_MISSING_SYSCALL_OR_IOCTL for guidance on writing a proper wrapper.
==6701== Warning: noted but unhandled ioctl 0x42 with no size/direction hints.
==6701==    This could cause spurious value errors to appear.
==6701==    See README_MISSING_SYSCALL_OR_IOCTL for guidance on writing a proper wrapper.
==6701== Warning: noted but unhandled ioctl 0x22 with no size/direction hints.
==6701==    This could cause spurious value errors to appear.
==6701==    See README_MISSING_SYSCALL_OR_IOCTL for guidance on writing a proper wrapper.
UMR ==6701== Invalid read of size 4
==6701==    at 0x4A2C85: gko::matrix::Csr::automatical::process(gko::Array const&, gko::Array*) (csr.hpp:236)
==6701==    by 0x587B258: gko::matrix::Csr::make_srow() (csr.hpp:473)
==6701==    by 0x58CB2C7: gko::matrix::Dense::move_to(gko::matrix::Csr*) (dense.cpp:315)
==6701==    by 0x4A52BC: gko::EnablePolymorphicObject, gko::LinOp>::copy_from_impl(std::unique_ptr >) (polymorphic_object.hpp:527)
==6701==    by 0x47C947: gko::EnableAbstractPolymorphicObject, gko::LinOp>::copy_from(std::unique_ptr >) (polymorphic_object.hpp:323)
==6701==    by 0x46F41A: (anonymous namespace)::Csr::set_up_apply_data(std::shared_ptr::strategy_type>, int) (csr_kernels.cpp:90)
==6701==    by 0x472435: (anonymous namespace)::Csr_SimpleApplyIsEquivalentToRefWithAutomatical_Test::TestBody() (csr_kernels.cpp:235)
==6701==    by 0x4D97FE: void testing::internal::HandleSehExceptionsInMethodIfSupported(testing::Test*, void (testing::Test::*)(), char const*) (gtest.cc:2432)
==6701==    by 0x4D3D9A: void testing::internal::HandleExceptionsInMethodIfSupported(testing::Test*, void (testing::Test::*)(), char const*) (gtest.cc:2468)
==6701==    by 0x4B52ED: testing::Test::Run() (gtest.cc:2506)
==6701==    by 0x4B5C35: testing::TestInfo::Run() (gtest.cc:2682)
==6701==    by 0x4B626A: testing::TestCase::Run() (gtest.cc:2800)
==6701==  Address 0x1c4461b4 is 0 bytes after a block of size 2,132 alloc'd
==6701==    at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==6701==    by 0x6B2A209: gko::OmpExecutor::raw_alloc(unsigned long) const (executor.cpp:65)
==6701==    by 0x491969: int* gko::Executor::alloc(unsigned long) const (executor.hpp:458)
==6701==    by 0x4A8AAC: gko::Array::resize_and_reset(unsigned long) (array.hpp:376)
==6701==    by 0x4A6078: gko::Array::operator=(gko::Array const&) (array.hpp:297)
==6701==    by 0x4A2C58: gko::matrix::Csr::automatical::process(gko::Array const&, gko::Array*) (csr.hpp:234)
==6701==    by 0x587B258: gko::matrix::Csr::make_srow() (csr.hpp:473)
==6701==    by 0x58CB2C7: gko::matrix::Dense::move_to(gko::matrix::Csr*) (dense.cpp:315)
==6701==    by 0x4A52BC: gko::EnablePolymorphicObject, gko::LinOp>::copy_from_impl(std::unique_ptr >) (polymorphic_object.hpp:527)
==6701==    by 0x47C947: gko::EnableAbstractPolymorphicObject, gko::LinOp>::copy_from(std::unique_ptr >) (polymorphic_object.hpp:323)
==6701==    by 0x46F41A: (anonymous namespace)::Csr::set_up_apply_data(std::shared_ptr::strategy_type>, int) (csr_kernels.cpp:90)
==6701==    by 0x472435: (anonymous namespace)::Csr_SimpleApplyIsEquivalentToRefWithAutomatical_Test::TestBody() (csr_kernels.cpp:235)
==6701== 
UMR ==6701== Invalid read of size 4
==6701==    at 0x4A2C85: gko::matrix::Csr::automatical::process(gko::Array const&, gko::Array*) (csr.hpp:236)
==6701==    by 0x587B258: gko::matrix::Csr::make_srow() (csr.hpp:473)
==6701==    by 0x587A9D1: gko::matrix::Csr::transpose() const (csr.cpp:205)
==6701==    by 0x4744EB: (anonymous namespace)::Csr_TransposeIsEquivalentToRef_Test::TestBody() (csr_kernels.cpp:314)
==6701==    by 0x4D97FE: void testing::internal::HandleSehExceptionsInMethodIfSupported(testing::Test*, void (testing::Test::*)(), char const*) (gtest.cc:2432)
==6701==    by 0x4D3D9A: void testing::internal::HandleExceptionsInMethodIfSupported(testing::Test*, void (testing::Test::*)(), char const*) (gtest.cc:2468)
==6701==    by 0x4B52ED: testing::Test::Run() (gtest.cc:2506)
==6701==    by 0x4B5C35: testing::TestInfo::Run() (gtest.cc:2682)
==6701==    by 0x4B626A: testing::TestCase::Run() (gtest.cc:2800)
==6701==    by 0x4C0155: testing::internal::UnitTestImpl::RunAllTests() (gtest.cc:5124)
==6701==    by 0x4DA9B0: bool testing::internal::HandleSehExceptionsInMethodIfSupported(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) (gtest.cc:2432)
==6701==    by 0x4D4BFA: bool testing::internal::HandleExceptionsInMethodIfSupported(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) (gtest.cc:2468)
==6701==  Address 0x321a4e10 is 0 bytes after a block of size 928 alloc'd
==6701==    at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==6701==    by 0x6B2A209: gko::OmpExecutor::raw_alloc(unsigned long) const (executor.cpp:65)
==6701==    by 0x491969: int* gko::Executor::alloc(unsigned long) const (executor.hpp:458)
==6701==    by 0x4A8AAC: gko::Array::resize_and_reset(unsigned long) (array.hpp:376)
==6701==    by 0x4A6078: gko::Array::operator=(gko::Array const&) (array.hpp:297)
==6701==    by 0x4A2C58: gko::matrix::Csr::automatical::process(gko::Array const&, gko::Array*) (csr.hpp:234)
==6701==    by 0x587B258: gko::matrix::Csr::make_srow() (csr.hpp:473)
==6701==    by 0x587A9D1: gko::matrix::Csr::transpose() const (csr.cpp:205)
==6701==    by 0x4744EB: (anonymous namespace)::Csr_TransposeIsEquivalentToRef_Test::TestBody() (csr_kernels.cpp:314)
==6701==    by 0x4D97FE: void testing::internal::HandleSehExceptionsInMethodIfSupported(testing::Test*, void (testing::Test::*)(), char const*) (gtest.cc:2432)
==6701==    by 0x4D3D9A: void testing::internal::HandleExceptionsInMethodIfSupported(testing::Test*, void (testing::Test::*)(), char const*) (gtest.cc:2468)
==6701==    by 0x4B52ED: testing::Test::Run() (gtest.cc:2506)
==6701== 
UMR ==6701== Invalid read of size 4
==6701==    at 0x4A2C85: gko::matrix::Csr::automatical::process(gko::Array const&, gko::Array*) (csr.hpp:236)
==6701==    by 0x587B258: gko::matrix::Csr::make_srow() (csr.hpp:473)
==6701==    by 0x587A9D1: gko::matrix::Csr::transpose() const (csr.cpp:205)
==6701==    by 0x474519: (anonymous namespace)::Csr_TransposeIsEquivalentToRef_Test::TestBody() (csr_kernels.cpp:315)
==6701==    by 0x4D97FE: void testing::internal::HandleSehExceptionsInMethodIfSupported(testing::Test*, void (testing::Test::*)(), char const*) (gtest.cc:2432)
==6701==    by 0x4D3D9A: void testing::internal::HandleExceptionsInMethodIfSupported(testing::Test*, void (testing::Test::*)(), char const*) (gtest.cc:2468)
==6701==    by 0x4B52ED: testing::Test::Run() (gtest.cc:2506)
==6701==    by 0x4B5C35: testing::TestInfo::Run() (gtest.cc:2682)
==6701==    by 0x4B626A: testing::TestCase::Run() (gtest.cc:2800)
==6701==    by 0x4C0155: testing::internal::UnitTestImpl::RunAllTests() (gtest.cc:5124)
==6701==    by 0x4DA9B0: bool testing::internal::HandleSehExceptionsInMethodIfSupported(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) (gtest.cc:2432)
==6701==    by 0x4D4BFA: bool testing::internal::HandleExceptionsInMethodIfSupported(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) (gtest.cc:2468)
==6701==  Address 0x1c6e4680 is 0 bytes after a block of size 928 alloc'd
==6701==    at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==6701==    by 0x6B2A209: gko::OmpExecutor::raw_alloc(unsigned long) const (executor.cpp:65)
==6701==    by 0x491969: int* gko::Executor::alloc(unsigned long) const (executor.hpp:458)
==6701==    by 0x4A8AAC: gko::Array::resize_and_reset(unsigned long) (array.hpp:376)
==6701==    by 0x4A6078: gko::Array::operator=(gko::Array const&) (array.hpp:297)
==6701==    by 0x4A2C58: gko::matrix::Csr::automatical::process(gko::Array const&, gko::Array*) (csr.hpp:234)
==6701==    by 0x587B258: gko::matrix::Csr::make_srow() (csr.hpp:473)
==6701==    by 0x587A9D1: gko::matrix::Csr::transpose() const (csr.cpp:205)
==6701==    by 0x474519: (anonymous namespace)::Csr_TransposeIsEquivalentToRef_Test::TestBody() (csr_kernels.cpp:315)
==6701==    by 0x4D97FE: void testing::internal::HandleSehExceptionsInMethodIfSupported(testing::Test*, void (testing::Test::*)(), char const*) (gtest.cc:2432)
==6701==    by 0x4D3D9A: void testing::internal::HandleExceptionsInMethodIfSupported(testing::Test*, void (testing::Test::*)(), char const*) (gtest.cc:2468)
==6701==    by 0x4B52ED: testing::Test::Run() (gtest.cc:2506)
==6701== 
UMR ==6701== Invalid read of size 4
==6701==    at 0x4A2741: gko::matrix::Csr, int>::automatical::process(gko::Array const&, gko::Array*) (csr.hpp:236)
==6701==    by 0x587FE32: gko::matrix::Csr, int>::make_srow() (csr.hpp:473)
==6701==    by 0x58D27E3: gko::matrix::Dense >::move_to(gko::matrix::Csr, int>*) (dense.cpp:315)
==6701==    by 0x4A4A1C: gko::EnablePolymorphicObject, int>, gko::LinOp>::copy_from_impl(std::unique_ptr >) (polymorphic_object.hpp:527)
==6701==    by 0x47D067: gko::EnableAbstractPolymorphicObject, int>, gko::LinOp>::copy_from(std::unique_ptr >) (polymorphic_object.hpp:323)
==6701==    by 0x46F919: (anonymous namespace)::Csr::set_up_apply_complex_data(std::shared_ptr, int>::strategy_type>) (csr_kernels.cpp:111)
==6701==    by 0x474914: (anonymous namespace)::Csr_ConjugateTransposeIsEquivalentToRef_Test::TestBody() (csr_kernels.cpp:324)
==6701==    by 0x4D97FE: void testing::internal::HandleSehExceptionsInMethodIfSupported(testing::Test*, void (testing::Test::*)(), char const*) (gtest.cc:2432)
==6701==    by 0x4D3D9A: void testing::internal::HandleExceptionsInMethodIfSupported(testing::Test*, void (testing::Test::*)(), char const*) (gtest.cc:2468)
==6701==    by 0x4B52ED: testing::Test::Run() (gtest.cc:2506)
==6701==    by 0x4B5C35: testing::TestInfo::Run() (gtest.cc:2682)
==6701==    by 0x4B626A: testing::TestCase::Run() (gtest.cc:2800)
==6701==  Address 0x14495964 is 0 bytes after a block of size 2,132 alloc'd
==6701==    at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==6701==    by 0x6B2A209: gko::OmpExecutor::raw_alloc(unsigned long) const (executor.cpp:65)
==6701==    by 0x491969: int* gko::Executor::alloc(unsigned long) const (executor.hpp:458)
==6701==    by 0x4A8AAC: gko::Array::resize_and_reset(unsigned long) (array.hpp:376)
==6701==    by 0x4A6078: gko::Array::operator=(gko::Array const&) (array.hpp:297)
==6701==    by 0x4A2714: gko::matrix::Csr, int>::automatical::process(gko::Array const&, gko::Array*) (csr.hpp:234)
==6701==    by 0x587FE32: gko::matrix::Csr, int>::make_srow() (csr.hpp:473)
==6701==    by 0x58D27E3: gko::matrix::Dense >::move_to(gko::matrix::Csr, int>*) (dense.cpp:315)
==6701==    by 0x4A4A1C: gko::EnablePolymorphicObject, int>, gko::LinOp>::copy_from_impl(std::unique_ptr >) (polymorphic_object.hpp:527)
==6701==    by 0x47D067: gko::EnableAbstractPolymorphicObject, int>, gko::LinOp>::copy_from(std::unique_ptr >) (polymorphic_object.hpp:323)
==6701==    by 0x46F919: (anonymous namespace)::Csr::set_up_apply_complex_data(std::shared_ptr, int>::strategy_type>) (csr_kernels.cpp:111)
==6701==    by 0x474914: (anonymous namespace)::Csr_ConjugateTransposeIsEquivalentToRef_Test::TestBody() (csr_kernels.cpp:324)
==6701== 
UMR ==6701== Invalid read of size 4
==6701==    at 0x4A2741: gko::matrix::Csr, int>::automatical::process(gko::Array const&, gko::Array*) (csr.hpp:236)
==6701==    by 0x587FE32: gko::matrix::Csr, int>::make_srow() (csr.hpp:473)
==6701==    by 0x587F753: gko::matrix::Csr, int>::conj_transpose() const (csr.cpp:219)
==6701==    by 0x474963: (anonymous namespace)::Csr_ConjugateTransposeIsEquivalentToRef_Test::TestBody() (csr_kernels.cpp:326)
==6701==    by 0x4D97FE: void testing::internal::HandleSehExceptionsInMethodIfSupported(testing::Test*, void (testing::Test::*)(), char const*) (gtest.cc:2432)
==6701==    by 0x4D3D9A: void testing::internal::HandleExceptionsInMethodIfSupported(testing::Test*, void (testing::Test::*)(), char const*) (gtest.cc:2468)
==6701==    by 0x4B52ED: testing::Test::Run() (gtest.cc:2506)
==6701==    by 0x4B5C35: testing::TestInfo::Run() (gtest.cc:2682)
==6701==    by 0x4B626A: testing::TestCase::Run() (gtest.cc:2800)
==6701==    by 0x4C0155: testing::internal::UnitTestImpl::RunAllTests() (gtest.cc:5124)
==6701==    by 0x4DA9B0: bool testing::internal::HandleSehExceptionsInMethodIfSupported(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) (gtest.cc:2432)
==6701==    by 0x4D4BFA: bool testing::internal::HandleExceptionsInMethodIfSupported(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) (gtest.cc:2468)
==6701==  Address 0x309d41f0 is 0 bytes after a block of size 928 alloc'd
==6701==    at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==6701==    by 0x6B2A209: gko::OmpExecutor::raw_alloc(unsigned long) const (executor.cpp:65)
==6701==    by 0x491969: int* gko::Executor::alloc(unsigned long) const (executor.hpp:458)
==6701==    by 0x4A8AAC: gko::Array::resize_and_reset(unsigned long) (array.hpp:376)
==6701==    by 0x4A6078: gko::Array::operator=(gko::Array const&) (array.hpp:297)
==6701==    by 0x4A2714: gko::matrix::Csr, int>::automatical::process(gko::Array const&, gko::Array*) (csr.hpp:234)
==6701==    by 0x587FE32: gko::matrix::Csr, int>::make_srow() (csr.hpp:473)
==6701==    by 0x587F753: gko::matrix::Csr, int>::conj_transpose() const (csr.cpp:219)
==6701==    by 0x474963: (anonymous namespace)::Csr_ConjugateTransposeIsEquivalentToRef_Test::TestBody() (csr_kernels.cpp:326)
==6701==    by 0x4D97FE: void testing::internal::HandleSehExceptionsInMethodIfSupported(testing::Test*, void (testing::Test::*)(), char const*) (gtest.cc:2432)
==6701==    by 0x4D3D9A: void testing::internal::HandleExceptionsInMethodIfSupported(testing::Test*, void (testing::Test::*)(), char const*) (gtest.cc:2468)
==6701==    by 0x4B52ED: testing::Test::Run() (gtest.cc:2506)
==6701== 
UMR ==6701== Invalid read of size 4
==6701==    at 0x4A2741: gko::matrix::Csr, int>::automatical::process(gko::Array const&, gko::Array*) (csr.hpp:236)
==6701==    by 0x587FE32: gko::matrix::Csr, int>::make_srow() (csr.hpp:473)
==6701==    by 0x587F753: gko::matrix::Csr, int>::conj_transpose() const (csr.cpp:219)
==6701==    by 0x474994: (anonymous namespace)::Csr_ConjugateTransposeIsEquivalentToRef_Test::TestBody() (csr_kernels.cpp:327)
==6701==    by 0x4D97FE: void testing::internal::HandleSehExceptionsInMethodIfSupported(testing::Test*, void (testing::Test::*)(), char const*) (gtest.cc:2432)
==6701==    by 0x4D3D9A: void testing::internal::HandleExceptionsInMethodIfSupported(testing::Test*, void (testing::Test::*)(), char const*) (gtest.cc:2468)
==6701==    by 0x4B52ED: testing::Test::Run() (gtest.cc:2506)
==6701==    by 0x4B5C35: testing::TestInfo::Run() (gtest.cc:2682)
==6701==    by 0x4B626A: testing::TestCase::Run() (gtest.cc:2800)
==6701==    by 0x4C0155: testing::internal::UnitTestImpl::RunAllTests() (gtest.cc:5124)
==6701==    by 0x4DA9B0: bool testing::internal::HandleSehExceptionsInMethodIfSupported(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) (gtest.cc:2432)
==6701==    by 0x4D4BFA: bool testing::internal::HandleExceptionsInMethodIfSupported(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) (gtest.cc:2468)
==6701==  Address 0x309d92a0 is 0 bytes after a block of size 928 alloc'd
==6701==    at 0x4C2DB8F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==6701==    by 0x6B2A209: gko::OmpExecutor::raw_alloc(unsigned long) const (executor.cpp:65)
==6701==    by 0x491969: int* gko::Executor::alloc(unsigned long) const (executor.hpp:458)
==6701==    by 0x4A8AAC: gko::Array::resize_and_reset(unsigned long) (array.hpp:376)
==6701==    by 0x4A6078: gko::Array::operator=(gko::Array const&) (array.hpp:297)
==6701==    by 0x4A2714: gko::matrix::Csr, int>::automatical::process(gko::Array const&, gko::Array*) (csr.hpp:234)
==6701==    by 0x587FE32: gko::matrix::Csr, int>::make_srow() (csr.hpp:473)
==6701==    by 0x587F753: gko::matrix::Csr, int>::conj_transpose() const (csr.cpp:219)
==6701==    by 0x474994: (anonymous namespace)::Csr_ConjugateTransposeIsEquivalentToRef_Test::TestBody() (csr_kernels.cpp:327)
==6701==    by 0x4D97FE: void testing::internal::HandleSehExceptionsInMethodIfSupported(testing::Test*, void (testing::Test::*)(), char const*) (gtest.cc:2432)
==6701==    by 0x4D3D9A: void testing::internal::HandleExceptionsInMethodIfSupported(testing::Test*, void (testing::Test::*)(), char const*) (gtest.cc:2468)
==6701==    by 0x4B52ED: testing::Test::Run() (gtest.cc:2506)
==6701== 
==6701== 
==6701== HEAP SUMMARY:
==6701==     in use at exit: 606,736 bytes in 1,439 blocks
==6701==   total heap usage: 8,585,599 allocs, 8,584,160 frees, 7,046,305,229 bytes allocated
==6701== 

In cuda/test/matrix/dense_kernels.cpp (see the full Valgrind output):

Valgrind reported problems for dense_kernels.cpp
==6722== Memcheck, a memory error detector
==6722== Copyright (C) 2002-2015, and GNU GPL'd, by Julian Seward et al.
==6722== Using Valgrind-3.11.0 and LibVEX; rerun with -h for copyright info
==6722== Command: /builds/ginkgo-project/ginkgo-public-ci/build/cuda/test/matrix/dense_kernels
==6722== Parent PID: 9
==6722== 
==6722== Warning: noted but unhandled ioctl 0x30000001 with no size/direction hints.
==6722==    This could cause spurious value errors to appear.
==6722==    See README_MISSING_SYSCALL_OR_IOCTL for guidance on writing a proper wrapper.
==6722== Warning: noted but unhandled ioctl 0x27 with no size/direction hints.
==6722==    This could cause spurious value errors to appear.
==6722==    See README_MISSING_SYSCALL_OR_IOCTL for guidance on writing a proper wrapper.
==6722== Warning: noted but unhandled ioctl 0x7ff with no size/direction hints.
==6722==    This could cause spurious value errors to appear.
==6722==    See README_MISSING_SYSCALL_OR_IOCTL for guidance on writing a proper wrapper.
==6722== Warning: noted but unhandled ioctl 0x25 with no size/direction hints.
==6722==    This could cause spurious value errors to appear.
==6722==    See README_MISSING_SYSCALL_OR_IOCTL for guidance on writing a proper wrapper.
==6722== Warning: noted but unhandled ioctl 0x17 with no size/direction hints.
==6722==    This could cause spurious value errors to appear.
==6722==    See README_MISSING_SYSCALL_OR_IOCTL for guidance on writing a proper wrapper.
==6722== Warning: set address range perms: large range [0x1000000000, 0x2100000000) (noaccess)
==6722== Warning: set address range perms: large range [0x200000000, 0x600000000) (noaccess)
==6722== Warning: set address range perms: large range [0x11f56000, 0x31f55000) (noaccess)
==6722== Warning: noted but unhandled ioctl 0x19 with no size/direction hints.
==6722==    This could cause spurious value errors to appear.
==6722==    See README_MISSING_SYSCALL_OR_IOCTL for guidance on writing a proper wrapper.
==6722== Warning: noted but unhandled ioctl 0x21 with no size/direction hints.
==6722==    This could cause spurious value errors to appear.
==6722==    See README_MISSING_SYSCALL_OR_IOCTL for guidance on writing a proper wrapper.
==6722== Warning: noted but unhandled ioctl 0x1b with no size/direction hints.
==6722==    This could cause spurious value errors to appear.
==6722==    See README_MISSING_SYSCALL_OR_IOCTL for guidance on writing a proper wrapper.
==6722== Warning: noted but unhandled ioctl 0x42 with no size/direction hints.
==6722==    This could cause spurious value errors to appear.
==6722==    See README_MISSING_SYSCALL_OR_IOCTL for guidance on writing a proper wrapper.
==6722== Warning: noted but unhandled ioctl 0x22 with no size/direction hints.
==6722==    This could cause spurious value errors to appear.
==6722==    See README_MISSING_SYSCALL_OR_IOCTL for guidance on writing a proper wrapper.
UMC ==6722== Conditional jump or move depends on uninitialised value(s)
==6722==    at 0x59A31C3: gko::matrix::Sellp::write(gko::matrix_data&) const (sellp.cpp:228)
==6722==    by 0x47557B: testing::AssertionResult gko::test::assertions::matrices_near, gko::matrix::Sellp >(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, gko::matrix::Sellp const*, gko::matrix::Sellp const*, double) (assertions.hpp:286)
==6722==    by 0x46A0EE: (anonymous namespace)::Dense_ConvertToSellpIsEquivalentToRef_Test::TestBody() (dense_kernels.cpp:350)
==6722==    by 0x4CB9FC: void testing::internal::HandleSehExceptionsInMethodIfSupported(testing::Test*, void (testing::Test::*)(), char const*) (gtest.cc:2432)
==6722==    by 0x4C5EEE: void testing::internal::HandleExceptionsInMethodIfSupported(testing::Test*, void (testing::Test::*)(), char const*) (gtest.cc:2468)
==6722==    by 0x4A73B9: testing::Test::Run() (gtest.cc:2506)
==6722==    by 0x4A7D01: testing::TestInfo::Run() (gtest.cc:2682)
==6722==    by 0x4A8336: testing::TestCase::Run() (gtest.cc:2800)
==6722==    by 0x4B2221: testing::internal::UnitTestImpl::RunAllTests() (gtest.cc:5124)
==6722==    by 0x4CCBBC: bool testing::internal::HandleSehExceptionsInMethodIfSupported(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) (gtest.cc:2432)
==6722==    by 0x4C6D4E: bool testing::internal::HandleExceptionsInMethodIfSupported(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) (gtest.cc:2468)
==6722==    by 0x4B0DFC: testing::UnitTest::Run() (gtest.cc:4733)
==6722== 
UMC ==6722== Conditional jump or move depends on uninitialised value(s)
==6722==    at 0x59A31C9: gko::matrix::Sellp::write(gko::matrix_data&) const (sellp.cpp:228)
==6722==    by 0x47557B: testing::AssertionResult gko::test::assertions::matrices_near, gko::matrix::Sellp >(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, gko::matrix::Sellp const*, gko::matrix::Sellp const*, double) (assertions.hpp:286)
==6722==    by 0x46A0EE: (anonymous namespace)::Dense_ConvertToSellpIsEquivalentToRef_Test::TestBody() (dense_kernels.cpp:350)
==6722==    by 0x4CB9FC: void testing::internal::HandleSehExceptionsInMethodIfSupported(testing::Test*, void (testing::Test::*)(), char const*) (gtest.cc:2432)
==6722==    by 0x4C5EEE: void testing::internal::HandleExceptionsInMethodIfSupported(testing::Test*, void (testing::Test::*)(), char const*) (gtest.cc:2468)
==6722==    by 0x4A73B9: testing::Test::Run() (gtest.cc:2506)
==6722==    by 0x4A7D01: testing::TestInfo::Run() (gtest.cc:2682)
==6722==    by 0x4A8336: testing::TestCase::Run() (gtest.cc:2800)
==6722==    by 0x4B2221: testing::internal::UnitTestImpl::RunAllTests() (gtest.cc:5124)
==6722==    by 0x4CCBBC: bool testing::internal::HandleSehExceptionsInMethodIfSupported(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) (gtest.cc:2432)
==6722==    by 0x4C6D4E: bool testing::internal::HandleExceptionsInMethodIfSupported(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) (gtest.cc:2468)
==6722==    by 0x4B0DFC: testing::UnitTest::Run() (gtest.cc:4733)
==6722== 
==6722== 
==6722== HEAP SUMMARY:
==6722==     in use at exit: 606,658 bytes in 1,438 blocks
==6722==   total heap usage: 9,485,749 allocs, 9,484,311 frees, 7,695,327,000 bytes allocated
==6722== 
@thoasm thoasm added is:bug Something looks wrong. mod:cuda This is related to the CUDA module. labels Mar 18, 2019
@thoasm thoasm self-assigned this Mar 18, 2019
@thoasm thoasm changed the title Fix Valgrind Issues Fix Issues detected by Valgrind Mar 18, 2019
@tcojean tcojean added this to the Ginkgo 1.0.0 release milestone Mar 19, 2019
@thoasm thoasm assigned thoasm and unassigned thoasm Mar 20, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
is:bug Something looks wrong. mod:cuda This is related to the CUDA module.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants