bug in recognize digits demo
Created by: dzhwinter
when run in gpu mode, our mnist demo shows the log.
Traceback (most recent call last):
File "./python/paddle/v2/fluid/tests/book/test_recognize_digits_conv.py", line 99, in <module>
fetch_list=[avg_cost, acc_out])
File "/usr/local/lib/python2.7/dist-packages/paddle/v2/fluid/executor.py", line 68, in run
self.executor.run(program.desc, scope, 0, True)
paddle.v2.fluid.core.EnforceNotMet: an illegal memory access was encountered at [/paddle/paddle/platform/device_context.cc:124]
PaddlePaddle Call Stacks:
0 0x7f9b7b5784eap paddle::platform::EnforceNotMet::EnforceNotMet(std::__exception_ptr::exception_ptr, char const*, int) + 466
1 0x7f9b7c0b143cp paddle::platform::CUDADeviceContext::Wait() const + 118
2 0x7f9b7c0b14e5p paddle::platform::CUDADeviceContext::Finish() const + 53
3 0x7f9b7c07a604p paddle::framework::OperatorWithKernel::Run(paddle::framework::Scope const&, paddle::platform::DeviceContext const&) const + 1792
4 0x7f9b7b6cd354p paddle::framework::Executor::Run(paddle::framework::ProgramDescBind const&, paddle::framework::Scope*, int, bool) + 2382
5 0x7f9b7b599389p pybind11::cpp_function::cpp_function<void, paddle::framework::Executor, paddle::framework::ProgramDescBind const&, paddle::framework::Scope*, int, bool, pybind11::name, pybind11::is_method, pybind11::sibling>(void (paddle::framework::Executor::*)(paddle::framework::ProgramDescBind const&, paddle::framework::Scope*, int, bool), pybind11::name const&, pybind11::is_method const&, pybind11::sibling const&)::{lambda(paddle::framework::Executor*, paddle::framework::ProgramDescBind const&, paddle::framework::Scope*, int, bool)#1}::operator()(paddle::framework::Executor*, paddle::framework::ProgramDescBind const&, paddle::framework::Scope*, int, bool) const + 133
6 0x7f9b7b5dc660p void pybind11::detail::argument_loader<paddle::framework::Executor*, paddle::framework::ProgramDescBind const&, paddle::framework::Scope*, int, bool>::call_impl<void, pybind11::cpp_function::cpp_function<void, paddle::framework::Executor, paddle::framework::ProgramDescBind const&, paddle::framework::Scope*, int, bool, pybind11::name, pybind11::is_method, pybind11::sibling>(void (paddle::framework::Executor::*)(paddle::framework::ProgramDescBind const&, paddle::framework::Scope*, int, bool), pybind11::name const&, pybind11::is_method const&, pybind11::sibling const&)::{lambda(paddle::framework::Executor*, paddle::framework::ProgramDescBind const&, paddle::framework::Scope*, int, bool)#1}&, 0ul, 1ul, 2ul, 3ul, 4ul>(pybind11::cpp_function::cpp_function<void, paddle::framework::Executor, paddle::framework::ProgramDescBind const&, paddle::framework::Scope*, int, bool, pybind11::name, pybind11::is_method, pybind11::sibling>(void (paddle::framework::Executor::*)(paddle::framework::ProgramDescBind const&, paddle::framework::Scope*, int, bool), pybind11::name const&, pybind11::is_method const&, pybind11::sibling const&)::{lambda(paddle::framework::Executor*, paddle::framework::ProgramDescBind const&, paddle::framework::Scope*, int, bool)#1}&, pybind11::detail::index_sequence<0ul, 1ul, 2ul, 3ul, 4ul>) + 178
7 0x7f9b7b5c4ad5p std::enable_if<std::is_void<void>::value, pybind11::detail::void_type>::type pybind11::detail::argument_loader<paddle::framework::Executor*, paddle::framework::ProgramDescBind const&, paddle::framework::Scope*, int, bool>::call<void, pybind11::cpp_function::cpp_function<void, paddle::framework::Executor, paddle::framework::ProgramDescBind const&, paddle::framework::Scope*, int, bool, pybind11::name, pybind11::is_method, pybind11::sibling>(void (paddle::framework::Executor::*)(paddle::framework::ProgramDescBind const&, paddle::framework::Scope*, int, bool), pybind11::name const&, pybind11::is_method const&, pybind11::sibling const&)::{lambda(paddle::framework::Executor*, paddle::framework::ProgramDescBind const&, paddle::framework::Scope*, int, bool)#1}&>(pybind11::cpp_function::cpp_function<void, paddle::framework::Executor, paddle::framework::ProgramDescBind const&, paddle::framework::Scope*, int, bool, pybind11::name, pybind11::is_method, pybind11::sibling>(void (paddle::framework::Executor::*)(paddle::framework::ProgramDescBind const&, paddle::framework::Scope*, int, bool), pybind11::name const&, pybind11::is_method const&, pybind11::sibling const&)::{lambda(paddle::framework::Executor*, paddle::framework::ProgramDescBind const&, paddle::framework::Scope*, int, bool)#1}&) + 69
8 0x7f9b7b5b082fp void pybind11::cpp_function::initialize<pybind11::cpp_function::initialize<void, paddle::framework::Executor, paddle::framework::ProgramDescBind const&, paddle::framework::Scope*, int, bool, pybind11::name, pybind11::is_method, pybind11::sibling>(void (paddle::framework::Executor::*)(paddle::framework::ProgramDescBind const&, paddle::framework::Scope*, int, bool), pybind11::name const&, pybind11::is_method const&, pybind11::sibling const&)::{lambda(paddle::framework::Executor*, paddle::framework::ProgramDescBind const&, paddle::framework::Scope*, int, bool)#1}, void, paddle::framework::Executor*, paddle::framework::ProgramDescBind const&, paddle::framework::Scope*, int, bool, pybind11::name, pybind11::is_method, pybind11::sibling>(pybind11::cpp_function::initialize<void, paddle::framework::Executor, paddle::framework::ProgramDescBind const&, paddle::framework::Scope*, int, bool, pybind11::name, pybind11::is_method, pybind11::sibling>(void (paddle::framework::Executor::*)(paddle::framework::ProgramDescBind const&, paddle::framework::Scope*, int, bool), pybind11::name const&, pybind11::is_method const&, pybind11::sibling const&)::{lambda(paddle::framework::Executor*, paddle::framework::ProgramDescBind const&, paddle::framework::Scope*, int, bool)#1}&&, void (*)(paddle::framework::Executor*, paddle::framework::ProgramDescBind const&, paddle::framework::Scope*, int, bool), pybind11::name const&, pybind11::is_method const&, pybind11::sibling const&)::{lambda(pybind11::detail::function_call&)#3}::operator()(pybind11::detail::function_call) const + 201
9 0x7f9b7b5b0c5bp void pybind11::cpp_function::initialize<pybind11::cpp_function::initialize<void, paddle::framework::Executor, paddle::framework::ProgramDescBind const&, paddle::framework::Scope*, int, bool, pybind11::name, pybind11::is_method, pybind11::sibling>(void (paddle::framework::Executor::*)(paddle::framework::ProgramDescBind const&, paddle::framework::Scope*, int, bool), pybind11::name const&, pybind11::is_method const&, pybind11::sibling const&)::{lambda(paddle::framework::Executor*, paddle::framework::ProgramDescBind const&, paddle::framework::Scope*, int, bool)#1}, void, paddle::framework::Executor*, paddle::framework::ProgramDescBind const&, paddle::framework::Scope*, int, bool, pybind11::name, pybind11::is_method, pybind11::sibling>(pybind11::cpp_function::initialize<void, paddle::framework::Executor, paddle::framework::ProgramDescBind const&, paddle::framework::Scope*, int, bool, pybind11::name, pybind11::is_method, pybind11::sibling>(void (paddle::framework::Executor::*)(paddle::framework::ProgramDescBind const&, paddle::framework::Scope*, int, bool), pybind11::name const&, pybind11::is_method const&, pybind11::sibling const&)::{lambda(paddle::framework::Executor*, paddle::framework::ProgramDescBind const&, paddle::framework::Scope*, int, bool)#1}&&, void (*)(paddle::framework::Executor*, paddle::framework::ProgramDescBind const&, paddle::framework::Scope*, int, bool), pybind11::name const&, pybind11::is_method const&, pybind11::sibling const&)::{lambda(pybind11::detail::function_call&)#3}::_FUN(pybind11::detail::function_call) + 29
10 0x7f9b7b572b80p pybind11::cpp_function::dispatcher(_object*, _object*, _object*) + 2581
11 0x4cada2p PyEval_EvalFrameEx + 28066
12 0x4c2765p PyEval_EvalCodeEx + 597
13 0x4ca099p PyEval_EvalFrameEx + 24729
14 0x4c2765p PyEval_EvalCodeEx + 597
15 0x4c2509p PyEval_EvalCode + 25
16 0x4f1defp
17 0x4ec652p PyRun_FileExFlags + 130
18 0x4eae31p PyRun_SimpleFileExFlags + 401
19 0x49e14ap Py_Main + 1674
20 0x7f9c11229830p __libc_start_main + 240
21 0x49d9d9p _start + 41
terminate called after throwing an instance of 'paddle::platform::EnforceNotMet'
what(): an illegal memory access was encountered at [/paddle/paddle/platform/device_context.cc:124]
PaddlePaddle Call Stacks:
0 0x7f9b7b5784eap paddle::platform::EnforceNotMet::EnforceNotMet(std::__exception_ptr::exception_ptr, char const*, int) + 466
1 0x7f9b7c0b143cp paddle::platform::CUDADeviceContext::Wait() const + 118
2 0x7f9b7c0b115ep paddle::platform::CUDADeviceContext::~CUDADeviceContext() + 72
3 0x7f9b7c0b138ap paddle::platform::CUDADeviceContext::~CUDADeviceContext() + 24
4 0x7f9b7b6cc7ffp paddle::framework::Executor::~Executor() + 163
5 0x7f9b7b5c4976p std::default_delete<paddle::framework::Executor>::operator()(paddle::framework::Executor*) const + 34
6 0x7f9b7b5b0553p std::unique_ptr<paddle::framework::Executor, std::default_delete<paddle::framework::Executor> >::~unique_ptr() + 71
7 0x7f9b7b599201p pybind11::class_<paddle::framework::Executor>::dealloc(_object*) + 53
8 0x7f9b7b56f52ep pybind11_object_dealloc + 89
9 0x4fd4e6p
10 0x4a0d22p PyDict_SetItem + 1090
11 0x502bf3p _PyModule_Clear + 307
12 0x50275cp PyImport_Cleanup + 428
13 0x500489p Py_Finalize + 137
14 0x49df2fp Py_Main + 1135
15 0x7f9c11229830p __libc_start_main + 240
16 0x49d9d9p _start + 41
Aborted