|
||
|
|||||||
| General Discussion General discussion for the RunUO community, all off-topic posts will be deleted. This forum is NOT FOR SUPPORT! |
![]() |
|
|
Thread Tools | Display Modes |
|
|
#1 (permalink) |
|
Join Date: Sep 2002
Posts: 50
|
I am testing beta 10 of RunUO and wanted to test the performance of the server with 10,000 npcs added to the server. I went to the ice isle and did the command [tile Orc. I then targeted near the path that leads to the dungeon and then ran down and targeted the SouthWest corner of the island. It said it was adding 12000 objects. The server lagged for a while and then said that it finished adding the 12,000 objects. I then logged out of the client and monitored the performance within the task manager. The CPU usage averaged around 96 - 98%.
RunUO was the only program active at this point. My system spec is: P4 1.8 ghz, 512 RAM, 30 gig 7200 RPM hard drive. Has anyone else experienced this type of CPU overload after adding this many npcs to the server. If so, then I think additional optimizations may need to be made to the base AI classes in order to reduce the CPU usage of the server when it contains a large number of NPCs. Maybe we should make the npcs that are not in any regions that contain players idle until a player enters that region. Other ideas like this should help as well. I remember running a full sphere server with 17k npcs on a older PC without this type of CPU usage. I am concerned because I would like to run a large RunUO shard that has at least 10k npcs. I have the latest .NET framework service pack installed by the way. |
|
|
|
|
|
#3 (permalink) |
|
Guest
Posts: n/a
|
yeah im sure all 17k npc's wer tiled perfectly together want moving around....... try going to green acres... the exact middle.... and putting in a spawner with a radius of like 10000, and 10000 orcs taht way... they will be a little more spread out and the server shoudl do better.... then try 20000 radius.. see what happens... and try mages or bankers since they dont move as much
|
|
|
|
#5 (permalink) |
|
Join Date: Sep 2002
Posts: 50
|
Phantom - I am not comparing it to sphere. I could care less about Sphere at this point. Forget I even mentioned Sphere at all. I definately do not want RunUO to be anything like Sphere or any other emu out there for that matter. RunUO has by far the most potiential and flexibility of any of the existing emulators, so there is no need to sell me on RunUO. I love the C# language so RunUO is the naturally perfect choice for me.
I will try altering the test to have the server spread them out using the spawner and see how that goes. |
|
|
|
|
|
#6 (permalink) |
|
Join Date: Sep 2002
Posts: 50
|
I forgot to mention above that I am running the server on Windows XP Pro with all of the windows updates installed.
Ok, I ran another test. I went to the center of green acres and placed a single spawner. I set the spawner range to 1000 and the count to 10,000. I then double-clicked the spawner and set the npc type to Orc. I then clicked the Total Respawn button on the gump to spawn all of the monsters. I then logged out of the client and let the server run by itself for about 15 minutes. The CPU usage of RunUO never dropped below 98% even though the spawning had completed after the first couple of minutes. I was not able to log back into the server with the client on the same PC since RunUO is now running at close to 100% cpu usage. I have not had a chance to have another person log into the server to see if the connected clients experience any lag. I am not posting this thread to bash or complain about RunUO, I just bringing it up just in case the AI does in fact need optimizations. Can some other people run similar tests with the NPCs and see if it causes lag for clients who connect to the server once the spawning completes. |
|
|
|
|
|
#7 (permalink) |
|
Forum Expert
|
Ok, i Seccond that emotion.
I did the same tests on my computer, both variants and have the same problem. I have a P4 2.5GHz processor, 1GB RAM and WinXP. When i tile or spawn 10k of Orcs i get 100% processor usage, can't log on again. It's cheap on RAM though, only 207MB is used. I agree that this is an issue that might need some attention. |
|
|
|
|
|
#9 (permalink) |
|
And ghost clients are in no way an actual valid test. While they show that it could handle alot of connections. At that time there were almost no NPC ais running there was an almost empty world, there were no skill scriptas running there was no spell scripts running You guys have to know that when you add this stuff in you will start taxing and overloading any system. You can perfom the same Ghost client test with a stripped down version of POL and get the exact same results. Don't beleieve me I can send you a stripped down version of POL like RunUO was when that test was performed.(Meaning no npcs running around no one casting spells , no one using skills ect basically no scripts to run at all) You can't do the ghost test with sphere because the mass majorty of the server is hardcoded.
RunUO is damn awesome and I am impressed with its performance on a daily basis but untill you actually create a fully decoed world and spawn it, and have skills running ect you cant really say it performs better than all other emulators. All that said this Emu has caused me to start learning another damned language(So tired of Languages Because I think this will surpass any other emu. Oh and guys if you Tile 10000 npcs in one concentrated area, of course things will be laggy. |
|
|
|
|
|
|
#10 (permalink) |
|
Guest
Posts: n/a
|
Just a comment:
back on our old good Dark World we used to have over 70,000 NPCs, and computer's CPU's load was about 20-30%. The server constantly had about 200-300 clients on it... The stats of server were 512 MB RAM, 1.7 GHz Athlon.... And it was running sphere .51 .... Besides I am not speaking about all the 200,000+ items ![]() |
|
|
|
#11 (permalink) | |
|
Forum Expert
|
Quote:
But because i used the spawner i even tried them spread out, and it made no difference. |
|
|
|
|
|
|
#12 (permalink) | ||
|
Guest
Posts: n/a
|
Quote:
|
||
|
|
|
#13 (permalink) |
|
Unless they're all looking at each other and thinking "Should I beat him up? What about him? Him? Her? Hmm... Too ... many .... other .... orcs..."[/quote]
Correct as is NPCs will be standing next to each other doing nothing at all but what about when they hate each other or they are fighting npcs ect. all the sudden lots of scripts are firing at once for mass numbers of npcs and players alike. |
|
|
|
|
|
|
#14 (permalink) |
|
Administrator
Join Date: Aug 2002
Location: Baltimore, MD
Age: 25
Posts: 4,868
|
I'd like to point out that you have no idea what was running at the time of the client tests, so speculating about what skills or spells were installed at the time is just that--speculation.
But the amount of spells or skills the server has in NO WAY effects the performance of the Orc AI. As Krrios said, we are away the AI can be laggy, right now the server can only comfortably handle about 7500 npc ais. As Krrios said, we're working to address these issues.
__________________
Zippy, Razor Creator and RunUO Core Developer The RunUO Software Team "Intuition, like a flash of lightning, lasts only for a second. It generally comes when one is tormented by a difficult decipherment and when one reviews in his mind the fruitless experiments already tried. Suddenly the light breaks through and one finds after a few minutes what previous days of labor were unable to reveal." ~The Cryptonomicon |
|
|
|
|
|
#16 (permalink) |
|
Forum Expert
Join Date: Sep 2002
Age: 25
Posts: 374
|
Well, if you consider that every .4 seconds (when passive) an orc pools every mobile within 10 tiles to check for a combatant, its no wonder it lags when you tile them.
I'm not sure how to do the exact math, but in a 10 x 10 area (which is actually on a distance of 4 from the mobile) in one second it will pool and process 20,000 mobiles ( 100 orcs process 100 other orcs twice in one second). Thats only 100 mobiles in the server, but processed 20,000 times. Now imagine 10,000 mobiles tiled. Or 20,000 mobiles. And over an unmetered amount of time. 10,000 mobiles (100 x 100) processing 400 (20 x 20 [10 above, 10 below, 10 left, 10 right, etc]) every 0.4 seconds would come out to around 1,000,000 mobiles pooled and processed every second. This is obviously an estimate, there would in fact be a little less. So yeah, spread your mobiles out. ![]() |
|
|
|
![]() |
| Bookmarks |
| Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
| Thread Tools | |
| Display Modes | |
|
|