You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The Address Sanitizer (see #2212) reports the following memory leak for the serial testcase hb_rans_preconditioning:
Direct leak of 10992 byte(s) in 6 object(s) allocated from:
#0 0x13c232e in operator new(unsigned long) (/home/aehle/SU2/install/bin/SU2_CFD+0x13c232e) (BuildId: 8e780270f481da176f9f289b39b954c6eef56689)
#1 0x14a7288 in CDriver::PreprocessDynamicMesh(CConfig*, CGeometry**, CSolver***, CIteration*, CVolumetricMovement*&, CSurfaceMovement*&) const /home/aehle/SU2/build/../SU2_CFD/src/drivers/CDriver.cpp:2392:24
#2 0x148c1d0 in CDriver::CDriver(char*, unsigned short, int, bool) /home/aehle/SU2/build/../SU2_CFD/src/drivers/CDriver.cpp:211:7
#3 0x14c3707 in CFluidDriver::CFluidDriver(char*, unsigned short, int) /home/aehle/SU2/build/../SU2_CFD/src/drivers/CDriver.cpp:2878:98
#4 0x14c9347 in CHBDriver::CHBDriver(char*, unsigned short, int) /home/aehle/SU2/build/../SU2_CFD/src/drivers/CDriver.cpp:3111:33
#5 0x13c67fa in main /home/aehle/SU2/build/../SU2_CFD/src/SU2_CFD.cpp:143:18
#6 0x14f88dabfd84 in __libc_start_main (/lib64/libc.so.6+0x3ad84) (BuildId: c52dbe785ce4223dafe0b6ec0f6e25ea0c8e14f4)
The problem is that CDriver::surface_movement[iZone] is constructed in CDriver::PreprocessDynamicMesh, which is called from CDriver::CDriver in a loop over all iZone and iInst. So if nInst[iZone] > 1, CDriver::surface_movement[iZone] is initialized multiple times. This could be fixed by storing separate CSurfaceMovements for all values of iInst, i.e. CDriver::surface_movement[iZone][iInst], but I wonder if that is correct.
Setup: Ubuntu 22.04 with Clang++ 16.0.6, MPI disabled, SU2 approximately at recent develop branch at f9f7a01.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
The Address Sanitizer (see #2212) reports the following memory leak for the serial testcase
hb_rans_preconditioning
:The problem is that
CDriver::surface_movement[iZone]
is constructed inCDriver::PreprocessDynamicMesh
, which is called fromCDriver::CDriver
in a loop over alliZone
andiInst
. So ifnInst[iZone] > 1
,CDriver::surface_movement[iZone]
is initialized multiple times. This could be fixed by storing separateCSurfaceMovement
s for all values ofiInst
, i.e.CDriver::surface_movement[iZone][iInst]
, but I wonder if that is correct.Setup: Ubuntu 22.04 with Clang++ 16.0.6, MPI disabled, SU2 approximately at recent develop branch at f9f7a01.
Beta Was this translation helpful? Give feedback.
All reactions