Hi Joy,

Thanks for the heads up.  This is very interesting information.
In the worse case, we can stick with Guile 1.8...

Best wishes, --Joris


On Thu, Nov 25, 2021 at 03:41:21PM +0000, Joy Yang Qiping via Texmacs-dev wrote:
> Hi Joris,
> 
> > About plans for Scheme.  After the benchmarks, I got somewhat confused.
> >
> > If S7 were systematically faster than Guile (at least than Guile 1.8),
> > then I think that moving to S7 is the simplest option for us.
> > Otherwise, we should keep playing with Guile 3 too.
> >
> > If my understanding is correct, then the main problem is the LaTeX export.
> > Does anyone understand why this is so much slower with S7?
> >
> > Another decision we could make is that we wish to keep the support
> > for various versions of Scheme.  But then we would need a branch that
> > works for both S7 and Guile 3.
> 
> 
> Moving to S7 may not be as simple as we would like. Here is another issue 
> that troubles me. Over my own usage experience, TeXmacs under S7 could 
> consume more memory than I would like (over 1GB for single document editing).
> 
> I think S7 will benefit from a more sophisticated gc implementation. From 
> what I have seen through the code, they are using the same memory pool for 
> every scheme object, which isn’t ideal for TeXmacs. Since TeXmacs not only 
> has a linear growth of persistent object, e.g., edit history for instance, 
> during editing, but also has a lot of side computations that claims some 
> memory for a short duration. This means the gc will often get triggered and 
> are slower and TeXmacs will benefit from having several levels of memory 
> pools (from persistent to short-lived) to adapt to different memory usage 
> pattern. The memory pool grows exponentially. I have tried to tune its 
> exponential parameter from 2 to 1.2~1.5. But from what I have observed, it 
> only delays the inevitable. The current S7’s gc implementation cannot 
> guarantee long-term stability of TeXmacs — memory consumption will grow to a 
> very high level. I don’t think it is a good idea to go through with S7 as is. 
> I could try to turn that into a linear growth, which should work fine for 
> TeXmacs in most cases (I’m guessing). But it really isn’t meant to be a 
> general purpose scheme implementation with those changes. We could also find 
> ways to reduce those persistent memory throughout editing. I might also try 
> to look for some parameters within TeXmacs that affect those (how many 
> editing history to keep for instance) and see if it helps.
> 
> I think it would be better to keep both S7 and Guile 3 working for now. Right 
> now the main problem with Guile 3 is Windows support. Neither is the perfect 
> solution for us :(
> 
> Best regards,
> Joy
> 
> 
> 
> _______________________________________________
> Texmacs-dev mailing list
> Texmacs-dev@gnu.org
> https://lists.gnu.org/mailman/listinfo/texmacs-dev

_______________________________________________
Texmacs-dev mailing list
Texmacs-dev@gnu.org
https://lists.gnu.org/mailman/listinfo/texmacs-dev

Reply via email to