Como você provavelmente sabe, o Xdebug abandonou o suporte a perfis de memória desde a versão 2. *. Pesquise a string "funções removidas" aqui: http://www.xdebug.org/updates.php
Funções removidas
Removido o suporte para perfis de memória, pois não funcionava corretamente.
Tentei outra ferramenta e funcionou bem para mim.
https://github.com/arnaud-lb/php-memory-profiler
Isso é o que fiz no meu servidor Ubuntu para ativá-lo:
sudo apt-get install libjudy-dev libjudydebian1
sudo pecl install memprof
echo "extension=memprof.so" > /etc/php5/mods-available/memprof.ini
sudo php5enmod memprof
service apache2 restart
E então no meu código:
<?php
memprof_enable();
// do your stuff
memprof_dump_callgrind(fopen("/tmp/callgrind.out", "w"));
Finalmente abra o callgrind.out
arquivo com o KCachegrind
Usando Google gperftools (recomendado!)
Em primeiro lugar, instale o Google gperftools baixando o pacote mais recente aqui: https://code.google.com/p/gperftools/
Então, como sempre:
sudo apt-get update
sudo apt-get install libunwind-dev -y
./configure
make
make install
Agora em seu código:
memprof_enable();
// do your magic
memprof_dump_pprof(fopen("/tmp/profile.heap", "w"));
Em seguida, abra seu terminal e execute:
pprof --web /tmp/profile.heap
pprof criará uma nova janela em sua sessão de navegador existente com algo como mostrado abaixo:
Xhprof + Xhgui (o melhor na minha opinião para o perfil de CPU e memória)
Com Xhprof e Xhgui você também pode traçar o perfil do uso da CPU ou apenas do uso da memória, se esse for o seu problema no momento. É uma solução muito completa, dá-lhe total controlo e os logs podem ser escritos tanto no mongo como no sistema de ficheiros.
Para mais detalhes veja minha resposta aqui .
Fogo Preto
Blackfire é um profiler PHP da SensioLabs, os caras do Symfony2 https://blackfire.io/
Se você usar o fantoche para configurar sua máquina virtual, ficará feliz em saber que é compatível ;-)