Re: [osg-users] VPB and PagedDatabase performance.

2008-02-29 Thread Gert van Maren

 ATI doesn't do display lists at all well, change the DatabasePager to
 use vertex arrays to see if that helps.  Run osgviewer --help-env to
 list the env vars that you can use to enable the use of vertex arrays.

We have the same issue on ATI cards. The paging problem never really got  
fixed in the ATI drivers unfortunately.

Gert

-- 
Gert van Maren

Head of Research  Development
K2Vi Virtual Reality Software
Data Interface Technologies Ltd

Phone: +64 21 2855581
Email: [EMAIL PROTECTED]
Web: http://www.k2vi.com

___
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org


Re: [osg-users] VPB and PagedDatabase performance.

2008-02-28 Thread Robert Osfield
On Thu, Feb 28, 2008 at 1:24 AM, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote:
  I built the data base as 16 tiles of 4kx4k each tile
  running osgdem -l 6 , would running -l 8 help performance?

It won't make any real difference.  Things should scale comfortable to
level 18 and beyond.  Level 6 and level 8 really rather small in the
great scheme of things.

  Everything is local to a single machine. I have tried
  release
  and debug versions. The machines I have been using range
  from
  an athalon x2, 2gigs of ram + built in ati video (20-30 fps)
  to a 2.4 gig core 2 duo , with 4 gigs ram, GeForce 8800 GTX,
  and 2x raid0 hard drive array. (60 fps)

ATI doesn't do display lists at all well, change the DatabasePager to
use vertex arrays to see if that helps.  Run osgviewer --help-env to
list the env vars that you can use to enable the use of vertex arrays.


  In both cases the lag spikes occurs at various points as the
  camera is moving over the database. My FPS counter might be
  60,60,60,10,18,60,60,60. As soon as the data has been loaded
  the app runs rock steady.

There is something odd going on your machine.  You should just get a
solid 60Hz.  The DatabasePager is designed to load balance to
shouldn't get big frame drops.

Is there another process running on your machine?

What OS are you using?  What other apps are running?

  I have tried playing with the LoDScale settings and can
  minimize
  the impact by lowering how much of the database gets loaded.
  Is there an easy way to tell the pagedLOD's to just load the
  data and never retire the unused data? I think if I kept the
  whole
  thing in memory I would be golden.

See include/osgDB/DatabasePager and osgviewer --help-env for the
vairous methods of control the load balancing.

But.. you shouldn't really need to play with it much, you frame misses
are likely to be due to something else.

Robert.
___
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org


Re: [osg-users] VPB and PagedDatabase performance.

2008-02-28 Thread Paul Martz
 I built the data base as 16 tiles of 4kx4k each tile running 
 osgdem -l 6 , would running -l 8 help performance? 

In the first case, you have 6 levels of detail, in the second you have 8.
The presence of additional levels of detail will not affect the rendering
performance of the existing 6 levels.
   -Paul

___
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org


Re: [osg-users] VPB and PagedDatabase performance.

2008-02-27 Thread Paul Martz
   Q2: What are the parameters can I tweak in an OSG  application to 
  tweak how the program runs?
 
 Well there are hundreds of classes with dozens of methods in each...
 so a massive set of options you can tweak.  First thing is to 
 figure out what the actual performance problem is then to 
 guide in the right direction.

Also, there are several environment variables for controlling the
DatabasePager that you might want to take a look at. The current OSG Ref Man
v2.2 contains a section documenting all OSG environment variables:
  http://www.lulu.com/content/1669182

Paul Martz
Skew Matrix Software LLC
http://www.skew-matrix.com
303 859 9466

___
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org


Re: [osg-users] VPB and PagedDatabase performance - compileGLObjects (UNCLASSIFIED)

2008-02-27 Thread Dorsett, Mike F AMRDEC/SAIC
Classification:  UNCLASSIFIED 
Caveats: NONE

I happened to be looking at that today. I noticed that the call in
Renderer.cpp (2.2 and trunk):

databasePager-compileGLObjects

Always uses 0.004 for available time. So, unless you roll your own
Viewer, your stuck with this time. Also, it doesn't seem that variables:

minimumTimeAvailableForGLCompileAndDeletePerFrame
Or
targetFrameRate

are used at all, not even as a hint. But, I could be missing something. 


Mike Dorsett - Software Engineer - SAIC


