Hello Eric,
> Hello Valeri,
>
> Please note that this macro was also tested on Linux (cf. my mail)
>
> (but the effect is the same on Win2000)
>
> Another even more trivial example (tested on WIN) is :
>
> TCanvas c;
> TH2D h("h","h",100,0,10,100,0,10);
> int i;
> h.Draw();
>
> for (i = 0; i< 10000; i ++) {
> c.Draw();
> }
I still see no memory leak with ROOT based on Qt layer (from http://root.bnl.gov
)
Very likely it is Win32GDK layer feature.
Valeri
> eric
>
>
> > -----Message d'origine-----
> > De : Valeri Fine [mailto:fine@bnl.gov]
>
> > Envoyé : vendredi 20 août 2004 15:02
> > À : eric.anciant@noos.fr; roottalk@pcroot.cern.ch; ANCIANT E.
> > Objet : RE: [ROOT] memory leak in canvas creation / deletion ?
> >
>
> >
>
> > Hello Eric,
> >
>
> > I have tested the ROOT version with Qt layer from
>
> > http://root.bnl.gov using "perfmon" utility (it is a part of
>
> > your Windows system) and the macro you mentioned.
> >
>
> > > macro1 :
> > > {
> > > TCanvas* c;
> > > int i;
> > > for (i=0; i< 10000; i++) {
> > > c = new TCanvas();
> > > delete c;
> > > }
> > > }
> >
>
> > No memory leak was detected yet.
> >
>
> > Have you another example that may help to reproduce the problem?
> > Thank you
> >
>
> > > -----Original Message-----
> > > From: owner-roottalk@pcroot.cern.ch
> > [mailto:owner-roottalk@pcroot.cern.ch]
> > > On Behalf Of eric.anciant@noos.fr
> > > Sent: Thursday, August 19, 2004 4:21 PM
> > > To: roottalk@pcroot.cern.ch; eric.anciant@sodern.fr
> > > Subject: [ROOT] memory leak in canvas creation / deletion ?
> > >
>
> > > Hello rooters,
> > >
>
> > > I have in fact two questions one leading to the second one :
> > >
>
> > > Question 1 :
> > >
>
> > > Using ROOT 4.00/08 with GDK on WIN2000
> > >
>
> > > * Version 4.00/08 9 July 2004 *
> > > Compiled for win32.
> > > CINT/ROOT C/C++ Interpreter version 5.15.138, May 23 2004
> > >
>
> > > I suspect a weird memory leak when drawing canvas : I have an
>
> > > application that display a few canvas (in fact 3) in which
>
> > I draw and
>
> > > updates graphs and histograms over hours, meanwhile the memory usage
> > of
> > > the application grows slowly but constantly ( from about 20
>
> > M to 100's
>
> > > of Meg, eventually crashing the system). I am quite
>
> > confident with the
>
> > > rest of the code, because if I remove the drawing of the canvas
> > (keeping
> > > creation/deletion of histograms and graphs), the leak
>
> > doesn't appear,
>
> > > and because of the funniest part : If I iconify the 3 canvases
>
> > > (graphically using the mouse) the memory usage of the application
>
> > > suddently drops to very low (and to what I would expect the
> > application
> > > memory usage to be; a few megs ), and then starts again to
>
> > grow ....
>
> > > until I de-iconify and re-iconify again the canvases... It
>
> > looks to me
>
> > > more like a GDK / microsoft-windows low level
> > interaction
> > > than a root problem, did somebody have seen something equivalent ?
> > >
>
> > > Question 2 :
> > >
>
> > > I therefore tried a few things at home on Linux box; namely :
> > >
>
> > > macro1 :
> > > {
> > > TCanvas* c;
> > > int i;
> > > for (i=0; i< 10000; i++) {
> > > c = new TCanvas();
> > > delete c;
> > > }
> > > }
> > >
>
> > > macro2 :
> > > {
> > > TH2D* h;
> > > int j;
> > > for (j=0; j<10000; j++ ) {
> > > h = new TH2D("h","h",1000,0,1,1000,0,1);
> > > delete h;
> > > }
> > > }
> > >
>
> > > macro1 shows a memory usage of root.exe that grows
>
> > constantly, macro2
>
> > > shows a (though oscillating ..) steady memory usage.
> > >
>
> > > Is this the expected behaviour ?
> > >
>
> > >
>
> > > eric
> > >
>
> > >
>
> > >
>
> >
>
> >
>
> >
>
>
> ***********
> Ce message et eventuellement les pieces jointes sont exclusivement transmis a
> l'usage de leur destinataire. Leur contenu est confidentiel. Si vous n etes pas
> le bon destinataire nous vous demandons de ne pas conserver, copier, utiliser ou
> divulguer cette communication. Merci de le detruire et de me notifier cette
> erreur.
>
> INTERNET ne permettant pas d assurer l integrite de ce message, SODERN decline
> toute responsabilite au cas ou il aurait ete intercepte ou modifie.
>
>
> This message and possibly any attachments are transmitted for the exclusive use
> of their addressee. Their content is confidential. If you are not the intended
> recipient please do not keep, copy, use or disclose this communication to
> others. Also Please delete it and notify the sender at once.
>
> Because of the nature of INTERNET the sender is not in a position to ensure the
> integrity of this message, therefore SODERN disclaims any liability whatsoever
> in the event of this message having been intercepted and/or altered.
This archive was generated by hypermail 2b29 : Sun Jan 02 2005 - 05:50:09 MET