[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: optimization question



To get reproducible numbers always run in a fresh lisp with the 
same amount of storage allocated to begin.

		(4)     (2)     (3)     (1)
    gc before  1047    2715    4684    6054

from the above you clearly did not do that,  since the function
si::GBC-TIME, returns the number of internal time units spent inside gc
so far.
 
Try to estimate the number of function calls involved.  Calls are
relatively fast, and from the numbers you mention (loop of 500) they
would seem to be inconsequential.  I hope you are at least proclaiming
the functions and their arg and return types (see doc/DOC on emit-fn).
Also AKCL does know how to make a switch statement from a case in the
case of all small fixnum cases [this means you may use a jump table
for the dispatching, rather than wandering down thru the cases with
if].

It can definitely happen in C that inlining goo below actually slows
down calls to foo, since the function foo will have more registers
used (if goo is large), and so need to save more.  It will also have a
harder time with register allocation.

foo(x,y)
{
  blue(x);
 ...
  ..
  goo(x,y)
  ..
  ..
}






From: weigert@etl.go.jp (Thomas Weigert)
Received: by CLI.COM (4.1/1); Fri, 1 May 92 23:49:57 CDT
Received: from etlpom.etl.go.jp by etlpost.etl.go.jp (5.67+1.6W/2.7W)
	id AA01061; Sat, 2 May 92 13:49:45 JST
Received: by etlpom.etl.go.jp (4.1/6.4J.6-ETLpom.MASTER)
	id AA17819; Sat, 2 May 92 13:50:15 JST
Received: by etlhit.etl.go.jp (4.1/6.4J.6-ETL.SLAVE)
	id AA23591; Sat, 2 May 92 13:45:11 JST
Date: Sat, 2 May 92 13:45:11 JST
Return-Path: <weigert@etl.go.jp>
Message-Id: <9205020445.AA23591@etlhit.etl.go.jp>
To: kcl@cli.com
Subject: ilisp + dbl
Reply-To: weigert@mcs.anl.gov


I finally broke down and installed Ilisp to run akcl under.
Sadly enough it turns out that there is no support for dbl
provided. It would really hurt to not have access to dbl, so
I guess I am saddled with rewriting dbl.el to just be an
extension to ilisp-mode, rather than being its own mode.

However, it seems that lots of people must have had the same
problem. Probably there already exists an dbl+ilisp
integration. If so, I would appreciate any info on that.

Thanks,

Thomas.