Criação de perfil de uma função mex
Acabei de reescrever um programa Matlab em c ++ como uma função mex para acelerar as coisas, com resultados fantásticos. Essa decisão de otimização foi uma idéia muito boa, com um fator até 20 de velocidade sem encadeamento. Ainda me deixou curioso sobre o que a função do mex estava gastando tempo e querendo identificar possíveis gargalos.
Eu estou procurando uma maneira de perfil de funções do mex. O profiler matlab não é muito útil, e os outros profilers que eu baixei (ambos gratuitos e trial) querem que um executável seja executado. Eu não sou mex-guru, mas pelo que entendi, a única maneira de administrar um mex é de dentro do Matlab. A função mex é compilada em uma dll, mas é chamada .mex64. Portanto, esse problema deve ser semelhante à criação de perfil de uma dll. Para escrever a função mex de c ++, usei um VS2005 de usuário único (ou seja, não a versão de equipe) e estou executando em uma plataforma x64.
Alguém sabe de uma boa maneira de fazer o perfil de uma função mex? Qual ferramenta devo usar e como usá-la quando começo de dentro do Matlab? Ou existe alguma outra maneira de perfilar o código c + +?