Hacker News new | ask | show | jobs
by dmpk2k 1026 days ago
Does this have much effect on Kandria’s latency results? Shirakumo tries to put a positive spin on things, but her results show that SBCL’s existing GC isn’t up to the task for real-time games (or many networked apps, for that matter).

As an aside, thanks for your efforts. Adding a new GC is a major effort, which improves things for all of us! :D

1 comments

I have yet to benchmark it again; my setup was sloppy as I had to run the same part of the game over and over, because record/replay didn't work. (Nor do I have the time and energy now; have to survive the last semester of university now.) But I suspect it should help, by reducing the sweeping and scavenging times which were pretty bad.

I'm not sure I agree with the comment about "up to the task for real-time games", but maybe my standards are low for video games, and I have an abnormally fast machine and am likely biased there too.

Rightly or wrongly, 60fps is becoming what 30fps used to be, and gamers can tell the difference (as can normal people with VR). It is what it is.

This latency problem is why I’m dabbling with raylib and LFE of all things. The BEAM cannot hold a candle to SBCL for performance code, but the GC latency can be managed better.

Anyway, I don’t want to go on a tangent, since I really appreciate your efforts; there are plenty of domains that the new SBCL GC will be a big deal for.

Now you have my attention. Raylib with lfe. Please talk about your project. I'm very interested.
I wish I had anything interesting to say. I'm currently experimenting with it to see if it's a useful approach to build a game that can sustain a solid 90fps.

Just pushing triangles isn't a problem (so far), but I'm still unclear how much of the engine logic will need to live in a low level language versus within LFE. The BEAM also presents certain architectural possibilities (especially for simulation), that are completely atypical for games.

It's promising enough that I'll continue pursuing this; we'll see where I end up in a few more months. Sorry I can't give more meat than that!

I would be very interested about the architectural possibilities of the BEAM you mentioned. Also the speed of the BEAM is not as bad as is often mentioned, definitely not when you start looking at problems/tests with lots of inherent concurrency. Also the sequential speed has markedly improved with the new ASMJIT.

Also problems with GC basically don't exist when running Erlang/LFE code, at least you have to put a lot of effort into getting problems with GC. A lot! And, of course, the BEAM does automatic load balancing over multiple cores which is another problem gone away. We never have to think about the class of problems like "I have my system set up to run on 2 cores, how should I modify it to run on 4?".

I have some questions perhaps you can answer,

Do you have a git repo i can star and check back for updates ?

Are you developing on Linux or MacOSX ?

I'm keeping a list of awesome lfe projects , even if you make it to a 'demo' stage, I'd love to list it, please consider letting me know.

Just Linux, but I have a Windows machine too at the moment, so I'll make sure it runs on that as well.

I will let you know. It's extra motivation to me too! Someone else is interested!