With Racket 7.2, the following program takes >13 seconds to run on Windows, 
and <7 seconds on Linux either on Virtualbox on the same machine, or native 
Linux on another machine with slightly lower-powered processor:

#lang racket/base
(define (fact n)
  (if (zero? n) 1 (* n (fact (- n 1)))))
(time (void (fact 100000)))

; Windows native, i7-7660U
;   cpu time: 13610 real time: 13633 gc time: 4459
; Linux on Virtualbox, i7-7660U
;   cpu time: 6691 real time: 6706 gc time: 1298
; Linux native, i7-8500Y:
;   cpu time: 6894 real time: 6882 gc time: 1129



While the difference is unlikely to matter in practice, given `fact 100000` is 
a very large number, I'm curious what accounts for this difference? Is it some 
big-integer library that Racket relies on?

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to