From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@sympa.inria.fr Delivered-To: caml-list@sympa.inria.fr Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by sympa.inria.fr (Postfix) with ESMTPS id 6678D7ED1D for ; Wed, 14 Oct 2015 10:04:25 +0200 (CEST) X-IronPort-AV: E=Sophos;i="5.17,681,1437429600"; d="scan'208";a="182700841" Received: from meleze.ens.fr (HELO [129.199.99.114]) ([129.199.99.114]) by mail2-relais-roc.national.inria.fr with ESMTP/TLS/DHE-RSA-AES128-SHA; 14 Oct 2015 10:04:25 +0200 To: caml-list@inria.fr References: From: Francois Berenger Message-ID: <561E0C88.2030903@inria.fr> Date: Wed, 14 Oct 2015 10:04:24 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.3.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Caml-list] Automated Instrumentation for Profiling On 10/14/2015 09:59 AM, Kenneth Adam Miller wrote: > 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. Personally, I used the Linux perf tools in the past. I like them because they don't force you to recompile your software. perf record [program invocation] # to profile your program perf report -g # to read the report > 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 -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 > > 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. > > -- Regards, Francois. "When in doubt, use more types"