Iris2.de

Iris2-Forum
It is currently Thu Mar 28, 2024 8:37 am

All times are UTC




Post new topic Reply to topic  [ 9 posts ] 
Author Message
PostPosted: Wed May 06, 2009 5:28 pm 
Offline
User avatar

Joined: Sun May 27, 2007 8:01 pm
Posts: 41
Location: France
Hello,

First, great improvement of all your Iris stuff!! Happy to see Iris2 is very close to be playable :)

But for me, there is a big issue to use it as the primary client:
I testing Iris2 2d mode and I have some trouble with performance when traveling empty map with only statics (for example walk around Britain).

So I do the following test:
add 500 items on 3 blocks. (you can test with more items but the feeling of freeze begin at 500)

Image

When you run and load/unload blocks and items you have a sort of freeze.

I tested with D3d and OpenGL, fullscreen and windowed, with 2 differents pc.

I tested also with original OSI client and this time there are no problem, the game is fluid.

This is not a fps problem, but a feeling of break your move.
There are any solution ?

Thanks,

Regards,

_________________
Suwing
Sorry for my bad english.


Top
 Profile  
 
 Post subject:
PostPosted: Wed May 06, 2009 7:59 pm 
Offline
Power User
User avatar

Joined: Fri Apr 17, 2009 2:32 pm
Posts: 122
if you traveling town with this zoom mode, freezing is not a surprise, then original ultima client have fied zoom size and items on the screen are very low count because of that you're not freezin(lagging)

if you lower the zoom you'll get the best playable client.


Top
 Profile  
 
 Post subject:
PostPosted: Wed May 06, 2009 8:30 pm 
Offline
iris2-developer
User avatar

Joined: Tue Apr 18, 2006 10:28 pm
Posts: 823
Location: Munich, Bavaria, Germany
Quote:
add 500 items on 3 blocks
do you mean statics or dynamics ?

please activate profiling by adding the code in this block to your config.lua :

http://iris2.de/index.php/Profiling

and then paste the results (in console) here


Top
 Profile  
 
 Post subject:
PostPosted: Wed May 06, 2009 9:51 pm 
Offline
User avatar

Joined: Sun May 27, 2007 8:01 pm
Posts: 41
Location: France
Hi,

@ Sehlor:
That was not my zoom level during the test, it was just a screenshot to show the test. I don't think zoom level have a performance impact?

@ ghoulsblade:

For me the problem is for both of them, statics and dynamics. The 500 chairs was dynamics, traveling the town statics.

Here somes tests with the profiling command:

-doing nothing in britain town-
Code:
976281  === MyProfilerTop cpu time ===
#1       282msec ( 89%)        MainStep:gCurrentRenderer:MainStep
#2       250msec ( 79%)         2D:MainStep:MousePickStep
#3        94msec ( 29%)          2D:MousePick:statics
#4        77msec ( 24%)          2D:MousePick:dynamics
#5        47msec ( 14%)          2D:MousePick:terrain
#6        16msec (  5%)         2D:MainStep:MobileStep
#7        16msec (  5%)          2D:MousePick:mobiles
#8        16msec (  5%)        MainStep:LugreStep
#9        16msec (  5%)         2D:MainStep:MapStep
#10       16msec (  5%)          2D:MobileStep:UpdateMobileGfx:Build
total time=30sec cpu=1% gpu=0% idle/maxfpswait=98%
976281  === MyProfilerTop tspike (single sections causing delays/lags) ===
976281  === MyProfilerTop tspikeframe (the summed cpu usage of all things during
delay/lag-frames) ===
976281  === MyProfilerTop memLua allocations ===
#1      1728kb MainStep:LugreStep
#2      1278kb MainStep:gCurrentRenderer:MainStep
#3       619kb MainStep:SetToolTipSubject
#4       463kb MainStep:UpdateCompass
#5       366kb  2D:MainStep:MobileStep
#6       346kb MainStep:DisplayLoadingState
#7       316kb MainStep:StepDebugMenu
#8       315kb  2D:MainStep:Dynamics_MainStep
#9       305kb MainStep:Hook_HUDStep
#10      231kb  2D:MainStep:mouse
976281  === MyProfilerTop memOgre allocations ===
976281   . . . . .
###ShardListSavePlayerMobile    table: 1243E2C8 table: 11D461F0
sendping
PingStep NextTimeUpdateDetected t/next  977297  1038281


-running in britain town -
Code:
###ShardListSavePlayerMobile    table: 1243E2C8 table: 11D461F0
sendping
PingStep NextTimeUpdateDetected t/next  1038297 1099281
   93 msec mem:L=    1506k O=       0k    Walk:BlendOutLayersAbovePlayer:setvis

   93 msec mem:L=    1515k O=       0k   2D:MainStep:walk
   62 msec mem:L=    1037k O=       0k    Walk:BlendOutLayersAbovePlayer:setvis

   62 msec mem:L=    1046k O=       0k   2D:MainStep:walk
