At 2:58 AM -0400 8/21/02, Mike Lambert wrote: > > At 6:16 PM -0400 8/20/02, John Porter wrote: >> >Dan Sugalski wrote: >> >> I expect a UINTVAL should be sufficient to hold the counter. >> > >> >Why? Because you don't expect a perl process to run longer >> >than a couple hours? Or because rollover won't matter? >> >> Rollover won't really matter much, if we're careful with how we >> document things. Still, a UINTVAL should be at least 2^32--do you >> really think we'll have that many GC generations in a few hours? > >Currently, 5000 iterations of life execute in 6 seconds, with 42K DOD >runs. At that rate, we have a rollover every week. Not really a problem, >but if we have code which doesn't allow for rollover, it is a problem.
That feels like we're doing far too many DOD runs there, but that's a tuning issue. [Sensible stuff snipped] >So in conclusion, generational systems can be done using at most a byte or >a short, and it's even possible to do them with nothing at all. So until >the need arises, I don't think the generations count would be worth it. >Especially since I plan to try and prove the need for a header pool >pointer at some point. :) Fair enough. It was a fairly stupid suggestion, as we already *have* the counter in the interpreter, and its reasonably obvious that it's not a good idea to use this data for anything other than informational purposes. -- Dan --------------------------------------"it's like this"------------------- Dan Sugalski even samurai [EMAIL PROTECTED] have teddy bears and even teddy bears get drunk