mirror of
				https://github.com/paboyle/Grid.git
				synced 2025-10-31 12:04:33 +00:00 
			
		
		
		
	Merge branch 'develop' of https://github.com/paboyle/Grid into develop
This commit is contained in:
		| @@ -62,9 +62,12 @@ void basisRotate(std::vector<Field> &basis,Eigen::MatrixXd& Qt,int j0, int j1, i | ||||
|     basis_v[k] = basis[k].View(); | ||||
|   } | ||||
|  | ||||
|   std::vector < vobj , commAllocator<vobj> > Bt(thread_max() * Nm); // Thread private | ||||
|  | ||||
|   thread_region | ||||
|   { | ||||
|     std::vector < vobj , commAllocator<vobj> > B(Nm); // Thread private | ||||
|     vobj* B = Bt.data() + Nm * thread_num(); | ||||
|  | ||||
|     thread_for_in_region(ss, grid->oSites(),{ | ||||
|       for(int j=j0; j<j1; ++j) B[j]=0.; | ||||
|        | ||||
|   | ||||
| @@ -178,8 +178,8 @@ public: | ||||
| private: | ||||
|   void dealloc(void) | ||||
|   { | ||||
|     alignedAllocator<vobj> alloc; | ||||
|     if( this->_odata_size ) { | ||||
|       alignedAllocator<vobj> alloc; | ||||
|       alloc.deallocate(this->_odata,this->_odata_size); | ||||
|       this->_odata=nullptr; | ||||
|       this->_odata_size=0; | ||||
| @@ -187,16 +187,18 @@ private: | ||||
|   } | ||||
|   void resize(uint64_t size) | ||||
|   { | ||||
|     alignedAllocator<vobj> alloc; | ||||
|     if ( this->_odata_size != size ) { | ||||
|       alignedAllocator<vobj> alloc; | ||||
|  | ||||
|       dealloc(); | ||||
|     } | ||||
|        | ||||
|       this->_odata_size = size; | ||||
|       if ( size )  | ||||
| 	this->_odata      = alloc.allocate(this->_odata_size); | ||||
|       else  | ||||
| 	this->_odata      = nullptr; | ||||
|     } | ||||
|   } | ||||
| public: | ||||
|   ///////////////////////////////////////////////////////////////////////////////// | ||||
|   // Return a view object that may be dereferenced in site loops. | ||||
| @@ -346,7 +348,7 @@ public: | ||||
|   void reset(GridBase* grid) { | ||||
|     if (this->_grid != grid) { | ||||
|       this->_grid = grid; | ||||
|       this->_odata.resize(grid->oSites()); | ||||
|       this->resize(grid->oSites()); | ||||
|       this->checkerboard = 0; | ||||
|     } | ||||
|   } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user