1066312 === MyProfilerTop cpu time ===
#1      4666msec ( 70%)        MainStep:gCurrentRenderer:MainStep
#2      2225msec ( 33%)         2D:MainStep:MapStep
#3      1910msec ( 28%)         2D:MainStep:walk
#4      1016msec ( 15%)          Walk:BlendOutLayersAbovePlayer:setvis
#5      1014msec ( 15%)        MainStep:SetToolTipSubject
#6       785msec ( 11%)        MainStep:Hook_HUDStep
#7       748msec ( 11%)          2D:MobileStep:UpdateMobileGfx:Build
#8       610msec (  9%)          Walk:SetPlayerPos:mob:Update
#9       280msec (  4%)         2D:MainStep:MobileStep
#10      221msec (  3%)          Walk:SetPlayerPos:BlendOutLayersAbovePlayer
total time=30sec cpu=22% gpu=5% idle/maxfpswait=72%
1066312 === MyProfilerTop tspike (single sections causing delays/lags) ===
#1       766msec       MainStep:gCurrentRenderer:MainStep
#2       594msec        2D:MainStep:walk
#3       499msec         Walk:BlendOutLayersAbovePlayer:setvis
#4       140msec        2D:MainStep:MapStep
#5        94msec       MainStep:HandlePackets
1066328 === MyProfilerTop tspikeframe (the summed cpu usage of all things during
delay/lag-frames) ===
#1       843msec       MainStep:gCurrentRenderer:MainStep
#2       594msec        2D:MainStep:walk
#3       546msec         Walk:BlendOutLayersAbovePlayer:setvis
#4       218msec        2D:MainStep:MapStep
#5        94msec         Text:GuiAddChatLine
#6        94msec         ChatTabPane:SetText
#7        94msec       Packets:kPacket_Text
#8        94msec       MainStep:HandlePackets
#9        79msec         TextWidget:glyphlist:SetText
#10       63msec         2D:MobileStep:UpdateMobileGfx:Build
1066328 === MyProfilerTop memLua allocations ===
#1     29859kb MainStep:gCurrentRenderer:MainStep
#2     12856kb  2D:MainStep:walk
#3     12335kb  2D:MainStep:MapStep
#4     10387kb   Walk:BlendOutLayersAbovePlayer:setvis
#5      4043kb  2D:MainStep:MobileStep
#6      1979kb   2D:MobileStep:UpdateMobileGfx:AddAnimModel:AddSpriteEx
#7      1786kb   2D:MobileStep:UpdateMobileGfx:Build
#8      1591kb MainStep:LugreStep
#9      1537kb   Walk:SetPlayerPos:mob:Update
#10     1004kb MainStep:HandlePackets
1066328 === MyProfilerTop memOgre allocations ===
1066328  . . . . .
###ShardListSavePlayerMobile    table: 1243E2C8 table: 11D461F0


-walking in britain town, different path -
Code:
1846375 === MyProfilerTop cpu time ===
#1      5588msec ( 79%)        MainStep:gCurrentRenderer:MainStep
#2      3486msec ( 49%)         2D:MainStep:MobileStep
#3      1316msec ( 18%)          2D:MobileStep:UpdateMobileGfx:Build
#4      1092msec ( 15%)         2D:MainStep:walk
#5      1001msec ( 14%)          2D:MobileStep:UpdateMobileGfx:Clear
#6       795msec ( 11%)         2D:MainStep:MapStep
#7       592msec (  8%)        MainStep:SetToolTipSubject
#8       501msec (  7%)          Walk:BlendOutLayersAbovePlayer:setvis
#9       468msec (  6%)          Walk:SetPlayerPos:mob:Update
#10      421msec (  6%)          2D:MobileStep:UpdateMobileGfx:AddAnimModel (st
art:LoadAtlasPiece)
total time=30sec cpu=23% gpu=12% idle/maxfpswait=63%
1846375 === MyProfilerTop tspike (single sections causing delays/lags) ===
#1       328msec       MainStep:gCurrentRenderer:MainStep
#2       266msec         Walk:BlendOutLayersAbovePlayer:setvis
#3       266msec        2D:MainStep:walk
1846375 === MyProfilerTop tspikeframe (the summed cpu usage of all things during
delay/lag-frames) ===
#1       405msec       MainStep:gCurrentRenderer:MainStep
#2       313msec        2D:MainStep:walk
#3       298msec         Walk:BlendOutLayersAbovePlayer:setvis
#4        61msec        2D:MainStep:MapStep
#5        16msec        2D:MainStep:MobileStep
#6        16msec         2D:MobileStep:UpdateMobileGfx:Build
#7        15msec         2D:MobileStep:UpdateMobileGfx:Clear
#8        15msec         Walk:SetPlayerPos:mob:Update
#9        15msec        2D:MainStep:SetCamPos
#10        0msec       MainStep:StepDebugMenu
1846375 === MyProfilerTop memLua allocations ===
#1     22850kb MainStep:gCurrentRenderer:MainStep
#2      7858kb  2D:MainStep:walk
#3      7587kb  2D:MainStep:MapStep
#4      6605kb  2D:MainStep:MobileStep
#5      4941kb   Walk:BlendOutLayersAbovePlayer:setvis
#6      2688kb   2D:MobileStep:UpdateMobileGfx:AddAnimModel:AddSpriteEx
#7      2447kb   2D:MobileStep:UpdateMobileGfx:Build
#8      2226kb   Walk:SetPlayerPos:mob:Update
#9      1918kb MainStep:LugreStep
#10     1360kb   2D:MobileStep:UpdateMobileGfx:human
1846375 === MyProfilerTop memOgre allocations ===
1846375  . . . . .
###ShardListSavePlayerMobile    table: 1243E2C8 table: 11D461F0


