HACKER Q&A
📣 Fr33maan

Fastest language for iteration and arrays manipulation?


I currently have a microservice written in js which basically query a redis db and iterate few hundred or thousands times while geting/pushing values from/to arrays in multiple for loops.

It's made to build line of sight of players for a mmo game.

The service run as a loop, ideally at 60FPS (1 iteration = 16ms). More players in the world = more time to iterate.

I have the belief that writing in C++ the same would be faster but: 1. That's a belief, I didn't do any benchmark 2. I don't have the belief that C++ will be the fastest to do it.

What HN does think about that ?


  👤 al2o3cr Accepted Answer ✓

    query a redis db
General rule: if you're looking for "fastest", pulling data over the network is not part of the solution.

As for the choice of language, it's going to be heavily motivated by what languages you (or your team) know how to benchmark and optimize. It doesn't matter if, say, Befunge is the "fastest" if you don't have anybody working on it that can optimize it.


👤 tjchear
It doesn't have to be fastest, it just has to be faster than what you're using now. C++ compiler has a suite of automatic compiler optimizations that'll make your code performant. Things like loop unrolling, strength reduction, vectorization, cache optimization can make your code many times faster than what you can muster with js.

There's a reason why many AAA titles use C++. No benchmark necessary.


👤 unlinked_dll
You should probably identify and quantify the bottlenecks first. My guess is this in an XY problem and you’re IO bound or your architecture is doing something bad like a linear complexity algo calling a linear complexity algo in your iteration, and a 1:1 translation to C++ probably won’t have much benefit.

👤 abjKT26nO8
Maybe Fortran?