FIFE forums

Please login or register.

Login with username, password and session length
Advanced search  

News:

FIFE 0.4.0 has been released on 15th of January, 2017!

Author Topic: FIFE engine profile  (Read 3157 times)

Sleek

  • Developer
  • Jr. Member
  • *
  • Posts: 57
    • View Profile
FIFE engine profile
« on: January 12, 2008, 11:48:48 am »

Here I attach a profile of our engine. Note that this is not pure svn,containing my view changes. Also, the engine is ran by a C++ client, and the map loaded is island_demo. The map was zoomed out, and then translated up-down & left-right a bit. Below is the top 3 most expensive functions :

Code: [Select]
Each sample counts as 0.01 seconds.
  %   cumulative   self              self     total           
 time   seconds   seconds    calls  ms/call  ms/call  name   
 53.33      0.08     0.08        2    40.00    40.00  FIFE::PointType3D<double>::PointType3D(double, double, double)
 13.33      0.10     0.02     1378     0.01     0.01  FIFE::PointType3D<int>::PointType3D(int, int, int)
 13.33      0.12     0.02                             __i686.get_pc_thunk.bx

Full profile here
Logged

jasoka

  • Developer
  • Jr. Member
  • *
  • Posts: 51
    • View Profile
Re: FIFE engine profile
« Reply #1 on: January 12, 2008, 01:45:40 pm »

In case I interpret the log correctly, the profiling lasted 0.15 seconds(?). That would result heavy bias on xml loading (which isn't big bottleneck atm). Perhaps you could run the profiling for longer period, so that renderers get more time. Perhaps something like 10 seconds or so.
Logged

Sleek

  • Developer
  • Jr. Member
  • *
  • Posts: 57
    • View Profile
Re: FIFE engine profile
« Reply #2 on: January 12, 2008, 09:15:02 pm »

not sure what's up there.. but be assured that the program existed for much longer than 0.15 secs ( my response time is not that good to make it exit that quickly :) ). I tried a new run just now, but still 0.47 secs. Will try callgrind of valgrind soon.


OFFTOPIC:
*After using valgrind-callgrind, and processing & displaying the data with kcachegrinder*

I would recommend all developers worthy of his salt to download this nifty thing and try it yourself.
Like how valgrind left me with this feeling of awe at how it helped me detect memory leaks, callgrind+kcachegrinder combo just sent me very close to nirvana. No words could describe it, no amount of information sharing will tell you how great it is. Please download and try it. Oh I am happily crying already  :'(.



ONTOPIC:


Note that the top left box lists classes in most expensive ordering. The bottom of it shows the functions, with the most expensive ones at the top. The top right box annotates your source code, showing which line is costly. What's showing there depends on what you click, and there is a lot more that you can do that I have not described.
« Last Edit: January 12, 2008, 10:42:07 pm by Sleek »
Logged