-doing nothing in empty greenacres -
Code:
1336312 === MyProfilerTop cpu time ===
#1        79msec ( 45%)        MainStep:gCurrentRenderer:MainStep
#2        61msec ( 35%)        MainStep:SetToolTipSubject
#3        47msec ( 27%)         2D:MainStep:MobileStep
#4        31msec ( 18%)          2D:MobileStep:UpdateMobileGfx:Build
#5        16msec (  9%)        MainStep:DisplayLoadingState
#6        16msec (  9%)         2D:MainStep:SetCamPos
#7        16msec (  9%)        MainStep:EveryFrame
#8        16msec (  9%)         2D:MainStep:mouse
#9        16msec (  9%)          2D:MobileStep:UpdateMobileGfx:Clear
#10        0msec (  0%)        MainStep:LugreStep
total time=30sec cpu=0% gpu=0% idle/maxfpswait=99%
1336312 === MyProfilerTop tspike (single sections causing delays/lags) ===
1336312 === MyProfilerTop tspikeframe (the summed cpu usage of all things during
delay/lag-frames) ===
1336312 === MyProfilerTop memLua allocations ===
#1      1510kb MainStep:LugreStep
#2      1177kb MainStep:gCurrentRenderer:MainStep
#3       535kb MainStep:SetToolTipSubject
#4       464kb MainStep:UpdateCompass
#5       317kb MainStep:StepDebugMenu
#6       315kb  2D:MainStep:Dynamics_MainStep
#7       313kb  2D:MainStep:MobileStep
#8       306kb MainStep:Hook_HUDStep
#9       293kb MainStep:DisplayLoadingState
#10      232kb  2D:MainStep:mouse
1336312 === MyProfilerTop memOgre allocations ===
1336312  . . . . .
###ShardListSavePlayerMobile    table: 1243E2C8 table: 11D461F0
sendping
PingStep NextTimeUpdateDetected t/next  1343343 1404312


-running in empty greenacres -
Code:
1426328 === MyProfilerTop cpu time ===
#1      1947msec ( 45%)        MainStep:gCurrentRenderer:MainStep
#2      1317msec ( 31%)        MainStep:SetToolTipSubject
#3       886msec ( 20%)        MainStep:Hook_HUDStep
#4       840msec ( 19%)         2D:MainStep:MapStep
#5       812msec ( 19%)          2D:MobileStep:UpdateMobileGfx:Build
#6       593msec ( 13%)          Walk:SetPlayerPos:mob:Update
#7       593msec ( 13%)         2D:MainStep:walk
#8       297msec (  7%)         2D:MainStep:MobileStep
#9        77msec (  1%)        MainStep:UpdateCompass
#10       61msec (  1%)         2D:MainStep:Dynamics_MainStep
total time=30sec cpu=14% gpu=1% idle/maxfpswait=84%
1426328 === MyProfilerTop tspike (single sections causing delays/lags) ===
1426328 === MyProfilerTop tspikeframe (the summed cpu usage of all things during
delay/lag-frames) ===
1426328 === MyProfilerTop memLua allocations ===
#1     13054kb MainStep:gCurrentRenderer:MainStep
#2      4315kb  2D:MainStep:MobileStep
#3      4173kb  2D:MainStep:walk
#4      3858kb  2D:MainStep:MapStep
#5      3355kb   Walk:SetPlayerPos:mob:Update
#6      2029kb   2D:MobileStep:UpdateMobileGfx:AddAnimModel:AddSpriteEx
#7      1843kb   2D:MobileStep:UpdateMobileGfx:Build
#8      1684kb MainStep:LugreStep
#9      1014kb   2D:MobileStep:UpdateMobileGfx:human
#10      616kb MainStep:SetToolTipSubject
1426328 === MyProfilerTop memOgre allocations ===
#1      1200kb   2D:MobileStep:UpdateMobileGfx:Build
#2      1200kb MainStep:gCurrentRenderer:MainStep
#3       960kb  2D:MainStep:MobileStep
#4       240kb   Walk:SetPlayerPos:mob:Update
#5       240kb  2D:MainStep:walk
1426328  . . . . .
###ShardListSavePlayerMobile    table: 1243E2C8 table: 11D461F0


