[Linux]Seemingly Random Crashes

computerquipcomputerquip Join Date: 2013-09-11 Member: 188124Members, NS2 Playtester, Squad Five Blue, Retired Community Developer
edited September 2013 in Technical Support
Every 30 minutes to an hour, I get a random crash. I can sometimes get 2 or 3 games in that time but it's quite annoying to continuously be kicked out of a game, especially if I can't rejoin on that specific server.
I have no way of providing any information as far as I know. "${XDGHOME}/.config/Natural Selection 2/log.txt" doesn't really provide much info. There's sometimes a window that pops up on crash but it's white with no title or responsible process name. I *think* the cause of the crash is awesomium but I have little to back that up. I'd run it in gdb if I could figure out the environment to run the game in without steam.

Anyways, just wanted to make sure this is known. It's common to everyone as far as I can see but I've almost never had a game run past an hour.

I run 64-bit Arch Linux, 32GB RAM @ 1866, an EVGA SuperClocked GTX 680, and AMD FX-8350.

EDIT: I run KDE with an OpenGL 3.1-based compositor. I find ALT+TABing in and out increases the chance of a crash but just based on speculation.

Comments

  • rkfgrkfg Russia Join Date: 2013-09-03 Member: 187744Members, Reinforced - Supporter, Reinforced - Silver, Reinforced - Gold, Reinforced - Diamond, Reinforced - Shadow
    http://unknownworlds.com/ns2/32bit/ it's a known and platform-agnostic issue. Please read the comments there.
  • computerquipcomputerquip Join Date: 2013-09-11 Member: 188124Members, NS2 Playtester, Squad Five Blue, Retired Community Developer
    They do not appear to mention Linux and this is based on a 32-bit OS. Contrary to popular belief, a 32-bit OS isn't necessarily limited to the length of a 32-bit pointer. There's a specific mechanism in Linux that demonstrates this named PAE (Physical Address Extension) (and assuming the CPU supports it). Windows also uses this mechanism but hard-limits what is available to the user (because they want more money I guess, I dunno). The only real limitation to this is that each process can only allot ~4GB, not what a true 64-bit pointer can handle. If you're using more than that, the OS might provide an API to allot more but I'm guess the real solution is to just create a 64-bit build.

    I don't think that's the problem anyways.
  • rkfgrkfg Russia Join Date: 2013-09-03 Member: 187744Members, Reinforced - Supporter, Reinforced - Silver, Reinforced - Gold, Reinforced - Diamond, Reinforced - Shadow
    edited September 2013
    As I said, read the comments, please. I described this problem there and mentioned PAE also. Devs just simplified things for Windows users who don't seem to be tech savvy enough. Of course, this bug has nothing to do with OS and happens on any architecture since NS2 is still not compiled for 64-bit.

    I don't think that 64-bit version would be a real solution. The game is awesome but I don't remember games requiring >4 Gb of RAM to work flawless. Except Minecraft maybe but that's Java which is memory-hungry by design. Its GC does defragment the memory IIRC so this kind of issue shouldn't happen on JVM. So the really real solution would be memory pooling or defragmenting. I've got no idea how it's implemented but they already have GC in place so it could be possible to defragment unused memory.
  • computerquipcomputerquip Join Date: 2013-09-11 Member: 188124Members, NS2 Playtester, Squad Five Blue, Retired Community Developer
    So... wait... if this is actually a memory leak, wouldn't this happen for everyone...? Erm... does EVERYONE have this problem?
  • GhoulofGSG9GhoulofGSG9 Join Date: 2013-03-31 Member: 184566Members, Super Administrators, Forum Admins, Forum Moderators, NS2 Developer, NS2 Playtester, Squad Five Blue, Squad Five Silver, Reinforced - Supporter, WC 2013 - Supporter, Pistachionauts
    To answer your question mostly everyone i know has kind of those problems with ns2 but with different time intervalls.
  • spongeboburuspongeboburu Join Date: 2013-09-30 Member: 188540Members
    Adding my two cents: this is still a big problem in 258.

    I think the game might have had a memory leak that was fixed with 258, but the random crashes are more akin of erronous programming, trying to access memory they have no business accessing, like a null or freed memory. Whatever will give you a nice segfault. It's impossible to say because I get no messages in the log and I have no means of running it through a debugger.

    On a side note: There is absolutely no reason at all for a game to run 32-bits on PC today, if anything the 32-bit build should be an esoteric optional. I'm on a 64-bit system with 16G of RAM, even so the 32-bit multilibs work great with REALLY REALLY OLD games I still like to play.
Sign In or Register to comment.