[Haskell-cafe] Re: OpenGL Speed!

Lie Ryan lie.1296 at gmail.com
Fri Sep 17 13:53:01 EDT 2010


On 07/30/10 03:37, Nick Bowler wrote:
> On 2010-07-29 11:30 -0600, Luke Palmer wrote:
>> If you are trying to redraw in realtime, eg. 30 FPS or so, I don't
>> think you're going to be able to.  There is just not enough GPU
>> bandwidth (and probably not enough CPU).
> 
> Updating an 800x600 texture at 30fps on a somewhat modern system is
> absolutely *not* a problem.

It depends. Updating 800x600 screen at 24-bit color 30 times per second
requires 800*600*24*30 = 345600000 bytes/s = 329 MB/s which is larger
than the size of typical Video Memory, and the first version of PCI
Express (introduced 2003) is only 250 MB/s/lane.

While the bandwidth and Video Memory size is sufficient to transfer
329MB/s, it is quite near to the limit, especially if you have another
programs running, which may cause some resource contention or if you
used some memory-heavy techniques like double buffering.

You're probably quite safe if you have PCI Express version 2, have over
1GB RAM, and a good Video Card. You're probably quite screwed if your
VGA uses a Shared Memory Architecture (i.e. it uses RAM for video
memory, this easily causes resource contention).



More information about the Haskell-Cafe mailing list