-running in chairs test, 700 items -
Code:
1666343 === MyProfilerTop cpu time ===
#1      4804msec ( 64%)        MainStep:gCurrentRenderer:MainStep
#2      2624msec ( 34%)         2D:MainStep:MobileStep
#3      1358msec ( 18%)          2D:MobileStep:UpdateMobileGfx:Build
#4      1047msec ( 13%)         2D:MainStep:walk
#5      1005msec ( 13%)        MainStep:HandlePackets
#6       763msec ( 10%)          2D:MobileStep:UpdateMobileGfx:Clear
#7       734msec (  9%)          Walk:SetPlayerPos:mob:Update
#8       677msec (  9%)        MainStep:SetToolTipSubject
#9       466msec (  6%)         2D:MainStep:MapStep
#10      439msec (  5%)        Packets:kPacket_Accept_Movement_Resync_Request
total time=30sec cpu=24% gpu=9% idle/maxfpswait=65%
1666343 === MyProfilerTop tspike (single sections causing delays/lags) ===
#1       234msec       Packets:kPacket_Accept_Movement_Resync_Request
#2       234msec       MainStep:HandlePackets
1666343 === MyProfilerTop tspikeframe (the summed cpu usage of all things during
delay/lag-frames) ===
#1       375msec       MainStep:HandlePackets
#2       234msec       Packets:kPacket_Accept_Movement_Resync_Request
#3        94msec         ChatTabPane:SetText
#4        94msec       Packets:kPacket_Text
#5        94msec         Text:GuiAddChatLine
#6        78msec         TextWidget:glyphlist:SetText
#7        47msec       Packets:kPacket_Show_Item
#8        31msec       MainStep:gCurrentRenderer:MainStep
#9        30msec         GlyphList:AddFontGlyph:SpecialChars
#10       16msec         2D:MobileStep:UpdateMobileGfx:AddAnimModel:AddSpriteEx

1666343 === MyProfilerTop memLua allocations ===
#1     17674kb MainStep:gCurrentRenderer:MainStep
#2      6271kb  2D:MainStep:Dynamics_MainStep
#3      5593kb MainStep:HandlePackets
#4      5332kb  2D:MainStep:MobileStep
#5      4604kb  2D:MainStep:walk
#6      3708kb   Walk:SetPlayerPos:mob:Update
#7      2805kb Packets:kPacket_Show_Item
#8      2497kb   2D:MobileStep:UpdateMobileGfx:AddAnimModel:AddSpriteEx
#9      2232kb   2D:MobileStep:UpdateMobileGfx:Build
#10     1901kb Packets:kPacket_Accept_Movement_Resync_Request
1666343 === MyProfilerTop memOgre allocations ===
1666343  . . . . .
###ShardListSavePlayerMobile    table: 1243E2C8 table: 11D461F0
FMOD error! (36) An invalid object handle was used.


To resume, no problem when you doing nothing ;), feeling of walk break in other cases except running in empty greenacres.

Can you explain me what I should see in logs ?
If you want, I can train other test.

Thanks,

Regards,

_________________
Suwing
Sorry for my bad english.


Top
 Profile  
 
 Post subject:
PostPosted: Thu May 07, 2009 1:35 pm 
Offline
iris2-developer
User avatar

Joined: Tue Apr 18, 2006 10:28 pm
Posts: 823
Location: Munich, Bavaria, Germany
thanks for the profile logs.

profiling explanation
the profiling measures which code sections take how long to execcute over a 30 second period, and then outputs the results, resets itself and repeats.

it measures the total cpu time spent during the 30 seconds :
=== MyProfilerTop cpu time ===


it also measures what happens when the game lags/hangs during a frame :
1336312 === MyProfilerTop tspike (single sections causing delays/lags) ===
1336312 === MyProfilerTop tspikeframe (the summed cpu usage of all things during delay/lag-frames) ===
(first = only the sections that cause the lag, second : what is happening in total during lagframes)


it also measures memory allocations for lua and ogre(3D), but those aren't important here
1426328 === MyProfilerTop memLua allocations ===
1426328 === MyProfilerTop memOgre allocations ===




interpretation : how i'd interpret the results from the measurements you posted :
Quote:
-running in britain town -
1066312 === MyProfilerTop cpu time ===
#2 2225msec ( 33%) 2D:MainStep:MapStep
#3 1910msec ( 28%) 2D:MainStep:walk
#4 1016msec ( 15%) Walk:BlendOutLayersAbovePlayer:setvis
#5 1014msec ( 15%) MainStep:SetToolTipSubject
#6 785msec ( 11%) MainStep:Hook_HUDStep
#7 748msec ( 11%) 2D:MobileStep:UpdateMobileGfx:Build
1066312 === MyProfilerTop tspike (single sections causing delays/lags) ===
#2 594msec 2D:MainStep:walk
#3 499msec Walk:BlendOutLayersAbovePlayer:setvis


so here walking seems to have a rather high impact.
this doesn't neccessarily mean the code is wrong,
as there are a lot of objects in cities to calculate for walking.



