5 ms·
Does anybody know of a good benchmark between Elixer, GO and Scala?
by tschellenbach 10y ago
Does anybody know of a good benchmark between Elixer, GO and Scala?
- mutagen 10y agoThe TechEmpower benchmarks are commonly mentioned. They show Go as a top performer with some occasional decent results from Scala. http://www.techempower.com/benchmarks/#section=data-r12&hw=peak&test=query&l=2ifbk http://www.techempower.com/benchmarks/#section=data-r12&hw=p... I have no idea how well the implementations are on each of these or how well each platform works within the constraints of this benchmark.
- ryanplant-au 10y agoIt should be noted here that the Phoenix framework author (Chris McCord) complained that the Elixir benchmarks here were set up poorly. Quoting from his post: "They were testing JSON benchmarks through the :browser pipeline, complete with crsf token generation. They had a dev DB pool size of 10, where other frameworks were given of pool size of 100. And they also had heavy IO logging, where other frameworks did no logging. We sent a PR to address these issues, and I was hoping to see true results in the latest runs, but no preview was provided this time and we weren't able to work with them on the errors."
- andruby 10y agoOver a year ago, there was a benchmark of web frameworks. It compares the performance of frameworks written in Elixir, Go, Java, Node and Ruby. https://gist.github.com/omnibs/e5e72b31e6bd25caf39a https://gist.github.com/omnibs/e5e72b31e6bd25caf39a
- david-given 10y agoThat's really interesting --- how come Elixir does so well? I thought that the BEAM VM was good for concurrency and reliable systems, but wasn't so great at raw number crunching compared to the JVM and compiled code?
- ben_jones 10y agoIMO the most effective way to answer this is to write your own benchmarks tailored exactly to your use case(s) in each of these languages.
- sargun 10y agoIt depends on what you're doing. For purely computational workloads, Go, and Scala kick Elixir's ass. For highly concurrent workloads where you're edging up against GC, Elixir, and Go kick ass. It all depends.
- premium-concern 10y agoI'm pretty sure that neither Go nor Elixir have anything to compete against Hotspot/Azul in the GC department.
- di4na 10y agoThey don't have to. An usual Elixir problem is IO bound, which means that most of the time you don't have to do GC. The BEAM GC each process isolately, which means that if a process die before a GC is needed, the BEAM just clean the whole process memory. No need for a GC. That is what happens most of the time.