News for hackers. Stuff that matters.
Re:What I mean when I say that machine learning in Elixir is... by OutOfHere on Thursday May 09, 2024 @08:37PM (#40314398)
Python 3.13 beta1 can be compiled with no-GIL mode, which allows free-threading that could perhaps use all cores.
Re:What I mean when I say that machine learning in Elixir is... by hosh on Thursday May 09, 2024 @11:05PM (#40315120)
Let’s say we do that. How many threads can we create?

On BEAM, running 10,000 lightweight processes is normal. Phoenix is designed so that every incoming http request is its own lightweight process.

How does one manage that number of lightweight processes? The runtime’s scheduler keeps track of every single process so nothing is orphaned. It is preemptive, so no lightweight process can starve out another (though there are some exceptions).

They can also suspend cheaply, as such, works well with async io.

The closest thing to this are the new virtual thread feature of recent Java. I don’t think Java has the same kind of properties that will allow it to manage it as well as BEAM. There is a lot more to Elixir than being able to use all the cores.

Re:What I mean when I say that machine learning in Elixir is... by OutOfHere on Thursday May 09, 2024 @11:17PM (#40315189)
Oh certainly; I never meant to think that Python competes with Elixir in this regard. It doesn't.