[gambit-list] Help With Memory

Marc Feeley feeley at iro.umontreal.ca
Fri Sep 26 11:40:18 EDT 2008


On 26-Sep-08, at 11:29 AM, Bradley Lucier wrote:

>
> On Sep 26, 2008, at 9:23 AM, Marc Feeley wrote:
>
>> Another point I want to make is that Cheney on the MTA give you  
>> "free" call/cc only after paying a premium on other things, namely  
>> stack-like behaving function calls and tail-calls.  Because typical  
>> code, and even realistic call/cc intensive code such as a thread  
>> system, do much more of these other things than calling call/cc,  
>> the overall performance of the system is suboptimal in general.   
>> With the latest set of benchmark results on 51 benchmark programs,  
>> in "r6rs" mode Chicken is 2.7 times slower than Gambit on average  
>> (geometric mean).  That's the cost of "free" call/cc.
>
> Marc:
>
> I'd just like to point out here that, as I'm sure you're aware,  
> there are many different implementation decisions that are made in  
> each of Chicken and Gambit and it is unlikely that any speed  
> difference between the two can be attributed to any single design  
> decision.  The choice of "free" call/cc via Cheney on the MTA may,  
> indeed, be an implementation choice that affects adversely nearly  
> all other aspects of an implementation (which I doubt), but that  
> could only be determined after quite a bit of analysis.
>
> Brad

Yes (of course).  I did not mean that the cost of Cheney on the MTA is  
"2.7 times slower code on average".  I meant that a part of that  
factor of 2.7 was due to Cheney on the MTA.  I think it is a  
substantial part, but the exact amount would require a lot of  
analysis... enough to generate several interesting research papers!

Marc




More information about the Gambit-list mailing list