Live data from Hacker News

CPU Usage Differences After Applying Meltdown Patch at Epic Games

epicgames.com

251–260 of 296 posts

Re: CPU Usage Differences After Applying Meltdown Patch at Epic Games

#251
post #249

Earlier quoted context omitted.

Are you sure? I would be extremely surprised if it wouldn't use UDP. For things like getting stats, probably from a HTTP endpoint, sure, but for gameplay? The lag would be very bad, no? Lose a packet and everything is slowed down I see this, which indicates it uses UDP: https://imgur.com/al6KTwT and according to wireshark it's used heavily when in a game, so I assume that's the gameplay protocol. Also when I left my…

It's not entirely uncommon to have TCP on the backend even for AAA games. I worked on a huge open world third-person shooter always-online AAA game and it uses TCP for everything.

Interesting. I know World of Warcraft uses TCP, but I imagine it's less "real-time" than shooters (ie: no hitscan) so a few dropped packets wouldn't have a huge impact (ie. if you're standing casting a spell for 2sec, the game can recover the lag easily). Didn't know some shooters used TCP

Re: CPU Usage Differences After Applying Meltdown Patch at Epic Games

#252
post #38

Earlier quoted context omitted.

I wouldn't be so sure of that. They at least run Javascript through their web browser.

The Nintendo Switch generally only allows white-listed pages. So the attack vector is pretty small. The other consoles, yes, should be possible. But I think not too many people use their consoles for browsing.

The Switch only allows whitelisted pages, but sometimes loads them over HTTP (notably Puyo Puyo Tetris opens a web applet to http://sega.jp), so you can MITM yourself and load arbitrary content including your own JS.

Re: CPU Usage Differences After Applying Meltdown Patch at Epic Games

#253
post #156

if people would still use good old owned hardware without any virtualizsation, spectre and meltdown would not be as scary as it really is on server hardware. which means that only clients would be affected. but since everything runs on the cloud, we basically need to update the whole world.

It's still pretty scary to have computers where all of memory is readabe from every process, even if you own them.

well 50:50 chances are high that if a process goes bogus, that you have more problems than just "memory is readable from every process".

(of course that does not apply to clients where code can run in jit (javascript), software that communicates with the internet, etc and runs on a remote machine). most servers probably should only run trusted code (of course that is mostly never the case because no company evaluates every process they running) but chances are high that if some uses linux and gnu stuff that most shady stuff gets catched. (I mean if not, some people could do a lot of bad stuff, consider a misbehaving systemd, nginx/apache, databases, which could basically do a lot of harm.)

Re: CPU Usage Differences After Applying Meltdown Patch at Epic Games

#254

If it's helpful, Our Node.js, MongoDB, Python servers all with significant network traffic didn't have any measurable impact after KPTI patches on Amazon Linux on T2.medium(burst), M4.large, T2.large(burst) respectively. Our impact is lesser than the figures suggested by redhat's advisory - https://access.redhat.com/articles/3307751

It's not necessarily helpful, since "Python" doesn't indicate 'single-threaded' or 'multi-threaded', and whether or not your threading is constrained on outside resources (MongoDB) or purely internal worker calculations, and etc. But it's interesting!

Re: CPU Usage Differences After Applying Meltdown Patch at Epic Games

#255

Pretty much what I predicted here: https://news.ycombinator.com/item?id=16054674 > Sounds like servers handling lots of small UDP packets would be hit pretty hard.

Fortnite doesn’t use UDP at all (80, 443 and 5222 all TCP), UE4 uses TCP for its network stack by default.

Nope, it might use TCP for negotiation of things that aren't time sensitive but it uses UDP for replication[1] as has pretty much every Unreal or Quake based engine since they were first developed.

I've worked on a variety of engines which were either UE or Quake based. All of them use UDP for temporal game state updates to avoid head of line blocking[2][3].

[1] https://answers.unrealengine.com/questions/197713/is-replica...

[2] https://stackoverflow.com/questions/39323556/why-do-game-dev...

[3] https://www.gamasutra.com/view/feature/131781/the_internet_s...

Re: CPU Usage Differences After Applying Meltdown Patch at Epic Games

#256

Earlier quoted context omitted.

That only works if messages are independent of answers received and are all known at the same point in time. In most games this typically would not be the case, you'd use a message to cram as much state change into it as is known to keep the game moving fluidly. Packing more than one such message together would serve no purpose.

It's pretty common for FPS server game loops to read all the network packets, update player state, run one tick of game logic and physics for all users in a single game, and then send out updates to everyone.

Yup, this is pretty much on the mark. Game updates are sent at a fixed rate(usually 10-20Hz) so you could batch up all outgoing game state into a single dispatch. It'd probably take a bit of work re-architect the output loop(pre-allocate for max number of players to avoid per-frame allocations) but should be reasonably straightforward to implement in most engines.

Re: CPU Usage Differences After Applying Meltdown Patch at Epic Games

#257

Huge real world performance impact, they didn't say how much but it looks like close to 100%. I smell a class action lawsuit coming.

When they said "30%" they really meant it: the usage went from about 10% to about 40%, for an increase of 30.

Re: CPU Usage Differences After Applying Meltdown Patch at Epic Games

#259
post #163

Earlier quoted context omitted.

This is a horrible approach to security. If you only secure against attacks you expect, you're gonna have a bad time.

if you do not apply spectre/meltdown migtation on non virtualized hardware which only you control you are safe. of course a malicious process could do harm without them, but a malicious process probably can be as harmful, even if you have the patches applied. basically we need these patches since on the internet a ton of stuff lives on virtualized hardware and there you can actually be harmful to other vms or even th…

Do you also run all processes on your server as root?

If you’re not going to apply patches that close privilege escalation bugs, you might as well. You’re putting all your security eggs in one basket.

Re: CPU Usage Differences After Applying Meltdown Patch at Epic Games

#260
post #45
post #7

Earlier quoted context omitted.

If they're operating on data supplied by the attacker, they're potentially a single hop away from executing untrusted code.

Would be funny to see a game server exploit (since this was about Epic Games here) via specially crafted network packages that look like valid game messages. Has this happened before? Seems natural that those game coordinator backends and such should have security holes too.

Shouldn't be different to any other server. I've not heard of it happening. However I've heard of many bugs in Overwatch which let you crash the server via in-game actions and kick everyone out.
Post reply on HN