Skip to content

Parallel and Thread-Safe Ruby at High-Speed with TruffleRuby

Photo of Dimiter Petrov
Hosted By
Dimiter P.
Parallel and Thread-Safe Ruby at High-Speed with TruffleRuby

Details

Array and Hash are used in every Ruby program. Yet, current implementations either prevent the use of them in parallel (the global interpreter lock in MRI) or lack thread-safety guarantees (JRuby raises an exception on concurrent Array#<<). Concurrent::Array from concurrent-ruby is thread-safe but prevents parallel access.

This talk starts with an introduction to show how TruffleRuby works and then shows a technique to make Array and Hash thread-safe while enabling parallel access, with no penalty on single-threaded performance. In short, we keep the most important thread-safety guarantees of the global lock while allowing Ruby to scale up to tens of cores!

---

18:30 - 18:45
Arriving, chat

19:00 - 20:00
TruffleRuby talk by Benoit Daloze

20:00 onwards
Discussions

Photo of Ruby on Rails Schweiz group
Ruby on Rails Schweiz
See more events
Simplificator
Pfingstweidstrasse 6 Zurich · Zürich