Jump to content

View more

Image of the Day

Inventory ! Va falloir trouver une autre couleur pour le cadre D: #AzTroScreenshot #screenshotsaturday https://t.co/PvxhGL7cOH
IOTD | Top Screenshots

The latest, straight to your Inbox.

Subscribe to GameDev.net Direct to receive the latest updates and exclusive content.

Sign up now

Stripping Down Puppy Linux For Server. Good Idea Or No?

4: Adsense

Old topic!

Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
6 replies to this topic

#1 Toothpix   Members   


Posted 13 April 2013 - 01:45 PM

I have been recently working on a multiplayer game, and I had a great optimization idea. The game is based on client-server architecture, and the server software is provided with the actual game so that anybody can set up a server. It runs on Linux. Most of the components that bog down any modern operating system probably won't be needed in the server, so I was thinking that if I took a super-lightweight OS, like Puppy Linux with the Puppy Linux Kernel, and removed all functionality related to X Window Server, audio support, USB, CD/DVD, parallel programs, etc. that it would be a real advantage and make an already small OS into something microscopic. The server software would be provided in the new OS disk image from the game's website. Is this a good idea, and would this take too much time?


P.S: The optimization is brought about by two reasons:

1. To enable players with older computers to host servers

2. Because the amount of players hosted on the server can scale to the owner's specification (within the size of type int), it needs to run very fast.

C dominates the world of linear procedural computing, which won't advance. The future lies in MASSIVE parallelism.

#2 Nercury   Members   


Posted 13 April 2013 - 02:53 PM

I have a gut feeling that you are overthinking it a bit :/


Any linux server distribution would already have a X Window server and audio stack removed. Optimizing is ok, but there is a real limit of what you can do on old computer. I have a unusable old computer downstairs, I think 20 or more VM instances of the same thing on my current machine would still run faster than it. Maybe just host the server on a samsung galaxy, it has more juice :). And an OS image, just for one game? That is crazy :). Nevertheless, that does sound cool.


I think it would take too much time for a very small gain.

#3 Waterlimon   Members   

Posted 13 April 2013 - 02:57 PM

You can probably get more performance by using the time to optimize the game itself.


#4 sunandshadow   Members   

Posted 13 April 2013 - 03:35 PM

My friend the lifelong linux user recommends arch linux or debian as your starting OS rather than puppy.

I want to help design a "sandpark" MMO. Optional interactive story with quests and deeply characterized NPCs, plus sandbox elements like player-craftable housing and lots of other crafting. If you are starting a design of this type, please PM me. I also love pet-breeding games.

#5 TheChubu   Members   

Posted 13 April 2013 - 04:57 PM

Linux with GNOME 3/KDE 4 and you get hardware requirements in the ballpark of Vista/Windows 7.

Linux with GNOME 3 fallback mode/GNOME 2/Xfce/LXDE and you get hardware requirements in the ballpark of Windows XP (ordered from highest to lowest, GNOME 3 fallback works with 300Mb of memory, LXDE with 100Mb of memory).


Linux without GUI and you can run it on anything already. No need to strip it down further (well, maybe removing cups because its a no-brainer :D ).


And this is talking about a Debian kernel, which are compiled for maximum compatibility. So no need to strip down the kernel either.


Just do a test. Download Debian 6 stable, or Debian 7 testing. Install it without GUI and check out how it works.



My journals: dustArtemis ECS framework and Making a Terrain Generator

#6 Sean T. McBeth   Members   

Posted 14 April 2013 - 04:34 PM

Cutting that sort of stuff out isn't going to improve performance any more than just not running X and not running anything with audio and not running a DVD in the drive. You haven't said anything about profiling your code, so you can't really make wild guesses and expect them to mean anything relevant. You could be network-bound, for all you know right now.


However, there is a separate advantage: keeping disk usage low will mean you can virtualize more. The more VMs you start, the more an incremental savings in disk space saves you money.

[Formerly "capn_midnight". See some of my projects. Find me on twitter tumblr G+ Github.]

#7 AgentC   Members   

Posted 15 April 2013 - 04:21 AM

If the server is fairly portable code, and if the game client itself will also be provided for multiple platforms, I would rather suggest to spend the effort into making the server multiplatform too to allow people to run it conveniently from their existing OS, rather than providing OS disk images. Once the server executable is up and running, the OS itself should not make much difference to its execution speed, unless you are hitting the RAM limit and it's forced to page out memory.

Every time you add a boolean member variable, God kills a kitten. Every time you create a Manager class, God kills a kitten. Every time you create a Singleton...

Urho3D (open source 3D engine)  Covert Bitops (C64 game development)

Old topic!

Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.