Re: infinities reformulated
Chongkai Zhu
(31 May 2005 07:17 UTC)
|
Re: infinities reformulated
Aubrey Jaffer
(31 May 2005 23:47 UTC)
|
Re: infinities reformulated
Thomas Bushnell BSG
(02 Jun 2005 15:23 UTC)
|
Re: infinities reformulated
Aubrey Jaffer
(02 Jun 2005 16:12 UTC)
|
Re: infinities reformulated
Thomas Bushnell BSG
(02 Jun 2005 16:16 UTC)
|
string->number
Aubrey Jaffer
(02 Jun 2005 19:10 UTC)
|
Re: string->number
Thomas Bushnell BSG
(02 Jun 2005 20:05 UTC)
|
Re: string->number
Aubrey Jaffer
(03 Jun 2005 01:59 UTC)
|
Re: string->number
Thomas Bushnell BSG
(03 Jun 2005 02:09 UTC)
|
Re: string->number
Aubrey Jaffer
(15 Jun 2005 21:10 UTC)
|
Re: string->number
Thomas Bushnell BSG
(16 Jun 2005 15:28 UTC)
|
Re: string->number
bear
(16 Jun 2005 16:59 UTC)
|
Re: string->number
Aubrey Jaffer
(17 Jun 2005 02:16 UTC)
|
Re: infinities reformulated
bear
(04 Jun 2005 16:42 UTC)
|
Re: infinities reformulated
Aubrey Jaffer
(17 Jun 2005 02:22 UTC)
|
Re: infinities reformulated
bear
(19 Jun 2005 17:19 UTC)
|
Re: infinities reformulated Aubrey Jaffer (20 Jun 2005 03:10 UTC)
|
Re: infinities reformulated
bear
(20 Jun 2005 05:46 UTC)
|
precise-numbers
Aubrey Jaffer
(26 Jun 2005 01:50 UTC)
|
| Date: Sun, 19 Jun 2005 10:19:29 -0700 (PDT) | From: bear <xxxxxx@sonic.net> | | On Thu, 16 Jun 2005, Aubrey Jaffer wrote: | | > Can you give an example of a calculation where you expect | > that choosing a reduced precision will reap a large | > benefit? | | Reduction in precision beyond the level of a small float | size supported by the hardware is rarely useful, even when | performing binary tricks, but: | | It often happens in neural networks (read: my day job) that | being able to store a bunch of floats compactly (level-2 | cache size) results in dramatic speedups, and in such cases | (in C) I use arrays of 32-bit floats rather than 64-bit | doubles. Implementations supporting SRFI-47 or SRFI-63 can provide arrays of 32-bit floats. | Since R5RS strongly recommends "precision equal to | or greater than the most precise flonum format supported by | the hardware," and further because in scheme I can't in | general rely on a particular hardware representation without | indirections, tag bits, and other encapsulating structures | which will blow the cache, I can't really do this in R5RS | scheme. That is why SRFI-47 (and SRFI-63) was created. A homogeneous array can be stored as a contiguous block which has just one tag identifying its type. SCM and SLIB/Guile do this. | I can do it using implementation- specific extensions in Chicken | and Bigloo, and I can do it in Stalin, another Lisp-1 dialect | that's largely similar to scheme. You could also do it with SCM or SLIB/Guile (using SRFI-47 or SRFI-63). | But a couple of years ago, I had a (toy) project where I was | simulating orbits several centuries into the future in a | game where the objective was to get a hypothetical | spacecraft from L3/Earth to pluto using only 100 m/s of | delta-vee plus orbital mechanics. And in that project, | having 512-bit precise reals (thanks to Chicken which | allowed itself to be recompiled with alternate real | precision) was *NECESSARY*, since even with scaling, using | "doubles" would have lost crucial information in the | underflow. Of course, it took a long long time to find a | good solution, but search strategies for a good solution | were what the game was about. Would weakening the "most precise" requirement to a recommendation improve Scheme as a platform for such arithmetics?