Gabriel Dos Reis <[EMAIL PROTECTED]> writes:

> "Page, Bill" <[EMAIL PROTECTED]> writes:
> 
> | On Tuesday, September 26, 2006 11:47 PM Gabriel Dos Reis wrote:
> | > 
> | >   The time it takes to build Axiom is prohibitive.  
> | > 
> | > If the build is done only once a day, that is probably alright.
> | > However, when several iterations are done in a day, it becomes
> | > unbearable.   
> | > 
> | > What can be done to improve the build time?
> | > 
> | > -- Gaby
> | > PS: yes, I consider that I have relatively "fast" machines.
> | > 
> | 
> | After eliminating the obvious like avoiding building the docs
> | and running the tests, the next thing you probably need to do
> | is find a way to compile SPAD faster. Right now, interpsys is
> | loaded and compiles a single SPAD file, then quits for each of
> | 1,042 files. In principle it should be possible to compile many
> | SPAD files in a single call to interpsys - say one call per
> | layer in the algebra build.

In fact, as I noted already there is a tiny flaw in the current bootstrap
process.

When adding several layers of spad files, as I did for my guessing package, one
has to add each layer one at the time, and has to call make as

make DAASE=$AXIOM/../../int 

Otherwise the newly built algebra files will not be in the database that
interpsys uses: it uses those in ${SRC}/share by default.

Thus, I think the Makefile should really work as follows:

 * for each layer
  
 *   start interpsys
  
 *   compile all files in the layer
  
 *   create the databases

from the second iteration on, of course, it should use the new databases.

HOWEVER: quite certainly, this will make the build process slower, instead of
faster, for two reasons:

* It takes quite some time to create the databases

* compiling slows down when several files are compiled. Certainly this is a
  bug, but I have no idea where to find it...

Of course, the latter can be circumvented by starting a fresh interpsys for
every file that gets compiled, just as it is done now.

I guess, the best way to speed up the build process is to document the
compiler.

Martin



_______________________________________________
Axiom-developer mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/axiom-developer

Reply via email to