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

Re: Number crunching in CLISP.



> Received: from nz11.rz.uni-karlsruhe.de by muon.phys.washington.edu via SMTP (920330.SGI/911001.SGI)
> 	for reggie id AA05331; Tue, 9 Aug 94 13:07:30 -0700
> Received: from ma2s2.mathematik.uni-karlsruhe.de by nz11.rz.uni-karlsruhe.de 
>           with SMTP (PP); Tue, 9 Aug 1994 22:03:35 +0200
> Received: from (localhost) by ma2s2.mathematik.uni-karlsruhe.de (4.1/SMI-4.0) 
>           id AA02115; Tue, 9 Aug 94 22:10:08 +0200
> Date: Tue, 9 Aug 94 22:10:06 +0200
> Errors-To: haible@ma2s2.mathematik.uni-karlsruhe.de
> Message-Id: <9408092008.AA02082@ma2s2.mathematik.uni-karlsruhe.de>
> Originator: clisp-list@ma2s2.mathematik.uni-karlsruhe.de
> Errors-To: haible@ma2s2.mathematik.uni-karlsruhe.de
> Reply-To: clisp-list <clisp-list@ma2s2.mathematik.uni-karlsruhe.de>
> Sender: clisp-list@ma2s2.mathematik.uni-karlsruhe.de
> Version: 5.5 -- Copyright (c) 1991/92, Anastasios Kotsikonas
> From: haible@ma2s2.mathematik.uni-karlsruhe.de (Bruno Haible)
> To: Multiple recipients of list <clisp-list@ma2s2.mathematik.uni-karlsruhe.de>
> Subject: Re: Number crunching in CLISP.
> 
> > If my memory serves me correctly, Bruno once told
> > me that CLISP does all floating point operations by itself (i.e. -
> > doesn't use the FPU).  Is this correct?
> 
> Yes, on most machines.
> 
> > If it does do floating point in software, how hard is it to
> > change this?
> 
> Not very hard: add "#define FAST_DOUBLE" and "#define FAST_FLOAT" to
> lispbibl.d, -fallow-single-precision to the CFLAGS in the makefile
> (need gcc-2.6.0 for this), and recompile.
> 
> > Are floating point numbers stored in system format (as a C float)?
> 
> Yes, if the floating point operations are done in hardware, the
> system format (i.e. IEEE) is used.
> 
> > Is the numerical code well isolated?
> 
> Yes, it is a single file called lisparit0.d.
> 
> But that won't help you much because while the floating point operations
> are done in hardware, the boxing (allocating storage for the float)
> and the function call and type dispatching overheads remain.

	Is there any way to get the float operations unboxed with
proper declarations?


-Reggie