Hi,

With the new implementation of domain inlining in place (which handles
any parameterized domain), I have moved to the next stage of my pursuit 
of abstraction penalty reduction.

  I have noticed that some folks will avoid using domains other than
Union, Record, List or Vector instantiations as domain representation 
(in assignment to Rep.)  The primary reason, I understand it, is to
avoid the inefficiency associated with SPADCALL when the computation is
trivial, and those domains are systematically inlined.  Well, the new
implementation of domain inlining is, in most cases, at least as
efficient as the old implementation that handled only List and Vector
(and in a way that was questionable.)  However, what about Rep?
Well, now we inline Rep too at optimization level 3.  The reason we do
not have it enabled at lower optimization level is that domain inlining
kind of violates separate compilation -- if you modify and recompile the
domain that was inlined, then you should recompile all its users.

Since the system library is not modified once it is built, we compile
all the standard algebras at optimization level 3.

Please, test and report any issue to me.

-- Gaby

------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
open-axiom-devel mailing list
open-axiom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/open-axiom-devel

Reply via email to