Quote:
-walking in britain town, different path -
1846375 === MyProfilerTop cpu time ===
#2 3486msec ( 49%) 2D:MainStep:MobileStep
#3 1316msec ( 18%) 2D:MobileStep:UpdateMobileGfx:Build
#4 1092msec ( 15%) 2D:MainStep:walk
#5 1001msec ( 14%) 2D:MobileStep:UpdateMobileGfx:Clear
#6 795msec ( 11%) 2D:MainStep:MapStep
#7 592msec ( 8%) MainStep:SetToolTipSubject
#8 501msec ( 7%) Walk:BlendOutLayersAbovePlayer:setvis
1846375 === MyProfilerTop tspike (single sections causing delays/lags) ===
#2 313msec 2D:MainStep:walk
#3 298msec Walk:BlendOutLayersAbovePlayer:setvis


here MobileStep eats a lot of performance, that means loading lots of new mobile clothing/graphics and/or wait times due to the memory bandwidth to GPU being exhausted : loading all the new terrain, buildings and items could mean there's no bandwidth left for loading the mobile clothing, so there are waittimes while animating/loading them.
Walk code is also a factor, like before.


could you repeat the
-running in chairs test, 700 items -
test please ?
start when one such profile-list is printed, then run around for 30 seconds until the next profile-list is printed and paste that later list here.


also note if you have overall bad framerate, or if there are short hangs.


Top
 Profile  
 
 Post subject:
PostPosted: Thu May 07, 2009 9:06 pm 
Offline
User avatar

Joined: Sun May 27, 2007 8:01 pm
Posts: 41
Location: France
Hello,

thanks for the explaination of profiling :)

Quote:
so here walking seems to have a rather high impact.
this doesn't neccessarily mean the code is wrong,
as there are a lot of objects in cities to calculate for walking.

For information, the town was empty during the test. There are only statics, no dynamics items neither pnjs.

New chairs tests:

Image

TEST 1:
Running 1 minute to load & unload chairs
Feeling of litle hang when you see/load chairs.

TEST 2:
Running 1 minute around chairs
Sometimes feeling of slow down.


