1
0
mirror of https://github.com/paboyle/Grid.git synced 2025-12-16 10:44:40 +00:00

Looks like the reuse of xfers in staggered has bugs or corner cases depending on volume

This commit is contained in:
Peter Boyle
2025-11-17 22:29:06 -05:00
parent 2e684028de
commit 74e6b19f83

View File

@@ -751,7 +751,7 @@ public:
obj.xbytes = xbytes; obj.xbytes = xbytes;
obj.rbytes = rbytes; obj.rbytes = rbytes;
obj.cb = cb; obj.cb = cb;
for(int i=0;i<CachedTransfers.size();i++){ for(int i=0;i<CachedTransfers.size();i++){
if ( (CachedTransfers[i].direction ==direction) if ( (CachedTransfers[i].direction ==direction)
&&(CachedTransfers[i].OrthogPlane==OrthogPlane) &&(CachedTransfers[i].OrthogPlane==OrthogPlane)
@@ -763,11 +763,13 @@ public:
){ ){
// FIXME worry about duplicate with partial compression // FIXME worry about duplicate with partial compression
// Wont happen as DWF has no duplicates, but... // Wont happen as DWF has no duplicates, but...
AddCopy(CachedTransfers[i].recv_buf,recv_buf,rbytes); // AddCopy(CachedTransfers[i].recv_buf,recv_buf,rbytes);
std::cout << "Duplicate dir " <<direction<<" "<<" OrthogPlane "<<OrthogPlane<<" Dest"<<DestProc <<" xbytes " <<xbytes<<" lane "<< lane<<" cb "<<cb<<std::endl;
return 0;
return 1; return 1;
} }
} }
CachedTransfers.push_back(obj); CachedTransfers.push_back(obj);
return 0; return 0;
} }