From: Angus Dorbie (dorbie++at++sgi.com)
Date: 04/16/2001 17:36:44
Hi, sorry for the delay,
this took a little prompting as I was hoping someone on the list would
help.
Lee Marden wrote:
>
> Hey All,
>
> I'm looking for tips on buying a new SGI Onyx. I'm looking to upgrade
> my existing Onyx RE2 for my Performer based application. I'd like to
> understand my pixel fill requirements, and other key metrics before I
> talk with my SGI sales rep. Can someone point me to some good resources
> to help me figure out what my system requirements should be?
>
> For Example:
> - How do I calculate depth complexity?
Performer can measure this. Turn on stats, and specifically
PFSTATSHW_GFXPIPE_FILL to get depth complexity you need to count
everything even stuff failing the depth test so you need
PFSTATSHW_GFXPIPE_FILL_DEPTHCMP, to actually count the pixels and
generate a number you'll need to use the PFSTATSHW_GFXPIPE_FILL_DCCOUNT
token. If this is too complex just load your scene into perfly and use
the GUI to turn on fill stats.
> - How do I calculate my pixel fill rate requirements?
Well that should be the depth complexity number times your desired frame
rate, times the number of channels per pipe times the resolution of the
channels, it's typically a BIG number. You need to build in some margin
for worst case and for inefficiency. You should also consider your
texture format and whether your depth complexity has lots of blended
fragments or other state which might slow the hardware.
> - How do I determine if I should go with 3 graphics pipes ++at++ 2 channels
> or 2 graphics pipes ++at++ 3 channels?
The performance you require per channel mainly. Budget and future
expandability will play a big part too. To go from 2 to 3 pipes after
the fact may be expensive depending on factors like having available
rack space for the additional KCAR chassis. iR can do 3 channels at
1280x1024++at++60Hz video, but whether it can render those channels at 60Hz
depends very much on what you are rendering, i.e. the geometric
complexity and depth complexity of the scene. If you have a target frame
rate of 30Hz or less then you can draw more and meet the reduced
performance requirements.
> - How do my light points effect my requirements?
iR is fast at high quality multisample antialiased lights (it has
special hardware just for this). We take them into account for geometry
transformation calculations but don't need to do anything anything
special unless you need calligraphics. So consider the transformation of
a light point as geometry overhead.
> - How do my animated textures effect my requirements?
Hopefully they'll fit in texture memory, otherwise they will have to be
paged and that will have a significant impact on graphics performance.
You'll have to pretty much subtract the download time (and that will
depend on resolution format and animation rate) from the available
drawing time as determined by target frame rate. Let's say you want to
draw at 60Hz, then you have 16.7 ms to clear screen and draw everything,
if you page texture you might amortize some of that download time
against screen clear but pretty much you subtract it from the 16.7 ms
available frame time. The good news is iR has 256 MB TRAM with the
latest RM's so you can store animations and you have high texture
download rates for large images on all iR platforms. Ideally you'll
avoid wasting precious draw time downloading texture but for some
applications it's unavoidable.
> - Should I upgrade from Performer 2.2 to 2.4?
Yes, there are bug fixes and support for new features in 2.4 which
aren't present in 2.2. 2.3 is a Linux only port of 2.2.
> - Does Performer 2.4 run differently on different hardware
> configurations?
Yes, all releases of Performer automatically run differently on
different hardware unless you specify otherwise using the pfMultiprocess
call. In addition to this OpenGL extensions are queried and used
according to availability to support and accelerate features. On top of
this the model of graphics hardware is queried and default
implementation policy for some advanced features changes to exploit
advanced hardware capabilities and optimize for known fast options on
specific hardware.
Cheers,Angus.
-- For Performer+OpenGL tutorials http://www.dorbie.com/"Whenever there is a conflict between human rights and property rights, human rights must prevail." --Abraham Lincoln
This archive was generated by hypermail 2b29 : Mon Apr 16 2001 - 17:37:27 PDT