TEST1:
Code:
###ShardListSavePlayerMobile    table: 11851048 table: 0807F3E8
387563  === MyProfilerTop cpu time ===
#1      5184msec ( 72%)        MainStep:gCurrentRenderer:MainStep
#2      3218msec ( 45%)         2D:MainStep:MobileStep
#3      1673msec ( 23%)          2D:MobileStep:UpdateMobileGfx:Build
#4       895msec ( 12%)         2D:MainStep:walk
#5       813msec ( 11%)          2D:MobileStep:UpdateMobileGfx:Clear
#6       719msec ( 10%)        MainStep:HandlePackets
#7       614msec (  8%)          Walk:SetPlayerPos:mob:Update
#8       499msec (  6%)         2D:MainStep:MapStep
#9       439msec (  6%)        MainStep:SetToolTipSubject
#10      357msec (  5%)        Packets:kPacket_Show_Item
total time=30sec cpu=23% gpu=7% idle/maxfpswait=68%
387563  === MyProfilerTop tspike (single sections causing delays/lags) ===
#1        62msec        2D:MainStep:walk
#2        62msec         Walk:SetPlayerPos:mob:Update
#3        62msec       MainStep:gCurrentRenderer:MainStep
#4        62msec       MainStep:HandlePackets
387563  === MyProfilerTop tspikeframe (the summed cpu usage of all things during
delay/lag-frames) ===
#1       156msec       MainStep:HandlePackets
#2       109msec       MainStep:gCurrentRenderer:MainStep
#3       109msec       Packets:kPacket_Show_Item
#4        62msec         Walk:SetPlayerPos:mob:Update
#5        62msec        2D:MainStep:walk
#6        47msec       Packets:kPacket_AOSObjProp
#7        32msec         2D:MobileStep:UpdateMobileGfx:Build
#8        31msec         2D:MobileStep:UpdateMobileGfx:Anim2D_GetFrameCount
#9        16msec        2D:MainStep:MapStep
#10       16msec        2D:MainStep:MobileStep
387563  === MyProfilerTop memLua allocations ===
#1     15243kb MainStep:gCurrentRenderer:MainStep
#2      5552kb  2D:MainStep:MobileStep
#3      4876kb  2D:MainStep:walk
#4      4307kb MainStep:HandlePackets
#5      3910kb   Walk:SetPlayerPos:mob:Update
#6      3173kb  2D:MainStep:Dynamics_MainStep
#7      2559kb   2D:MobileStep:UpdateMobileGfx:AddAnimModel:AddSpriteEx
#8      2322kb   2D:MobileStep:UpdateMobileGfx:Build
#9      2288kb Packets:kPacket_Show_Item
#10     1857kb Packets:kPacket_Accept_Movement_Resync_Request
387578  === MyProfilerTop memOgre allocations ===
#1      1968kb   2D:MobileStep:UpdateMobileGfx:Build
#2      1968kb MainStep:gCurrentRenderer:MainStep
#3      1104kb   Walk:SetPlayerPos:mob:Update
#4      1104kb  2D:MainStep:walk
#5       864kb  2D:MainStep:MobileStep
387578   . . . . .
sendping
PingStep NextTimeUpdateDetected t/next  398172  459141
###ShardListSavePlayerMobile    table: 11851048 table: 0807F3E8
417563  === MyProfilerTop cpu time ===
#1      5285msec ( 68%)        MainStep:gCurrentRenderer:MainStep
#2      3186msec ( 41%)         2D:MainStep:MobileStep
#3      1489msec ( 19%)          2D:MobileStep:UpdateMobileGfx:Build
#4      1065msec ( 13%)        MainStep:HandlePackets
#5      1001msec ( 12%)         2D:MainStep:walk
#6       951msec ( 12%)          2D:MobileStep:UpdateMobileGfx:Clear
#7       740msec (  9%)          Walk:SetPlayerPos:mob:Update
#8       562msec (  7%)        MainStep:SetToolTipSubject
#9       532msec (  6%)         2D:MainStep:MapStep
#10      501msec (  6%)        Packets:kPacket_Show_Item
total time=30sec cpu=25% gpu=9% idle/maxfpswait=64%
417563  === MyProfilerTop tspike (single sections causing delays/lags) ===
417578  === MyProfilerTop tspikeframe (the summed cpu usage of all things during
delay/lag-frames) ===
417578  === MyProfilerTop memLua allocations ===
#1     17026kb MainStep:gCurrentRenderer:MainStep
#2      5835kb  2D:MainStep:MobileStep
#3      5768kb MainStep:HandlePackets
#4      5117kb  2D:MainStep:walk
#5      4377kb  2D:MainStep:Dynamics_MainStep
#6      4116kb   Walk:SetPlayerPos:mob:Update
#7      3782kb Packets:kPacket_Show_Item
#8      2697kb   2D:MobileStep:UpdateMobileGfx:AddAnimModel:AddSpriteEx
#9      2449kb   2D:MobileStep:UpdateMobileGfx:Build
#10     1911kb MainStep:LugreStep
417578  === MyProfilerTop memOgre allocations ===
#1       384kb   2D:MobileStep:UpdateMobileGfx:Build
#2       384kb MainStep:gCurrentRenderer:MainStep
#3       192kb   Walk:SetPlayerPos:mob:Update
#4       192kb  2D:MainStep:MobileStep
#5       192kb  2D:MainStep:walk
417578   . . . . .
###ShardListSavePlayerMobile    table: 11851048 table: 0807F3E8
447563  === MyProfilerTop cpu time ===
#1      4799msec ( 70%)        MainStep:gCurrentRenderer:MainStep
#2      3166msec ( 46%)         2D:MainStep:MobileStep
#3      1340msec ( 19%)          2D:MobileStep:UpdateMobileGfx:Build
#4       879msec ( 12%)          2D:MobileStep:UpdateMobileGfx:Clear
#5       861msec ( 12%)        MainStep:HandlePackets
#6       809msec ( 11%)         2D:MainStep:walk
#7       604msec (  8%)          Walk:SetPlayerPos:mob:Update
#8       518msec (  7%)        Packets:kPacket_Accept_Movement_Resync_Request
#9       375msec (  5%)        MainStep:UpdateCompass
#10      358msec (  5%)         2D:MainStep:MapStep
total time=30sec cpu=22% gpu=8% idle/maxfpswait=68%
447563  === MyProfilerTop tspike (single sections causing delays/lags) ===
#1        63msec       Packets:kPacket_Accept_Movement_Resync_Request
#2        63msec       MainStep:HandlePackets
447563  === MyProfilerTop tspikeframe (the summed cpu usage of all things during
delay/lag-frames) ===
#1       110msec       Packets:kPacket_Accept_Movement_Resync_Request
#2       110msec       MainStep:HandlePackets
#3        16msec         2D:MobileStep:UpdateMobileGfx:AddAnimModel:AddSpriteEx

#4        16msec       MainStep:gCurrentRenderer:MainStep
#5        16msec        2D:MainStep:MobileStep
#6         0msec       MainStep:LugreStep
#7         0msec       MainStep:DisplayLoadingState
#8         0msec       MainStep:GUIStep
#9         0msec       MainStep:UOContainerDialogExecuteRefreshs
#10        0msec       MainStep:Hook_PreRenderOneFrame
447563  === MyProfilerTop memLua allocations ===
#1     14722kb MainStep:gCurrentRenderer:MainStep
#2      5566kb  2D:MainStep:MobileStep
#3      4863kb  2D:MainStep:walk
#4      4389kb MainStep:HandlePackets
#5      3921kb   Walk:SetPlayerPos:mob:Update
#6      2765kb  2D:MainStep:Dynamics_MainStep
#7      2631kb   2D:MobileStep:UpdateMobileGfx:AddAnimModel:AddSpriteEx
#8      2490kb Packets:kPacket_Show_Item
#9      2343kb   2D:MobileStep:UpdateMobileGfx:Build
#10     1818kb MainStep:LugreStep
447563  === MyProfilerTop memOgre allocations ===
447563   . . . . .


