Here's where we're spending our time these days, with the sim frozen
and the panel hidden (I've included everything down to 1%):

  %   cumulative   self              self     total           
 time   seconds   seconds    calls  us/call  us/call  name    
 17.40      1.22     1.22                             ssgMakeMipMaps(unsigned char*, 
int, int, int)
  8.84      1.84     0.62                             sgdMakeNormal(double*, double 
const*, double const*, double const*)
  6.99      2.33     0.49                             ssgEntity::cull_test(sgFrustum*, 
float (*) [4], int)
  5.28      2.70     0.37                             ssgBranch::cull(sgFrustum*, 
float (*) [4], int)
  4.85      3.04     0.34                             ssgVtxTable::draw_geometry()
  3.42      3.28     0.24     6001    39.99    83.32  
FGHitList::IntersectLeaf(ssgLeaf*, double (*) [4], double*, double*)
  3.28      3.51     0.23      669   343.80  1225.71  
FGHitList::IntersectBranch(ssgBranch*, double (*) [4], double*, double*)
  2.85      3.71     0.20                             ssgVtxTable::getNumVertices()
  2.71      3.90     0.19                             sgFrustum::contains(sgSphere 
const*) const
  2.14      4.05     0.15     7091    21.15    21.15  calc_magvar(double, double, 
double, long, double*)
  1.85      4.18     0.13   990060     0.13     0.13  sgdPointInTriangle(double*, 
double (*) [3])
  1.85      4.31     0.13   990060     0.13     0.13  sgdIsectInfLinePlane(double*, 
double*, double*, double*)
  1.57      4.42     0.11                             
ssgSGIHeader::ssgSGIHeader[in-charge](char const*, ssgTextureInfo*)
  1.43      4.52     0.10                             ssgSGIHeader::getRow(unsigned 
char*, int, int)
  1.28      4.61     0.09   785961     0.11     0.11  
sgdClosestPointToLineDistSquared(double const*, double const*, double const*)
  1.28      4.70     0.09                             ssgSimpleState::apply()
  1.14      4.78     0.08   528786     0.15     0.17  std::basic_string<char, 
std::char_traits<char>, std::allocator<char> 
>::basic_string[in-charge](std::basic_string<char, std::char_traits<char>, 
std::allocator<char> > const&)

ssgMakeMipMaps is the biggest CPU hog -- are we calling it every
frame?  The biggest surprise is the calc_magvar comes in so high.

In absolute terms, we're spending a lot of time allocating strings.


All the best,


David

-- 
David Megginson
[EMAIL PROTECTED]


_______________________________________________
Flightgear-devel mailing list
[EMAIL PROTECTED]
http://mail.flightgear.org/mailman/listinfo/flightgear-devel

Reply via email to