|
From: | Massimiliano Gubinelli |
Subject: | Re: [Texmacs-dev] TeXmacs with S7 Scheme |
Date: | Thu, 31 Dec 2020 10:48:43 +0100 |
Dear all,
I think S7 is optimized but does not do precompilation (all the system is in *one* C file without any additional scheme support file), ideal for embedding. It is missing some utility functions but I think this is not a problem in our project: we can always implement them in the glue and export to the scheme. I've not given up on S7. I'm actually quite surprised is not more well know (but well, TeXmacs isn't either...) I've run a standard scheme benchmark suite (https://ecraven.github.io/r7rs-benchmarks) and the results are astounding I will report them later on when I finish checking also Guile 1.8 which for the moment runs much slower. These are the partial results so far: +!CSVLINE!+guile-1.8.8,browse:2000,77.01 +!CSVLINE!+guile-1.8.8,deriv:10000000,64.08 +!CSVLINE!+guile-1.8.8,diviter:1000:1000000,78.01 +!CSVLINE!+guile-1.8.8,divrec:1000:1000000,74.08 +!CSVLINE!+guile-1.8.8,puzzle:1000,191.51 +!CSVLINE!+guile-1.8.8,triangl:22:1:50,92.71 +!CSVLINE!+guile-1.8.8,tak:40:20:11:1,126.12 +!CSVLINE!+guile-1.8.8,cpstak:40:20:11:1,222.02 +!CSVLINE!+guile-1.8.8,fib:40:5,178.72 +!CSVLINE!+s7,browse:2000,56.062 +!CSVLINE!+s7,deriv:10000000,70.696 +!CSVLINE!+s7,diviter:1000:1000000,18.114 +!CSVLINE!+s7,divrec:1000:1000000,20.411 +!CSVLINE!+s7,puzzle:1000,61.035 +!CSVLINE!+s7,triangl:22:1:50,86.02 +!CSVLINE!+s7,tak:40:20:11:1,36.714 +!CSVLINE!+s7,cpstak:40:20:11:1,227.262 +!CSVLINE!+s7,fib:40:5,16.948 the relevant number is the last which is the time in second, the other numbers identify the parameters in that particular benchmark. You can see there are sometime huge improvements on Guile 1.8 and is never much slower. I'm investigating a bit more what is going on in TeXmacs, maybe I do something which prevents some optimizations. I've contacted the developer which seems wanting to help. S7 seems to me a very solid project: long history, used in well known music software (for algorithmic composition, Snd editor, Common Music framework). Max
|
[Prev in Thread] | Current Thread | [Next in Thread] |