Qual ferramenta posso usar para analisar o uso da memória? [fechadas]

Eu tenho um aplicativo do Windows escrito usando C ++ usando o Visual Studio 2008. Eu quero obter estatísticas sobre o uso de memória para localizar gargalos e locais para trabalhar no uso de memória. Idealmente, eu gostaria de ter uma ferramenta que faz isso sem ter que entrar e adicionar lógica de contador / perfil ao próprio código. Basicamente, o que estou procurando é:

Lista de todas as alocações (liberadas ou não, não importa, eu quero saber toda vez que algo é alocado)Pilha de chamadas de cada alocação e um contador que representa o número de vezes que o código foi chamado e a memória foi alocada.Informações sobre qual memória foi liberada versus não liberada (para encontrar vazamentos). Idealmente, seria inteligente o suficiente para determinar se a memória ainda está em uso ou se realmente vazou (via escopo ou algum outro mecanismo inteligente).

Eu não me importo se é uma ferramenta gratuita ou não. Aqui estão algumas ferramentas que eu já vi:

Rational PurifyPlus: Honestamente, não consegui usar muito essa ferramenta. Ele retorna muitos falsos positivos. Além disso, ele não me dá os 2 primeiros itens da minha lista acima, ele parece se concentrar apenas em erros de memória e vazamentos.Sysinternals VMMap: Esta ferramenta é interessante e permite-me ver como a memória é espalhada (pilha vs heap vs heap compartilhado, etc). Também me permite ver uma árvore de chamadas de alocações, mas não é muito intuitiva ou útil. É difícil entender os dados.DevPartner Boundschecker: Eu realmente acho que esta é a ferramenta mais inútil até agora. Eu usei isso anos atrás antes de serem comprados pela DevPartner e eu me lembro de trabalhar muito melhor. Mas realmente não me fornece os dados estatísticos de que preciso, nem parece ser capaz de detectar corretamente vazamentos de memória.

Agradeço antecipadamente qualquer ajuda / conselho. Meu aplicativo é um servidor e sofre sérios problemas de crescimento de memória ao longo do tempo durante o teste de estresse (e, eventualmente, falha devido a bytes virtuais excederem o limite para aplicativos de 32 bits). Ter a ferramenta certa me ajudará a isolar onde estamos alocando memória e também onde poderemos estar vazando memória.

questionAnswers(5)

yourAnswerToTheQuestion