Has anyone tried having Discourse on the truffleruby?
Does it make sense to look in this direction?
Interesting. Why did they decide to fork not contribute I wonder?
@merefield Truffleruby is an implementation of Ruby for GraalVM by Oracle guys. Good performance and interoperability with other languages on GraalVM.
It’s not a fork.
I have some experience with Rails on Truffleruby and want to check Discourse next week.
Some additional information - Running Rack and Rails Faster with TruffleRuby - Speaker Deck
Sounds fascinating. Would you expect to be able to run the existing Discourse codebase without significant changes? What kind of changes might be needed?
Short answer: No, it currently doesn’t work on TruffleRuby.
@gerhard Thanks for the link, It will be easier for me to understand existing issues.
The current blocker is mini_racer, see https://github.com/oracle/truffleruby/issues/1827
That said, at least all gems install on TruffleRuby, we test that in CI (for some slightly older Discourse).
Ce problème a été résolu il y a 5 jours.
Malheureusement, mastodon, et non discourse, sera le premier à fonctionner sur truffleruby ![]()
@volanar ouais - je n’ai pas assez de temps pour revenir sur cette question maintenant - journée de travail intensive.
@eregon est là, et je ne suis au courant d’aucun blocage sur truffle, nous avons fusionné les correctifs pour mini racer l’année dernière
Brandon a fait fonctionner Discourse il y a un an :
https://twitter.com/brandonfish/status/1486755128577253376
https://twitter.com/brandonfish/status/1519726230936993792
Un problème dont je me souviens était que certaines gems dépendaient de la thread-safety de Hash, pour laquelle nous avons une solution générale mais qui n’est pas encore fusionnée/intégrée dans TruffleRuby. D’un autre côté, il est très rarement correct d’utiliser simplement Hash de manière concurrente, cela conduit souvent à masquer des bugs de concurrence de manière plus difficile à trouver. Il est donc sans doute préférable de simplement corriger les gems qui en dépendent, mais cela prend du temps.
Nous devons évaluer les performances, et pour que cela soit significatif/représentatif, nous devrions évaluer en multi-thread. Cela nécessite A way to mark C extensions as thread-safe, so they can be executed in parallel · Issue #2136 · truffleruby/truffleruby · GitHub
J’espère que cela sera résolu rapidement ![]()
À quel point pensez-vous que les indicateurs de performance de Discourse s’amélioreront avec l’utilisation de TruffleRuby (TTFB, performances globales, etc.) ?
Brandon est-il sur ce serveur ?
@Matthias_Schuster Une recherche rapide donne
ici sur Meta.