After reading about memory leaks I modified the script at the end by adding "del" after "Delete":
Delete(DataRepresentation4) del DataRepresentation4 Delete(Contour2) del Contour2 Delete(DataRepresentation3) del DataRepresentation3 Delete(Q_VP_xmf) del Q_VP_xmf Delete(DataRepresentation2) del DataRepresentation2 Delete(Contour1) del Contour1 Delete(DataRepresentation1) del DataRepresentation1 Delete(cf_VP_xmf) del cf_VP_xmf That should fully delete the objects from the memory and it helped a little but I still have memory leaks. Before the script memory usage in the Memory Inspector is 1.4Gb and after one iteration it increases to 4Gb, compared to 10Gb without the del statements. After 4 iterations the memory usage increases to 8Gb. Any ideas on how to track and eliminate completely the memory leaks? I am forgetting to delete an object from the script? On Wed, Jan 7, 2015 at 9:17 PM, Nikolaos Beratlis <nikos.berat...@gmail.com> wrote: > So I did some more tests by running the script interactively. I used a > smaller grid first, 2002 x 20 x 1000 points and ran it only for 1 > iteration. When Paraview loaded the memory usage on the server was 1.04GB. > After doing one iteration the memory usage spiked to 10.42GB and remained > like that when the script finished. What I found out is the Delete > statements make no difference at all, with or without them the memory usage > remained 10.42GB. Performing more iterations in the script actually worsens > this problem, after 4 iterations the memory used increased to 14.32GB. With > a larger grid of 2002 x 100 x 1000 points the memory after one iteration > increased from 10.42GB before the script to 45.25GB after the script. How > can I properly delete all datasets and clear the memory in Paraview? > > > > On Wed, Jan 7, 2015 at 2:55 PM, Nikolaos Beratlis < > nikos.berat...@gmail.com> wrote: > >> I am trying to run a script on a cluster with Paraview in parallel. The >> cluster architecture is 16cores and 64GB per node. The script reads in two >> XMF files, one contains a grid of 2002x100x1000 points along with one >> variable. There is a loop to perform two iterations: >> >> try: paraview.simple >> except: from paraview.simple import * >> paraview.simple._DisableFirstRenderCameraReset() >> >> RenderView1 = GetRenderView() >> RenderView1.Background = [1.0, 1.0, 1.0] >> view = GetActiveView() >> view.ViewSize = [ 800, 500 ] >> >> RenderView1.CenterAxesVisibility = 0 >> #RenderView1.OrientationAxesVisibility = 0 >> >> #Define variables >> wdir = >> '/lustre/groups/balarasgrp/nikosb/Research/Simulations/golfball/stationary/S120/Re200000/gridC1/run_wm' >> #wdir = >> '/Users/nikosb/colone/Research/Simulations/golfball/stationary/S120/Re200000/gridC1/run_wm' >> #wdir = '/Users/nikosb/Research/Simulations/SPHERE/Re100/gridC1/run' >> Qval = 0.1 >> cfmin = -0.001 >> cfmax = 0.005 >> >> index = [None]*9999 >> >> m = 0 >> for i in range(0, 9): >> for j in range(0, 9): >> for k in range(0, 9): >> for l in range(0, 9): >> index[m] = chr(i+48)+chr(j+48)+chr(k+48)+chr(l+48) >> m = m+1 >> >> >> for i in range(1,3): >> >> cf_VP_xmf = XDMFReader( >> FileName=wdir+'/VPfield/XDMF/cf_VP'+index[i]+'.xmf' ) >> >> cf_VP_xmf.Sets = [] >> cf_VP_xmf.Grids = ['STL Grid'] >> cf_VP_xmf.PointArrays = ['Cf'] >> >> RenderView1 = GetRenderView() >> RenderView1.CenterOfRotation = [6.2286853790283203e-06, >> 2.5033950805664062e-06, 7.1227550506591797e-06] >> >> DataRepresentation1 = Show() >> DataRepresentation1.EdgeColor = [0.0, 0.0, 0.50000762951094835] >> DataRepresentation1.SelectionPointFieldDataArrayName = 'Cf' >> DataRepresentation1.ColorArrayName = ('POINT_DATA', 'Cf') >> DataRepresentation1.ScalarOpacityUnitDistance = 0.033928799990483226 >> DataRepresentation1.ScaleFactor = 0.099998557567596444 >> >> a1_Cf_PVLookupTable = GetLookupTableForArray( "Cf", 1, >> RGBPoints=[-0.0099065126851201057, 0.23000000000000001, >> 0.29899999999999999, 0.754, 0.0097341262735426426, 0.86499999999999999, >> 0.86499999999999999, 0.86499999999999999, 0.029374765232205391, >> 0.70599999999999996, 0.016, 0.14999999999999999], VectorMode='Magnitude', >> NanColor=[0.25, 0.0, 0.0], ColorSpace='Diverging', >> ScalarRangeInitialized=1.0 ) >> a1_Cf_PiecewiseFunction = CreatePiecewiseFunction( >> Points=[-0.0099065126851201057, 0.0, 0.5, 0.0, 0.029374765232205391, 1.0, >> 0.5, 0.0] ) >> >> DataRepresentation1.ScalarOpacityFunction = a1_Cf_PiecewiseFunction >> DataRepresentation1.LookupTable = a1_Cf_PVLookupTable >> >> a1_Cf_PVLookupTable.ScalarOpacityFunction = a1_Cf_PiecewiseFunction >> >> a1_Cf_PVLookupTable.RGBPoints = [cfmin, 0.23000000000000001, >> 0.29899999999999999, 0.754, -0.002, 0.86499999999999999, >> 0.86499999999999999, 0.86499999999999999, cfmax, 0.70599999999999996, >> 0.016, 0.14999999999999999] >> a1_Cf_PVLookupTable.ScalarOpacityFunction = a1_Cf_PiecewiseFunction >> a1_Cf_PVLookupTable.LockScalarRange = 1 >> >> RenderView1.CameraPosition = [6.2286853790283203e-06, >> 2.5033950805664062e-06, 3.3460035306026636] >> RenderView1.CameraFocalPoint = [6.2286853790283203e-06, >> 2.5033950805664062e-06, 7.1227550506591797e-06] >> RenderView1.CameraClippingRange = [2.3175641399614015, >> 4.6486514901655163] >> RenderView1.CameraParallelScale = 0.86600759519558368 >> >> Contour1 = Contour( PointMergeMethod="Uniform Binning" ) >> >> Contour1.PointMergeMethod = "Uniform Binning" >> Contour1.ContourBy = ['POINTS', 'Cf'] >> Contour1.Isosurfaces = [0.0097341262735426426] >> >> DataRepresentation2 = Show() >> DataRepresentation2.ColorArrayName = ('POINT_DATA', '') >> DataRepresentation2.ScaleFactor = 0.099971860647201538 >> DataRepresentation2.SelectionPointFieldDataArrayName = 'Cf' >> DataRepresentation2.EdgeColor = [0.0, 0.0, 0.50000762951094835] >> >> DataRepresentation2.Representation = 'Wireframe' >> DataRepresentation2.AmbientColor = [0.0, 0.0, 0.0] >> >> DataRepresentation1.Visibility = 0 >> >> RenderView1.CameraClippingRange = [2.7470738944403328, >> 4.2397684828477349] >> >> DataRepresentation1.Visibility = 1 >> >> RenderView1.CameraClippingRange = [2.3175641399614015, >> 4.6486514901655163] >> >> Q_VP_xmf = XDMFReader( >> FileName=wdir+'/VPfield/XDMF/Q_VP'+index[i]+'.xmf' ) >> >> Contour1.Isosurfaces = [0.0] >> >> Q_VP_xmf.Sets = [] >> Q_VP_xmf.Grids = ['Eulerian Grid'] >> Q_VP_xmf.PointArrays = ['Q'] >> >> DataRepresentation3 = Show() >> DataRepresentation3.EdgeColor = [0.0, 0.0, 0.50000762951094835] >> DataRepresentation3.SelectionPointFieldDataArrayName = 'Q' >> DataRepresentation3.ScalarOpacityUnitDistance = 0.0045778956118952439 >> DataRepresentation3.Representation = 'Outline' >> DataRepresentation3.ScaleFactor = 0.25585924386978148 >> >> RenderView1.CameraClippingRange = [0.30866115510384229, >> 6.1311800002592065] >> >> Contour2 = Contour( PointMergeMethod="Uniform Binning" ) >> >> Contour2.PointMergeMethod = "Uniform Binning" >> Contour2.ContourBy = ['POINTS', 'Q'] >> Contour2.Isosurfaces = [-348374.28125] >> >> DataRepresentation4 = Show() >> DataRepresentation4.ScaleFactor = 0.1348903000354767 >> DataRepresentation4.SelectionPointFieldDataArrayName = 'Normals' >> DataRepresentation4.EdgeColor = [0.0, 0.0, 0.50000762951094835] >> >> Contour2.Isosurfaces = [0.5] >> >> DataRepresentation3.Visibility = 0 >> >> RenderView1.CameraClippingRange = [0.46635874330917981, >> 5.5760844897764175] >> >> RenderView1.CameraViewUp = [-1.0, 0.0, 0.0] >> RenderView1.CameraPosition = [-5.0, 0.0, 5.0] >> RenderView1.CameraClippingRange = [3.0180305778980254, >> 7.5069525367021557] >> RenderView1.CameraFocalPoint = [0.0, 0.0, 5.0] >> RenderView1.CameraParallelScale = 1.565457167140391 >> RenderView1.CenterOfRotation = [0.0, 0.0, 0.0] >> >> RenderView1.CameraFocalPoint = [0.0, 0.0, 0.5] >> RenderView1.CameraClippingRange = [0.86197012554183883, >> 4.2263653610655147] >> RenderView1.CameraPosition = [0.0, -2.5, 0.0] >> >> WriteImage(wdir+'/POSTPRO/IMAGES/Q_cf_VP'+index[i]+'.jpg') >> >> Delete(DataRepresentation4) >> Delete(Contour2) >> Delete(DataRepresentation3) >> Delete(Q_VP_xmf) >> >> Delete(DataRepresentation2) >> Delete(Contour1) >> Delete(DataRepresentation1) >> Delete(cf_VP_xmf) >> >> The script was created by running an interactive Paraview session and >> recording the commands. I then modified it slightly to add the loop and >> some variables. >> >> I have been able to run the script successfully on 1,2,16 and 32 cores >> successfully and it loops twice. However when I try to run on 64 cores I >> get the following error message: >> >> [node116:58372] 63 more processes have sent help message >> help-mpi-common-cuda.txt / dlopen failed >> [node116:58372] Set MCA parameter "orte_base_help_aggregate" to 0 to see >> all help / error messages >> terminate called after throwing an instance of 'std::bad_alloc' >> what(): std::bad_alloc >> [node125:37180] *** Process received signal *** >> [node125:37180] Signal: Aborted (6) >> [node125:37180] Signal code: (-6) >> [node125:37180] [ 0] /lib64/libpthread.so.0(+0xf710) [0x2aaab28f3710] >> [node125:37180] [ 1] /lib64/libc.so.6(gsignal+0x35) [0x2aaab479f625] >> [node125:37180] [ 2] /lib64/libc.so.6(abort+0x175) [0x2aaab47a0e05] >> [node125:37180] [ 3] >> /usr/lib64/libstdc++.so.6(_ZN9__gnu_cxx27__verbose_terminate_handlerEv+0x12d) >> [0x2aaab408aa7d] >> [node125:37180] [ 4] /usr/lib64/libstdc++.so.6(+0xbcbd6) [0x2aaab4088bd6] >> [node125:37180] [ 5] /usr/lib64/libstdc++.so.6(+0xbcc03) [0x2aaab4088c03] >> [node125:37180] [ 6] /usr/lib64/libstdc++.so.6(+0xbcd22) [0x2aaab4088d22] >> [node125:37180] [ 7] /usr/lib64/libstdc++.so.6(_Znwm+0x7d) >> [0x2aaab408911d] >> [node125:37180] [ 8] /usr/lib64/libstdc++.so.6(_Znam+0x9) [0x2aaab40891d9] >> [node125:37180] [ 9] >> /c1/apps/paraview/4.1.0/lib/libvtkIOXdmf2-pv4.1.so.1(_ZN16vtkXdmfHeavyData10ReadPointsEP12XdmfGeometryPiS2_+0x3a6) >> [0x2aaab716310c] >> [node125:37180] [10] >> /c1/apps/paraview/4.1.0/lib/libvtkIOXdmf2-pv4.1.so.1(_ZN16vtkXdmfHeavyData21RequestStructuredGridEP8XdmfGrid+0xfb) >> [0x2aaab716292f] >> [node125:37180] [11] >> /c1/apps/paraview/4.1.0/lib/libvtkIOXdmf2-pv4.1.so.1(_ZN16vtkXdmfHeavyData15ReadUniformDataEP8XdmfGrid+0x14c) >> [0x2aaab71614ce] >> [node125:37180] [12] >> /c1/apps/paraview/4.1.0/lib/libvtkIOXdmf2-pv4.1.so.1(_ZN16vtkXdmfHeavyData8ReadDataEP8XdmfGrid+0xd1) >> [0x2aaab7160c91] >> [node125:37180] [13] >> /c1/apps/paraview/4.1.0/lib/libvtkIOXdmf2-pv4.1.so.1(_ZN16vtkXdmfHeavyData8ReadDataEv+0x4f) >> [0x2aaab7160a0f] >> [node125:37180] [14] >> /c1/apps/paraview/4.1.0/lib/libvtkIOXdmf2-pv4.1.so.1(_ZN13vtkXdmfReader11RequestDataEP14vtkInformationPP20vtkInformationVectorS3_+0x31c) >> [0x2aaab716daf0] >> [node125:37180] [15] >> /c1/apps/paraview/4.1.0/lib/libvtkIOLegacy-pv4.1.so.1(_ZN13vtkDataReader14ProcessRequestEP14vtkInformationPP20vtkInformationVectorS3_+0x62) >> [0x2aaab0b3b9be] >> [node125:37180] [16] >> /c1/apps/paraview/4.1.0/lib/libvtkIOXdmf2-pv4.1.so.1(_ZN13vtkXdmfReader14ProcessRequestEP14vtkInformationPP20vtkInformationVectorS3_+0x76) >> [0x2aaab716c702] >> [node125:37180] [17] >> /c1/apps/paraview/4.1.0/lib/libvtkCommonExecutionModel-pv4.1.so.1(_ZN12vtkExecutive13CallAlgorithmEP14vtkInformationiPP20vtkInformationVectorS3_+0x8d) >> [0x2aaab10c63d1] >> [node125:37180] [18] >> /c1/apps/paraview/4.1.0/lib/libvtkCommonExecutionModel-pv4.1.so.1(_ZN23vtkDemandDrivenPipeline11ExecuteDataEP14vtkInformationPP20vtkInformationVectorS3_+0x76) >> [0x2aaab10c0b1c] >> [node125:37180] [19] >> /c1/apps/paraview/4.1.0/lib/libvtkCommonExecutionModel-pv4.1.so.1(_ZN24vtkCompositeDataPipeline11ExecuteDataEP14vtkInformationPP20vtkInformationVectorS3_+0x468) >> [0x2aaab10b9950] >> [node125:37180] [20] >> /c1/apps/paraview/4.1.0/lib/libvtkCommonExecutionModel-pv4.1.so.1(_ZN23vtkDemandDrivenPipeline14ProcessRequestEP14vtkInformationPP20vtkInformationVectorS3_+0x522) >> [0x2aaab10c0248] >> [node125:37180] [21] >> /c1/apps/paraview/4.1.0/lib/libvtkCommonExecutionModel-pv4.1.so.1(_ZN32vtkStreamingDemandDrivenPipeline14ProcessRequestEP14vtkInformationPP20vtkInformationVectorS3_+0xa6c) >> [0x2aaab10e5ace] >> [node125:37180] [22] >> /c1/apps/paraview/4.1.0/lib/libvtkCommonExecutionModel-pv4.1.so.1(_ZN24vtkCompositeDataPipeline15ForwardUpstreamEP14vtkInformation+0x2d6) >> [0x2aaab10bbb6e] >> [node125:37180] [23] >> /c1/apps/paraview/4.1.0/lib/libvtkCommonExecutionModel-pv4.1.so.1(_ZN23vtkDemandDrivenPipeline14ProcessRequestEP14vtkInformationPP20vtkInformationVectorS3_+0x48a) >> [0x2aaab10c01b0] >> [node125:37180] [24] >> /c1/apps/paraview/4.1.0/lib/libvtkCommonExecutionModel-pv4.1.so.1(_ZN32vtkStreamingDemandDrivenPipeline14ProcessRequestEP14vtkInformationPP20vtkInformationVectorS3_+0xa6c) >> [0x2aaab10e5ace] >> [node125:37180] [25] >> /c1/apps/paraview/4.1.0/lib/libvtkCommonExecutionModel-pv4.1.so.1(_ZN23vtkDemandDrivenPipeline10UpdateDataEi+0x2fb) >> [0x2aaab10c0965] >> [node125:37180] [26] >> /c1/apps/paraview/4.1.0/lib/libvtkCommonExecutionModel-pv4.1.so.1(_ZN32vtkStreamingDemandDrivenPipeline6UpdateEi+0xf8) >> [0x2aaab10e5d3e] >> [node125:37180] [27] >> /c1/apps/paraview/4.1.0/lib/libvtkPVServerImplementationCore-pv4.1.so.1(_ZN16vtkSISourceProxy14UpdatePipelineEidb+0x196) >> [0x2aaaac77ef72] >> [node125:37180] [28] >> /c1/apps/paraview/4.1.0/lib/libvtkPVServerManagerApplication-pv4.1.so.1(_Z23vtkSISourceProxyCommandP26vtkClientServerInterpreterP13vtkObjectBasePKcRK21vtkClientServerStreamRS5_Pv+0x6ee) >> [0x2aaaab7f27bd] >> [node125:37180] [29] >> /c1/apps/paraview/4.1.0/lib/libvtkClientServer-pv4.1.so.1(_ZN26vtkClientServerInterpreter19CallCommandFunctionEPKcP13vtkObjectBaseS1_RK21vtkClientServerStreamRS4_+0x343) >> [0x2aaaafb57aa5] >> [node125:37180] *** End of error message *** >> >> I am afraid there is an issue with memory leakage or improper memory >> allocation and deallocation. At this point I do not know how to proceed to >> debug it. Is there an obvious problem in in the script and the way datasets >> are deallocated at the end of each iteration? >> >> Regards, >> >> Nikos >> > >
_______________________________________________ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the ParaView Wiki at: http://paraview.org/Wiki/ParaView Search the list archives at: http://markmail.org/search/?q=ParaView Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/paraview