First Light
The PicoCalc showed up on Monday, and I've spent some time getting uLisp running on it. The image that it shipped with was built on the Pico, while I have a Pico 2W in mine.
I've run a few benchmarks:
ARM @ 150MHz | ARM @ 200MHz | RISC-V @ 150MHz | RISC-V @ 200MHz | |
---|---|---|---|---|
tak | 4.6s | 3.4s | 6.6s | 4.8s |
fib | 3.2s | 2.4s | 4.9s | 3.6s |
q | 6.2s | 4.6s | 9.5s | 6.7s |
q2 | 11.3s | 8.4s | 16.7s | 12.0s |
factor | 1.6s | 1.2s | 2.2s | 1.6s |
sieve | 18.1s | 13.6s | 23.6 | 17.1s |
The transcript is below, where I've taken the first benchmark, and then just appended the output from each build. I've compacted it a bit to remove some of the extraneous newlines.
You may be interested in the benchmark programs:
tak.lsp
. It is taken from the uLisp
benchmarks page.
uLisp 4.7b
> (load "tak.lsp")
tak
benchmark-tak
fib
benchmark-fib
q
benchmark-q
q2
benchmark-q2
factor
*factor-prime*
benchmark-factor
sieve
benchmark-sieve
benchmark-check
benchmark-time-it
benchmark
nil
;; 150 MHz Pico 2W (ARM)
> (benchmark)
(tak 18 12 6) nil
Time: 4.6 s
(fib 23) nil
Time: 3.2 s
(q 21) nil
Time: 6.2 s
(q2 7 8) nil
Time: 11.3 s
(factor 2142142141) nil
Time: 1.6 s
(sieve 100000) nil
Time: 18.1 s
;; 200 MHz Pico 2W (ARM)
> (benchmark)
(tak 18 12 6) nil
Time: 3.4 s
(fib 23) nil
Time: 2.4 s
(q 21) nil
Time: 4.6 s
(q2 7 8) nil
Time: 8.4 s
(factor 2142142141) nil
Time: 1.2 s
(sieve 100000) nil
Time: 13.6 s
;; 150 MHz Pico 2W (RISC-V)
> (benchmark)
(tak 18 12 6) nil
Time: 6.6 s
(fib 23) nil
Time: 4.9 s
(q 21) nil
Time: 9.5 s
(q2 7 8) nil
Time: 16.7 s
(factor 2142142141) nil
Time: 2.2 s
(sieve 100000) nil
Time: 23.6 s
;; 200 MHz Pico 2W (RISC-V)
> (benchmark)
(tak 18 12 6) nil
Time: 4.8 s
(fib 23) nil
Time: 3.6 s
(q 21) nil
Time: 6.7 s
(q2 7 8) nil
Time: 12.0 s
(factor 2142142141) nil
Time: 1.6 s
(sieve 100000) nil
Time: 17.1 s