Frage ui tcmalloc auf Windows



  • Hallo,

    habe heute TCMalloc von Google (http://google-perftools.googlecode.com/svn/trunk/doc/tcmalloc.html) in mein Projekt eingebaut (VS Prof 2005).
    Die Library wird auch korrekt gelinkt, so das die Anwendung nur startet, wenn die DLL gefunden wird.
    Dennoch kann ich nicht überprüfen ob die anwendung nun auch TCMalloc verwendet, meine Tests zeigen dort zur Zeit keinen Unterschied, der Erkennbar wäre.

    Die Anwendung hat eigentlich alle ihre Funktionalität in DLLs, so das ich mich frage, ob diese DLLs auch korrekt von TCMalloc abgedeckt werden. Ich linke diese DLLs nicht mit TCMalloc, sondern nur die exe (wie es auch im Readme steht).
    Die DLLs verwenden wahrscheinlich eine Dynamische CRT (ist afaik ja standard einstellung).

    Wie kann ich jetzt feststellen, ob TCMalloc vor der normale CRT geladen wird?
    Hat jemand Erfahrung mit TCMalloc und VS?
    Kann TCMalloc überhaupt die Allocs aus 3. DLLs wie z.b. Xerces abfangen, oder müsste ich hier einen MemoryManager verwenden?



  • Habe gerade festgestellt das die Laufzeitbibliothek als MT gelinkt wird (exe wie DLLs).
    Weiss jetzt allerdings nicht direkt, was für auswirkungen dies auf exe und DLLs mit TCMalloc hat.


  • Mod

    Ich kann nihct sehen, dass TCMalloc auch für VC++ geeignet wäre, wie auch.

    Die Doku sagt nichts davon...



  • Martin Richter schrieb:

    Ich kann nihct sehen, dass TCMalloc auch für VC++ geeignet wäre, wie auch.

    Die Doku sagt nichts davon...

    Doch, gibt es. Google erwähnt das selber nicht großartig auf den Seiten, allerdings wenn du dir das package herunterlädst findest du ein readme für WIndows sowie Projektdateien für VS8 und VS7. Baut auch einwandfrei, und alle unittests laufen ebenfalls durch.

    Frage mich jetzt halt gerade, ob das sich auch auf die eingebundenen DLLs wirkt, da diese ja mit MT statisch zur CRT gelinkt sind.


  • Mod

    Das glauber ich nicht, dass dies Einfluß auf die DLLs nehmen kann. Schon gar nicht wenn die DLLs statisch gelinkt werden.



  • Martin Richter schrieb:

    Das glauber ich nicht, dass dies Einfluß auf die DLLs nehmen kann. Schon gar nicht wenn die DLLs statisch gelinkt werden.

    Das ist ja auch mein Verdacht, Google schweigt da leider.
    In die DLLs einlinken geht nicht so wirklich wegen JNI, welches auch darauf zugreifen muss.
    Würde mich trotzdem interessieren, ob jemand mit tcmalloc unter Windows Erfahrung hat.


Log in to reply