From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: 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 45BF6820A1 for ; Thu, 12 Sep 2013 03:23:35 +0200 (CEST) Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of berenger@riken.jp) identity=pra; client-ip=134.160.33.162; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="berenger@riken.jp"; x-sender="berenger@riken.jp"; x-conformance=sidf_compatible Received-SPF: Pass (mail2-smtp-roc.national.inria.fr: domain of berenger@riken.jp designates 134.160.33.162 as permitted sender) identity=mailfrom; client-ip=134.160.33.162; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="berenger@riken.jp"; x-sender="berenger@riken.jp"; x-conformance=sidf_compatible; x-record-type="v=spf1" Received-SPF: Pass (mail2-smtp-roc.national.inria.fr: domain of postmaster@postman.riken.jp designates 134.160.33.162 as permitted sender) identity=helo; client-ip=134.160.33.162; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="berenger@riken.jp"; x-sender="postmaster@postman.riken.jp"; x-conformance=sidf_compatible; x-record-type="v=spf1" X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AmkBAB0WMVKGoCGinGdsb2JhbABbgz+uAZJMgTMOAQEBAQEICwkJFCiCJQEBBAE4NAIIAgEQCxgJBBIIBwkDAgECATMBEQYNAQUCAQEOh14DCQYMtUwDiU+OG4FPB4QdA4k1jkSBL4UAjnQ X-IPAS-Result: AmkBAB0WMVKGoCGinGdsb2JhbABbgz+uAZJMgTMOAQEBAQEICwkJFCiCJQEBBAE4NAIIAgEQCxgJBBIIBwkDAgECATMBEQYNAQUCAQEOh14DCQYMtUwDiU+OG4FPB4QdA4k1jkSBL4UAjnQ X-IronPort-AV: E=Sophos;i="4.90,887,1371074400"; d="scan'208";a="32509192" Received: from postman2.riken.jp (HELO postman.riken.jp) ([134.160.33.162]) by mail2-smtp-roc.national.inria.fr with ESMTP; 12 Sep 2013 03:23:32 +0200 Received: from postman.riken.jp (postman2.riken.jp [127.0.0.1]) by postman.riken.jp (Postfix) with SMTP id 252BF1260647; Thu, 12 Sep 2013 10:23:30 +0900 (JST) Received: from [172.27.98.103] (rikad98.riken.jp [134.160.214.98]) by postman.riken.jp (Postfix) with ESMTPA id 92C6B1270051; Thu, 12 Sep 2013 10:23:29 +0900 (JST) Message-ID: <52311789.6090606@riken.jp> Date: Thu, 12 Sep 2013 10:23:21 +0900 From: Francois Berenger User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130623 Thunderbird/17.0.7 MIME-Version: 1.0 To: Wojciech Meyer CC: Caml List References: <5229DEF9.7040706@inria.fr> <5229F284.5050806@inria.fr> <5230695E.20100@riken.jp> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-PMX-Version: 6.0.0.2142326, Antispam-Engine: 2.7.2.2107409, Antispam-Data: 2013.9.12.11514 Subject: Re: [Caml-list] Accelerating compilation On 09/11/2013 10:46 PM, Wojciech Meyer wrote: > What are you trying to prove here? I am not trying to prove anything. I just manage to show something, which is the whole point of a good plot. > Makefiles will be always faster as > mentioned before, however there is still space for vast improvement, the > biggest elephant here being slow scanning. Patches welcome. > > Also, it does not show the convenience of using ocamlbuild, in > particular dynamic dependency resolver, nice language for specyfing > complex rules, tags, and VPATH build that just works (does your makefile > VPATH at all?) > > > > On Wed, Sep 11, 2013 at 2:00 PM, Francois Berenger > wrote: > > On 9/7/13 5:51 AM, Fabrice Le Fessant wrote: > > On Fri, Sep 6, 2013 at 5:20 PM, Romain Bardou > > wrote: > > 3) Parallel compilation in Ocamlbuild > > Of course it would help but it is not easy to > implement so I'm just > putting it there to be exhaustive. > > > I'm not sure what you are referring to, OCamlBuild does > already > support parallel builds. > > > Does it? I actually thought the -j option was ignored. > > I just did a quick test and I gain about 5 seconds with -j > on a 1min15 > build (I had cleaned, recompiled and recleaned before so > that caching by > the file system would not impact the result too much), so it > does seem > to be a *little* faster :) > > > FWIW, I recently compiled Merlin with both ocamlbuild and ocp-build, > on a quad-core with "-j 10" for both (the link to the ocp-build > description file is in the latest OCamlPro's report), ocamlbuild > needs > 13s where ocp-build only needs 4s to compile everything. > > > This morning, I played with a Makefile and ocamlbuild > to build batteries-included from a clean source tree. > > The Makefile was provided by Cedric Cellier. > > Here follows the wallclock times to build on my eight cores machine. > > #You can plot them like this: > cat < make_Vs_ocamlbuild.data > #nprocs Makefile ocamlbuild > 1 14.52 21.43 > 2 6.84 17.57 > 3 4.95 16.44 > 4 4.18 15.95 > 5 3.70 15.67 > 6 3.36 15.62 > 7 3.12 15.54 > 8 3.03 15.292 > EOF > gnuplot -persist < set title 'make Vs ocamlbuild' > set xlabel 'nprocs' > set ylabel 'wallclock time(s)' > plot 'make_Vs_ocamlbuild.data' u 1:2 w lines title 'time -p make > fast -j np', \ > '' u 1:3 w lines title 'ocamlbuild -j np' > EOF > > > > -- > Caml-list mailing list. Subscription management and archives: > https://sympa.inria.fr/sympa/__arc/caml-list > > Beginner's list: http://groups.yahoo.com/group/__ocaml_beginners > > Bug reports: http://caml.inria.fr/bin/caml-__bugs > > >