-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Paul
Martz
Sent: Wednesday, February 27, 2008 8:53 AM
To: 'OpenSceneGraph Users'
Subject: Re: [osg-users] VPB and PagedDatabase performance.

   Q2: What are the parameters can I tweak in an OSG  application to 
  tweak how the program runs?
 
 Well there are hundreds of classes with dozens of methods in each...
 so a massive set of options you can tweak.  First thing is to figure 
 out what the actual performance problem is then to guide in the right 
 direction.

Also, there are several environment variables for controlling the
DatabasePager that you might want to take a look at. The current OSG Ref
Man
v2.2 contains a section documenting all OSG environment variables:
  http://www.lulu.com/content/1669182

Paul Martz
Skew Matrix Software LLC
http://www.skew-matrix.com
303 859 9466

___
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.or
g
Classification:  UNCLASSIFIED 
Caveats: NONE

___
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org


Re: [osg-users] VPB and PagedDatabase performance - compileGLObjects (UNCLASSIFIED)

2008-02-27 Thread Robert Osfield
HI Mike,

Yes your analysis is correct, Renderer.cpp is still hardwired, and
shouldn't be.  I'll put this down on my TODO list to fix.

Robert.

On Wed, Feb 27, 2008 at 3:24 PM, Dorsett, Mike F AMRDEC/SAIC
[EMAIL PROTECTED] wrote:
 Classification:  UNCLASSIFIED
  Caveats: NONE

  I happened to be looking at that today. I noticed that the call in
  Renderer.cpp (2.2 and trunk):

 databasePager-compileGLObjects

  Always uses 0.004 for available time. So, unless you roll your own
  Viewer, your stuck with this time. Also, it doesn't seem that variables:

 minimumTimeAvailableForGLCompileAndDeletePerFrame
 Or
 targetFrameRate

  are used at all, not even as a hint. But, I could be missing something.


  Mike Dorsett - Software Engineer - SAIC


  -Original Message-
  From: [EMAIL PROTECTED]
  [mailto:[EMAIL PROTECTED] On Behalf Of Paul
  Martz
  Sent: Wednesday, February 27, 2008 8:53 AM
  To: 'OpenSceneGraph Users'
  Subject: Re: [osg-users] VPB and PagedDatabase performance.

 Q2: What are the parameters can I tweak in an OSG  application to
tweak how the program runs?
  
   Well there are hundreds of classes with dozens of methods in each...
   so a massive set of options you can tweak.  First thing is to figure
   out what the actual performance problem is then to guide in the right
   direction.

  Also, there are several environment variables for controlling the
  DatabasePager that you might want to take a look at. The current OSG Ref
  Man
  v2.2 contains a section documenting all OSG environment variables:
   http://www.lulu.com/content/1669182

  Paul Martz
  Skew Matrix Software LLC
  http://www.skew-matrix.com
  303 859 9466

  ___
  osg-users mailing list
  osg-users@lists.openscenegraph.org
  http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.or
  g
  Classification:  UNCLASSIFIED
  Caveats: NONE

  ___
  osg-users mailing list
  osg-users@lists.openscenegraph.org
  http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

___
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org


Re: [osg-users] VPB and PagedDatabase performance -compileGLObjects (UNCLASSIFIED)

2008-02-27 Thread Paul Martz
 I happened to be looking at that today. I noticed that the 
 call in Renderer.cpp (2.2 and trunk):
 
   databasePager-compileGLObjects
 
 Always uses 0.004 for available time. So, unless you roll 
 your own Viewer, your stuck with this time. Also, it doesn't 
 seem that variables:
 
   minimumTimeAvailableForGLCompileAndDeletePerFrame
   Or
   targetFrameRate
 
 are used at all, not even as a hint. But, I could be missing 
 something. 

If you believe the Reference Manual has incorrectly documented something,
please point me to the page or section number, say what you think is wrong,
and state how you think it should read. I'll be glad to look into it and
make changes in a future revision.

Paul Martz
Skew Matrix Software LLC
http://www.skew-matrix.com
303 859 9466

___
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org


Re: [osg-users] VPB and PagedDatabase performance -compileGLObject (UNCLASSIFIED)

2008-02-27 Thread Dorsett, Mike F AMRDEC/SAIC
Classification:  UNCLASSIFIED 
Caveats: NONE

I don't have the 2.2 book to compare against, so I apoligize if I get
something wrong. All this assumes you are using osgViewer::Viewer.
Changing the environment variable

OSG_MINIMUM_COMPILE_TIME_PER_FRAME 

wouldn't do anything right now. Same goes for the function equivalent.
Setting targetFrameRate also isn't used. 

Here is the doxygen comment that talks about these 2 variables

/** Set the target frame rate that the DatabasePager should assume.
* Typically one would set this to the value refresh rate of your display
system i.e. 60Hz.
* Default value is 100.
* Usage notes.  The TargetFrameRate and the
MinimumTimeAvailableForGLCompileAndDeletePerFrame
* parameters are not directly used by DatabasePager, but are should be
used as a guide for how
* long to set aside per frame for compiling and deleting OpenGL objects
- ie. the value to use 
* when calling DatabasePager::compileGLObjectgs(state,availableTime,).
The longer amount of
* time to set aside  cthe faster databases will be paged in but with
increased chance of frame drops,
* the lower the amount of time the set aside the slower databases will
paged it but with better
* chance of avoid any frame drops.  The default values are chosen to
achieve the later when running
* on a modern mid to high end  PC. 
* The way to compute the amount of available time use a scheme such as :
*availableTime = maximum(1.0/targetFrameRate -
timeTakenDuringUpdateCullAndDraw,
minimumTimeAvailableForGLCompileAndDeletePerFrame). 
*/

So, if you used DatabasePager in your own viewer, using a different
Renderer class, you could look up these variables and use them. Frankly,
if you went to that much trouble, you probably already know what kind of
time slice you would give to compileGLObjects.


Mike Dorsett - Software Engineer - SAIC


-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Paul
Martz
Sent: Wednesday, February 27, 2008 10:46 AM
To: 'OpenSceneGraph Users'
Subject: Re: [osg-users] VPB and PagedDatabase performance
-compileGLObjects(UNCLASSIFIED)

 I happened to be looking at that today. I noticed that the call in 
 Renderer.cpp (2.2 and trunk):
 
   databasePager-compileGLObjects
 
 Always uses 0.004 for available time. So, unless you roll your own 
 Viewer, your stuck with this time. Also, it doesn't seem that 
 variables:
 
   minimumTimeAvailableForGLCompileAndDeletePerFrame
   Or
   targetFrameRate
 
 are used at all, not even as a hint. But, I could be missing 
 something.

If you believe the Reference Manual has incorrectly documented
something, please point me to the page or section number, say what you
think is wrong, and state how you think it should read. I'll be glad to
look into it and make changes in a future revision.

Paul Martz
Skew Matrix Software LLC
http://www.skew-matrix.com
303 859 9466

___
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.or
g
Classification:  UNCLASSIFIED 
Caveats: NONE

___
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org


Re: [osg-users] VPB and PagedDatabase performance -compileGLObject(UNCLASSIFIED)

2008-02-27 Thread Paul Martz
 I don't have the 2.2 book to compare against, so I apoligize 
 if I get something wrong.

Sorry, I must've misread your post. I tried to direct you to the env var ref
for more controls, and I thought your reply to my post was suggesting that
you had read it and found ti to be in error.

 Changing the environment variable
 
 OSG_MINIMUM_COMPILE_TIME_PER_FRAME 
 
 wouldn't do anything right now.

The env var section of the Ref Man already documents this as reserved for
future use.

 Setting targetFrameRate also isn't used. 

I don't see an environment variable to control this.
   -Paul

___
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org


[osg-users] VPB and PagedDatabase performance.

2008-02-26 Thread [EMAIL PROTECTED]
First, thank you to everyone for their work putting OSG 
and VPB, this is really an amazing piece of software.

Q1: Is there any advantage to having a single large osga
model built from say a 16kx16k input or having lots of
smaller 4kx4k tiled sections in separate files? 

Q2: Will rebuilding the database with more levels help
smooth out lag spikes when the various LOD nodes come into
view ? 

Q2: What are the parameters can I tweak in an OSG
application to tweak how the program runs? 

Q3: Can I force the OSG application not to swap out the
database and just recalculate the mesh ?


Background: I have a 16kx16 texture and 4kx4k height map
that I have used VPB to build a model of following the walk
through on the wiki. While using some simple dynamics to fly
over the terrain, my frame rates will nose dive at certain
points when database need to be paged in. The terrain takes
up about 500 meg on disk and I think might all fight in
memory. 
 

Thank you all,
Eric

___
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org