Actually, I asked that question a bit prematurely, but any answers to number 2 are still welcome-I'd like to know about any and all options.


For the record, for number 1, you can get the associated profiling with a vanilla ocamlbuild/oasis setup without any hairy plugin by doing:
ocaml setup.ml <options options options> -tag profile

From there, just executing your program like normal will have it poop out a little gmon.out that you can work with with gprof. As far as how good it is, it's as good as gprof/gmon because that's what it is behind the scenes.

On Wed, Oct 14, 2015 at 3:44 AM, Kenneth Adam Miller <kennethadammiller@gmail.com> wrote:
So, I'm looking to do some performance profiling of some libraries and tools. I would like some tools that are more language facilitated than an alternative of using something like oprofile because while oprofile is good, you can only guess at what is consuming the most time in your actual ocaml source because all the function names have been lost by that time.

I found ocamlviz, and that seems pretty good, but I'm looking for something else because we plan to move away from using camlp4 toward ppx. Introducing this will mean an additional hurdle to overcome once the transition is complete in terms of customizing the build chain twice.

In any case, I guess what I'd really like to know is:

1) How good are the ocamlcp and ocamloptp tools and how would you get a vanilla oasis/ocamlbuild combo to easily start using them instead?

2) Are there any ppx based profiling tools out there? I need both memory and time profiling to be done. OCamlviz was great because it had a graph-I don't necessarily need a dedicated gui, but some way to visualize the data would be very helpful.