TEST2:
Code:
###ShardListSavePlayerMobile    table: 11851048 table: 0807F3E8
627563  === MyProfilerTop cpu time ===
#1      7056msec ( 69%)        MainStep:gCurrentRenderer:MainStep
#2      3126msec ( 30%)         2D:MainStep:MobileStep
#3      1737msec ( 17%)        MainStep:HandlePackets
#4      1698msec ( 16%)         2D:MainStep:Dynamics_MainStep
#5      1662msec ( 16%)          2D:MobileStep:UpdateMobileGfx:Build
#6      1435msec ( 14%)         2D:MainStep:walk
#7      1012msec (  9%)          Walk:SetPlayerPos:mob:Update
#8       878msec (  8%)          2D:MobileStep:UpdateMobileGfx:Clear
#9       783msec (  7%)        Packets:kPacket_Show_Item
#10      637msec (  6%)        MainStep:SetToolTipSubject
total time=30sec cpu=33% gpu=8% idle/maxfpswait=57%
627578  === MyProfilerTop tspike (single sections causing delays/lags) ===
#1       579msec       MainStep:gCurrentRenderer:MainStep
#2       328msec        2D:MainStep:Dynamics_MainStep
#3       156msec       MainStep:HandlePackets
#4        79msec         Text:GuiAddChatLine
#5        79msec       Packets:kPacket_Text
#6        62msec       Packets:kPacket_Accept_Movement_Resync_Request
627578  === MyProfilerTop tspikeframe (the summed cpu usage of all things during
delay/lag-frames) ===
#1       986msec       MainStep:gCurrentRenderer:MainStep
#2       782msec        2D:MainStep:Dynamics_MainStep
#3       469msec       MainStep:HandlePackets
#4       203msec       Packets:kPacket_Accept_Movement_Resync_Request
#5       142msec        2D:MainStep:MobileStep
#6       126msec         Text:GuiAddChatLine
#7       126msec         ChatTabPane:SetText
#8       126msec         TextWidget:glyphlist:SetText
#9       126msec       Packets:kPacket_Text
#10      125msec       Packets:kPacket_Show_Item
627578  === MyProfilerTop memLua allocations ===
#1     22962kb MainStep:gCurrentRenderer:MainStep
#2     10597kb  2D:MainStep:Dynamics_MainStep
#3      5800kb MainStep:HandlePackets
#4      5483kb  2D:MainStep:MobileStep
#5      5139kb  2D:MainStep:walk
#6      4095kb   Walk:SetPlayerPos:mob:Update
#7      3354kb Packets:kPacket_Show_Item
#8      2579kb   2D:MobileStep:UpdateMobileGfx:AddAnimModel:AddSpriteEx
#9      2339kb   2D:MobileStep:UpdateMobileGfx:Build
#10     1817kb MainStep:LugreStep
627578  === MyProfilerTop memOgre allocations ===
627578   . . . . .
###ShardListSavePlayerMobile    table: 11851048 table: 0807F3E8
sendping
PingStep NextTimeUpdateDetected t/next  642188  703156
657563  === MyProfilerTop cpu time ===
#1      5997msec ( 65%)        MainStep:gCurrentRenderer:MainStep
#2      3314msec ( 36%)         2D:MainStep:MobileStep
#3      1630msec ( 17%)          2D:MobileStep:UpdateMobileGfx:Build
#4      1535msec ( 16%)        MainStep:HandlePackets
#5      1234msec ( 13%)         2D:MainStep:walk
#6       924msec ( 10%)          2D:MobileStep:UpdateMobileGfx:Clear
#7       873msec (  9%)          Walk:SetPlayerPos:mob:Update
#8       719msec (  7%)        Packets:kPacket_Show_Item
#9       716msec (  7%)         2D:MainStep:Dynamics_MainStep
#10      626msec (  6%)        MainStep:SetToolTipSubject
total time=30sec cpu=30% gpu=9% idle/maxfpswait=59%
657563  === MyProfilerTop tspike (single sections causing delays/lags) ===
657563  === MyProfilerTop tspikeframe (the summed cpu usage of all things during
delay/lag-frames) ===
657563  === MyProfilerTop memLua allocations ===
#1     23905kb MainStep:gCurrentRenderer:MainStep
#2     11065kb  2D:MainStep:Dynamics_MainStep
#3      5962kb  2D:MainStep:MobileStep
#4      5203kb  2D:MainStep:walk
#5      4779kb MainStep:HandlePackets
#6      4130kb   Walk:SetPlayerPos:mob:Update
#7      3186kb Packets:kPacket_Show_Item
#8      2749kb   2D:MobileStep:UpdateMobileGfx:AddAnimModel:AddSpriteEx
#9      2500kb   2D:MobileStep:UpdateMobileGfx:Build
#10     1946kb MainStep:LugreStep
657563  === MyProfilerTop memOgre allocations ===
657563   . . . . .


My computer:
-Core 2 duo : 2.13GHz
-2 GO RAM
-GPU Nvidia 8800 GTS 320 MO

Test in windowed mode 1024*768, zoom level 1.

There are any option to allow more ram to lua or ogre to improve perf in 2d mode ?

Thanks for all,

Regards,

_________________
Suwing
Sorry for my bad english.


Top
 Profile  
 
 Post subject:
