Fixed bugs with kernel (re)compiling when the global device got cleared and then reinitialized

This commit is contained in:
Trung Nguyen
2019-10-31 01:15:53 -05:00
parent 86f644979c
commit e119bffcca
6 changed files with 24 additions and 6 deletions

View File

@ -26,15 +26,16 @@ BaseAtomicT::BaseAtomic() : _compiled(false), _max_bytes(0) {
ans=new Answer<numtyp,acctyp>();
nbor=new Neighbor();
pair_program=NULL;
ucl_device=NULL;
}
template <class numtyp, class acctyp>
BaseAtomicT::~BaseAtomic() {
delete ans;
delete nbor;
if (pair_program) delete pair_program;
k_pair_fast.clear();
k_pair.clear();
if (pair_program) delete pair_program;
}
template <class numtyp, class acctyp>
@ -78,6 +79,8 @@ int BaseAtomicT::init_atomic(const int nlocal, const int nall,
if (success!=0)
return success;
if (ucl_device!=device->gpu) _compiled=false;
ucl_device=device->gpu;
atom=&device->atom;