From owner-freebsd-hackers@FreeBSD.ORG Mon May 28 17:10:27 2007 Return-Path: X-Original-To: freebsd-hackers@freebsd.org Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 6A15016A498 for ; Mon, 28 May 2007 17:10:27 +0000 (UTC) (envelope-from stephen@math.missouri.edu) Received: from math.missouri.edu (math.missouri.edu [128.206.184.200]) by mx1.freebsd.org (Postfix) with ESMTP id 34D7F13C4EA for ; Mon, 28 May 2007 17:10:27 +0000 (UTC) (envelope-from stephen@math.missouri.edu) Received: from math.missouri.edu (localhost [127.0.0.1]) by math.missouri.edu (8.13.1/8.13.1) with ESMTP id l4SHAQ8v040061; Mon, 28 May 2007 12:10:26 -0500 (CDT) (envelope-from stephen@math.missouri.edu) Received: from localhost (stephen@localhost) by math.missouri.edu (8.13.1/8.13.1/Submit) with ESMTP id l4SHAQE9040057; Mon, 28 May 2007 12:10:26 -0500 (CDT) (envelope-from stephen@math.missouri.edu) Date: Mon, 28 May 2007 12:10:25 -0500 (CDT) From: Stephen Montgomery-Smith To: David Naylor In-Reply-To: <200705281828.48026.blackdragon@highveldmail.co.za> Message-ID: <20070528120929.D12634@math.missouri.edu> References: <4659EF80.70100@math.missouri.edu> <20070527223048.GA37505@icarus.home.lan> <465A33D4.1040706@math.missouri.edu> <200705281828.48026.blackdragon@highveldmail.co.za> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: freebsd-hackers@freebsd.org Subject: Re: Looking for speed increases in "make index" and pkg_version for ports X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 28 May 2007 17:10:27 -0000 On Mon, 28 May 2007, David Naylor wrote: > On Monday 28 May 2007 03:43, you wrote: >> Maybe I should look at the inner workings of cmake and gmake. Maybe >> they have some good ideas. However having looked through the source >> code of make, and also looking at the cvs logs, it does seem to be well >> written. The only possibility I see of making it go a lot faster is a >> complete redesign, e.g. my just in time idea for processing variables. >> >> Stephen > > Just in time (jit), if I remember correctly, is a term used by java > interpreters which compile the byte code into machine code!!! Perhaps this > could be developed for makefile's, especially bsd.*.mk. > > This, I think, could be done in two ways: > 1) Develop the bsd.*.mk files in C and link it in with make, or > 2) Use the makefiles as source to compile into machine code (passibly via > C->ASM). The machine code could be created on demand, or cached and only > updated if the source makefile changes. > > I am not sure if this could work or even if it will have any significant speed > increase. However if method 2 does work it has the potential to radically > increase the speed of ports _while_ maintaining the flexability. > > All that will be needed is an API for the machine code and a compiler??? > My gut reaction is the same as yours - I doubt that this would bring any speed increases. And the programming effort would be huge.