PostPosted: Thu May 07, 2009 9:37 pm 
Offline
iris2-developer
User avatar

Joined: Tue Apr 18, 2006 10:28 pm
Posts: 823
Location: Munich, Bavaria, Germany
thanks =) more ram : no option for that. iris allocates all the ram it needs.


Top
 Profile  
 
 Post subject:
PostPosted: Fri May 08, 2009 12:48 pm 
Offline
User avatar

Joined: Sun May 27, 2007 8:01 pm
Posts: 41
Location: France
Hello,

Do you see what's wrong ?

Do you need others tests ?

There are a difference betwen statics and dynamics items in the renderer process?

I know that statics items are locals and dynamics come from server, so network impact.

I make one other test, running on vetus mondus server and record video.

You can download it here:
http://uploading.com/files/I6D4WASM/run ... s.ipv.html

This is last profiling in console. (It is possible to make log with all stats in a file ?)
Code:
204360  === MyProfilerTop cpu time ===
#1      5641msec ( 53%)        MainStep:gCurrentRenderer:MainStep
#2      3272msec ( 31%)         2D:MainStep:MobileStep
#3      1883msec ( 17%)        MainStep:LugreStep
#4      1573msec ( 15%)          2D:MobileStep:UpdateMobileGfx:Build
#5      1183msec ( 11%)        MainStep:Hook_HUDStep
#6      1129msec ( 10%)         2D:MainStep:MapStep
#7      1095msec ( 10%)        MainStep:UpdateCompass
#8       718msec (  6%)          2D:MobileStep:UpdateMobileGfx:Clear
#9       595msec (  5%)          2D:MobileStep:UpdateMobileGfx:AddAnimModel (st
art:LoadAtlasPiece)
#10      519msec (  4%)         2D:MainStep:MousePickStep
total time=30sec cpu=34% gpu=34% idle/maxfpswait=30%
204360  === MyProfilerTop tspike (single sections causing delays/lags) ===
#1       171msec       MainStep:LugreStep
#2        78msec         Walk:BlendOutLayersAbovePlayer:setvis
#3        63msec       Packets:kPacket_Text
#4        63msec       MainStep:gCurrentRenderer:MainStep
#5        63msec         Text:GuiAddChatLine
#6        63msec       MainStep:HandlePackets
204360  === MyProfilerTop tspikeframe (the summed cpu usage of all things during
delay/lag-frames) ===
#1       750msec       MainStep:gCurrentRenderer:MainStep
#2       623msec       MainStep:LugreStep
#3       249msec        2D:MainStep:MapStep
#4       232msec        2D:MainStep:MobileStep
#5       188msec         ChatTabPane:SetText
#6       172msec         TextWidget:glyphlist:SetText
#7       159msec        2D:MainStep:Dynamics_MainStep
#8       141msec         Text:GuiAddChatLine
#9       125msec         Walk:BlendOutLayersAbovePlayer:setvis
#10      110msec       Packets:kPacket_Text
204360  === MyProfilerTop memLua allocations ===
#1     18281kb MainStep:gCurrentRenderer:MainStep
#2     10643kb MainStep:LugreStep
#3      6881kb  2D:MainStep:MapStep
#4      5301kb  2D:MainStep:MobileStep
#5      4904kb  2D:MainStep:Dynamics_MainStep
#6      2503kb   2D:MobileStep:UpdateMobileGfx:Build
#7      1665kb MainStep:UpdateCompass
#8      1514kb   Walk:SetPlayerPos:DestroyObjectsFarFromPlayer
#9      1368kb   Walk:BlendOutLayersAbovePlayer:setvis
#10     1255kb   2D:MobileStep:UpdateMobileGfx:human
204360  === MyProfilerTop memOgre allocations ===
#1     16864kb MainStep:gCurrentRenderer:MainStep
#2     11024kb   2D:MobileStep:UpdateMobileGfx:Build
#3      8672kb  2D:MainStep:MobileStep
#4      8192kb  2D:MainStep:MapStep
#5      2352kb MainStep:LugreStep
#6        80kb   Text:Mobile_NameHint
#7        80kb   Packet_Localized_Text:HandleUOText
204375   . . . . .
###ShardListSavePlayerMobile    table: 203BD060 table: 10DF99F0


You can see my character stop often, but in game I was running all time with feeling of hang.

Thanks,

Regards,

_________________
Suwing
Sorry for my bad english.


Top
 Profile  
 
 Post subject:
PostPosted: Fri May 08, 2009 1:41 pm 
Offline
iris2-developer
User avatar

Joined: Tue Apr 18, 2006 10:28 pm
Posts: 823
Location: Munich, Bavaria, Germany
Statics and dynamics are handled differently.
Statics are known and can be loaded blockwise, whereas dynamics are sent tilewise by the server during walking.
Since we batch (summarize) dynamic geometry blockwise, this means that the whole block has to be rebuilt with every step,
so dynamics eat more performance than statics during walk.

We thought about a few ways to improve this, but it'll take a while until we get around to implementing them.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 9 posts ] 

All times are UTC


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Group