Brad,
I can clearly see times when it would be preferential to distribute the execution of multiplications, divisions (and square roots) to all Gambit processors.
Maybe this is particularly relevant in places where the numerator and denominator within fractionals, are very big, e.g. (/ a b) where a and b are both the result of (/ (random-integer (expt 10 30)) (random-integer (expt 10 25)) or higher exponents than that.
The point would be that a program sometimes not can anticipate when it will run into such heavy operations, however when it does, generally but not always, a user is waiting and it's preferable to parallellize it.
Could some kind of parallellize-math? setting be introduced, with what scope, thread-local or processor-local or global?
By the way, how many cores could the fractional above be spread across, and approx what speedup over serial execution could probably be attained?
And what about the same for the fractional but with the exponents doubled in size to 60 and 50?
This is not a super high priority but thanks for bringing it up.
Thanks,
Adam