Re: glDrawPixels speed.

New Message Reply Date view Thread view Subject view Author view

Jean-Francois Panisset (panisset++at++discreet.qc.ca)
Fri, 31 Jan 1997 16:54:09 -0500


 <9701311656.AA22815++at++mred.bgm.link.com>Steve Baker writes
>
>Is there some trick to getting fast 'glDrawPixels'? I'm
>trying to dump a 640x480 chunk of image data from main
>memory into the frame buffer, using something like:
>
> glDrawPixels ( WIDTH, HEIGHT, GL_RGB, GL_UNSIGNED_BYTE, buff ) ;
>
>On infinite reality (2xRM, R10k CPU's) I'm seeing ~12Mbytes per second
>and on RE2 (2xRM R4400 CPU's) I'm getting ~7Mbytes per second.
>
>I recollect hearing figure nearer 100 to 200Mbytes/sec on the iR - am
>I mistaken - or is there something wrong here?
>
>I get better rates than this on my PC at home (admittedly not when using GL)!

On an IR driven by R10K CPUs, we have measured sustained rates
of around 170MB/sec when doing 720x486 glDrawPixels() in
GL_RGB, GL_UNSIGNED_BYTE format. You are mostly bound by
the bandwidth between over host to pipe connection, so whether you
use GL_RGB, GL_RGBA, GL_UNSIGNED_BYTE or GL_UNSIGNED_SHORT data types,
the MB/sec bandwidth remains pretty much the same (with correponding
variations in mpixels/sec).

On a RealityEngine2, we see around 79MB/sec for GL_RGB, GL_UNSIGNED_BYTE
OpenGL pixels, about the same for pixmode(PM_SIZE,24) IrisGL pixels.

As others have said: pixels in OpenGL are treated the same as
polygon-generated fragments, so make sure expensive operations
are turned off (including texturing: for some silly reasons,
pixels can be textured, even though there is no way to
specify texture coordinates).

JF

Jean-Francois Panisset panisset++at++discreet.com
Software Engineer
Discreet Logic
=======================================================================
List Archives, FAQ, FTP: http://www.sgi.com/Technology/Performer/
            Submissions: info-performer++at++sgi.com
        Admin. requests: info-performer-request++at++sgi.com


New Message Reply Date view Thread view Subject view Author view

This archive was generated by hypermail 2.0b2 on Mon Aug 10 1998 - 17:54:31 PDT

This message has been cleansed for anti-spam protection. Replace '++at++' in any mail addresses with the '@' symbol.