The reserveWithPadding does not put zeros to the vectors. In some cases
this lead to some residue data in padded area which caused floating
point exceptions when SIMD kernel was used (in ~1 out of 200 cases).
Change-Id: I7f9898ffc4b933c054d1ca4746d9b8de8caed3fb
void integrateLeapFrogSimple(LeapFrogTestData *testData,
int numSteps)
{
- testData->state_.x.reserveWithPadding(testData->numAtoms_);
- testData->state_.v.reserveWithPadding(testData->numAtoms_);
+ testData->state_.x.resizeWithPadding(testData->numAtoms_);
+ testData->state_.v.resizeWithPadding(testData->numAtoms_);
for (int i = 0; i < testData->numAtoms_; i++)
{
testData->state_.x[i] = testData->x_[i];
&testData->kineticEnergyData_,
testData->prVScalingMatrix_,
testData->update_.get(),
- 0,
+ etrtNONE,
nullptr,
nullptr);
finish_update(&testData->inputRecord_,