On Feb 22, 2008, at 4:07 PM, Christian Jaeger wrote:
I wonder whether the (not interrupts-enabled) is a good idea: I expect that if you're handling huge strings, interactivity of other threads will suffer.
Marc has convinced me that disabling interrupts is not a good idea; a few tests show that it doesn't improve performance on those small, tight loops where you're (currently) sure you don't allocate any memory (probably because Gambit now uses __builtin_expect to tell gcc that those POLLs are unlikely to be taken), and in other cases it's not clear that the performance difference is caused by anything more than a different code alignment, etc.
So I've gone through the benchmarks and re-enabled interrupts. The only program it makes a difference in is fannkuch, of a little less than 20%.
Brad