From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (from majordomo@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id UAA15621; Sun, 19 Sep 2004 20:17:51 +0200 (MET DST) X-Authentication-Warning: pauillac.inria.fr: majordomo set sender to owner-caml-list@pauillac.inria.fr using -f Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id UAA14202 for ; Sun, 19 Sep 2004 20:17:49 +0200 (MET DST) X-SPAM-Warning: Sending machine is listed in blackholes.five-ten-sg.com Received: from alex.barettalocal.com (host74-68.pool80116.interbusiness.it [80.116.68.74]) by concorde.inria.fr (8.13.0/8.13.0) with ESMTP id i8JIHmXs029749 for ; Sun, 19 Sep 2004 20:17:48 +0200 Received: from baretta.com (localhost.localdomain [127.0.0.1]) by alex.barettalocal.com (Postfix) with ESMTP id 0E2C32BAA9B; Sun, 19 Sep 2004 20:19:06 +0200 (CEST) Message-ID: <414DCD99.10307@baretta.com> Date: Sun, 19 Sep 2004 20:19:05 +0200 From: Alex Baretta User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.6) Gecko/20040413 Debian/1.6-5 X-Accept-Language: it, en-us, en MIME-Version: 1.0 To: skaller@users.sourceforge.net Cc: Alex Baretta , Ocaml Subject: Re: [Caml-list] Ocaml automation update References: <4139E101.8040306@barettadeit.com> <1094314643.3352.342.camel@pelican.wigram> In-Reply-To: <1094314643.3352.342.camel@pelican.wigram> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 8bit X-Miltered: at concorde with ID 414DCD4C.001 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Loop: caml-list@inria.fr X-Spam: no; 0.00; baretta:01 baretta:01 caml-list:01 2004:99 tweak:01 latent:01 plc:99 predictable:01 latencies:01 ocaml:01 ocaml:01 alex:01 alex:01 heap:03 heap:03 Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk skaller wrote: > On Sun, 2004-09-05 at 01:36, Alex Baretta wrote: > >>I wish to let you know that the first application of ocaml to realtime >>industrial control has succeeded. > > > Nice job! Now we all want to know -- how did the > Ocaml GC stand up? How did you tweak it? :) > Sorry for not answering earlier. GC simpòy is not an issue. We allocate a lot, but newly allocated blocks tend to have a very short life. The GC is kept latent during PLC rounds and activated between rounds with heap compaction disabled. The full_major collection is an order of magnitude faster than the cycle time we require, and since we run it sistematically between rounds it runs in constant and predictable time. The only unpredictable latencies are due to heap compaction, but we only run heap compaction when the system is known to be in quiescent state until user input. Alex ------------------- To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/ Beginner's list: http://groups.yahoo.com/group/ocaml_beginners