Hi Tom, Yes. ld.so is also an image that is looked for malloc calls. On Fri, Feb 8, 2019 at 10:31 PM Tom Hughes <t...@compton.nu> wrote:
> Right but how does your program get control? Does it manage to see > all the allocations done by the dynamic linker before main is entered? > > Tom > > On 08/02/2019 18:58, Ahmad Nouralizadeh wrote: > > By image, I mean the binary code of the program to be traced and all the > > shared libraries accessed by that program. As soon as they are loaded, > > they will be searched for calls to malloc,... and some code will be > > added before and after each call. The code is used to store stats, such > > as the allocation size. How is it possible to miss an allocation? Every > > possible malloc,... call point is covered. > > > > On Fri, Feb 8, 2019 at 10:14 PM David Faure <fa...@kde.org > > <mailto:fa...@kde.org>> wrote: > > > > LOL that was the risk, getting a third, completely different, number > ;) > > > > Well, you mention that your tool only looks at "each loaded image", > > while heaptrack and valgrind look at ALL allocations. > > > > > > On vendredi 8 février 2019 18:32:01 CET Ahmad Nouralizadeh wrote: > > > Thanks David, > > > But heaptrack even reports a larger number: 153 MB! > > > > > > On Fri, Feb 8, 2019 at 8:09 PM David Faure <fa...@kde.org > > <mailto:fa...@kde.org>> wrote: > > > > On vendredi 8 février 2019 16:32:50 CET Ahmad Nouralizadeh > wrote: > > > > > Hi, > > > > > I wrote a really simple Pin tool to calculate the number of > > dynamically > > > > > allocated bytes in a program. I instrumented GIMP with this > > tool and it > > > > > reported 77 MB of allocations. I did the same experiment with > > Valgrind > > > > > which reported 117 MB. > > > > > My Pin tool is similar to the example in Pin. It searches for > > malloc(), > > > > > calloc() and memalign() in each loaded image and adds > > instructions > > > > > before > > > > > them to calculate the total size of the allocations. > > > > > I am really confused and need help! > > > > > > > > If you're on Linux, I recommend using heaptrack for this :-) > > > > https://github.com/KDAB/heaptrack > > > > > > > > This doesn't really answer your question, sorry about that, but > > you might > > > > want > > > > to see which of those tools heaptrack agrees with, it might > > help finding > > > > out > > > > who is wrong... > > > > > > > > -- > > > > David Faure, fa...@kde.org <mailto:fa...@kde.org>, > > http://www.davidfaure.fr > > > > Working on KDE Frameworks 5 > > > > > > -- > > David Faure, fa...@kde.org <mailto:fa...@kde.org>, > > http://www.davidfaure.fr > > Working on KDE Frameworks 5 > > > > > > > > > > > > _______________________________________________ > > Valgrind-users mailing list > > Valgrind-users@lists.sourceforge.net > > https://lists.sourceforge.net/lists/listinfo/valgrind-users > > > > > -- > Tom Hughes (t...@compton.nu) > http://compton.nu/ >
_______________________________________________ Valgrind-users mailing list Valgrind-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/valgrind-users