[Ecls-list] Type propagation
Gabriel Dos Reis
gdr at integrable-solutions.net
Fri May 28 20:28:41 UTC 2010
On Fri, May 28, 2010 at 3:14 PM, Juan Jose Garcia-Ripoll
<juanjose.garciaripoll at googlemail.com> wrote:
>
>
> On Wed, May 26, 2010 at 11:09 PM, Juan Jose Garcia-Ripoll
> <juanjose.garciaripoll at googlemail.com> wrote:
>>
>> I have stripped down and reimplemented the type propagator. Right now it
>> is kind of stable and implements forward type propagation for most forms.
>> You will see, however, some harmless notes such as the following one.
>> ;;; Note:
>> ;;; Refusing to propagate FUNCTION
>> The result is that some benchmarks are now dominated by stupid statements
>> in them (ASSERT) (SBCL first column, ECL tonight second, ECL 10.4.1 last)
>> 1D-ARRAYS [ 0.03] 1.00 2.67
>> 2D-ARRAYS [ 0.24] 3.04 7.17
>> 3D-ARRAYS [ 0.68] 2.19 11.78
>
> Ok, so this is how it looks now on a newer version that implements type
> propagation, fixes type propagation for arrays and takes a different, more
> efficient approach to the problem of unboxing temporaries.
> 1D-ARRAYS [ 0.03] 1.67 2.67
> 2D-ARRAYS [ 0.24] 0.75 7.17
> 3D-ARRAYS [ 0.68] 0.68 11.78
> 1D-ARRAYS is dominated by an assertion and in particular by the call to
> SEARCH, a function which I have not optimized. If I change the test as shown
> below, with more iterations, no call to SEARCH and yet fully executed (not
> optimized away), then the comparison is more fair: ECL performs equally well
> or better than SBCL (remember that numbers are relative to the reference)
Ok, thanks for the update! I'll build OpenAxiom later and report
whatever I found.
I suspect that improvement for 1D-ARRAYS will be beneficial to many
ECL users :-)
Agains, thanks!
-- Gaby
More information about the ecl-devel
mailing list