boost-mpi assertion during recv fails
Hello, I am using boost-mpi and I am getting an error that I am having a hard time figuring out. I am using a recv call and an assertion in the boost code fails: void boost::mpi::binary_buffer_iprimitive::load_impl(void *, int): Assertion `position+l<=static_cast<int>(buffer_.size())' This is from the file binary_bffer_iprimitive.hpp located in boost/mpi/detail/. This does not occur the first time I am receiving so I know it's not a general error with every send/recv call I make. I think this assertion is checking whether the buffer is large enough to accommodate the data being received, but I'm not even sure about that. If that is the case, what could cause the buffer to not be large enough? Shouldn't that be taken care of by the underlying boost? Thanks, Kyle
Hello,****
** **
I am using boost-mpi and I am getting an error that I am having a hard time figuring out. I am using a recv call and an assertion in the boost code fails:****
** **
void boost::mpi::binary_buffer_iprimitive::load_impl(void *, int): Assertion `position+l<=static_cast<int>(buffer_.size())’****
**
Hi Kyle, You have to provide some code if you want us to help you. It's basically impossible to conclude anything with a single assertion fail. Do a test case, reduce it to the simplest scenario you can and start pulling back the complexity of your original code. It's tedious, but always works. Regards, Júlio.
I can try doing that. But for now:
for (unsigned int i=0;i
participants (2)
-
Júlio Hoffimann
-
Kyle Joseph Berger