Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
alfanerd
searching Neon…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
7 ms
·
1.
▲
by
alfanerd
1y ago
I think you only need one queue per actor? And then one worker per CPU core? I believe that how Erlang does it, and do millions of actors without any issues...
2.
▲
by
alfanerd
1y ago
Sending a message between Actors can be just moving a pointer to a piece of shared memory. I think sending messages is more about the way you think about concurrency, more than the implementation. I have always found the "one thread do
3.
▲
by
alfanerd
5y ago
Yes, yes, yes and I hope the alternate timeline will start now. IMO the reason that we have so many ways of doing concurrency in Python (fra asyncio, curio, trio to gevent, multiprocessing etc.) is that it was never properly dealt with. It
4.
▲
by
alfanerd
5y ago
+1
5.
▲
by
alfanerd
6y ago
Of interest might also be Erjang, Kresten Krab's port of BEAM to JVM. https://github.com/trifork/erjang As I understand it, it is feature complete and actually runs Erlang pretty well. Could be interesting to see
6.
▲
by
alfanerd
9y ago
In my 30+ years experience of concurrency, the shared-nothing message model makes it relative easy to reason about concurrency (since every actor is single threaded). I have worked with Java, C# and Python, and for each I have developed a c
7.
▲
by
alfanerd
9y ago
It is in the Gilectomy branch of Larry Hastings github project. ( https://github.com/larryhastings/gilectomy ) I also pasted the fib test to pastebin: https://pastebin.com/Ryyb2K7V
8.
▲
by
alfanerd
9y ago
I just made a quick test: CPython-3.6.1 vs. Jython-2.7.0 (May 2015) I ran Larry Hastings' Gilectomy testprogram x.py: fib(40) on 8 threads HW: MacBook Pro, 2015, 8 (4+4) cores, 1Gb RAM Jython ran the program 8 times faster, utilising a
9.
▲
by
alfanerd
9y ago
You loose access to all the C-libraries that comes with Python. On the other hand you get beautiful integration with all Java libraries very nicely integrated.
10.
▲
by
alfanerd
9y ago
Both Jython (Java impl) and IronPython (C# impl) works fine without the GIL. The big issue is compatibility with C-based libraries, as I hear Larry Hastings, there are three levels of compatibility: 1) Fully compatible, nothing needs to be
11.
▲
by
alfanerd
9y ago
Some years ago I wrote pyworks (www.github.com/pylots/pyworks), a proposal for async objects (inspired by ABCL and cooC (Concurrent Object Oriented-C, https://www.researchgate.net/publication/220178380_Concurr
12.
▲
by
alfanerd
9y ago
I mean the developer (using a highlevel language as Python) ideally should get more performance on an 8-core than on a 1-core CPU. Erlang, which btw. is older than Python, will perform better the more cores you have due to its message orien