EQEmulator Forums

EQEmulator Forums (https://www.eqemulator.org/forums/index.php)
-   Development::Development (https://www.eqemulator.org/forums/forumdisplay.php?f=590)
-   -   Is Multi Core Optimization of Compiler Worth the effort? (https://www.eqemulator.org/forums/showthread.php?t=39199)

Riklin 01-08-2015 04:22 PM

Is Multi Core Optimization of Compiler Worth the effort?
 
I'm curious... Firstly, I hope this is not hitting any nerves or upsetting anyone that is sensitive to the topic... That is not at all my intent and I apologize in advance for my nievete'...

How multi-threaded is the code used in the emulator software? I have scanned through some of the C++ code, but you guys are WAY over my level of expertise! I'm not experienced enough with C++ to tell whether it's threaded or not.

Ultimately the question comes down to is it worth any effort at all to optimize compiler configuration for multi cores? Would there ben any benefit? My server is currently run on an AMD 8-core with 32gig of ram, so there are definitely cores to spare, performance wise...

Do these servers run in a single core only?




On another note involving to how a server is set up, how many static zones can you have? Is it really a limit of available RAM? Is there any downside to making as many zones static as possible?



Thanks for your patience. I have searched the forums, but aren't finding any threads specific to these things...


Rick (HallsHavoc)

provocating 01-08-2015 04:49 PM

Well since when you launch a zone, it will probably run under whatever core is available I doubt it is really necessary. I run a few static zones, ones that never shut down and they still use very little of my processors. The zones that do shutdown and go idle, run around 1% and the ones that are fully running because they have boats in them peak at around 5% for a few tics and then go down to 2%. Memory is even less used. I would think I would run low on bandwidth before the server ever gets taxed.

Now I do recall bots using a lot of resources, I remember back when my other server was populated with mass amounts of people running 4 groups of bots and zones would actually nearly shutdown from all of the activity. Now keep in mind I am running Linux with a large amount of memory, a bit different than a Windows compile.

lerxst2112 01-08-2015 07:08 PM

Since there are multiple zone processes it most likely makes more sense to have them single threaded and let the OS manage the affinity for each process.

Drajor 01-08-2015 09:03 PM

Each Zone process maintains 3 threads. The main thread runs 'zone logic' like moving NPCs and checking timers on buffs etc. The other two threads are used for checking incoming and outgoing packets/connections.


All times are GMT -4. The time now is 08:48 AM.

Powered by vBulletin®, Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.