Sign in to follow this  

when will we see DXGI_FORMAT_R64G64B64A64_FLOAT?

This topic is 822 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

To add to what has been said, storing your information as doubles instead of floats would double the amount of memory needed to stream to and from video memory. Memory transfer is a big bottle neck. Even 32 bits per channel per pixel is a big load when you consider most moderns games will be rendering to many different buffers and compositing them together. Even on modern hardware, devs favor fewer bits per pixel whenever possible.

Share this post


Link to post
Share on other sites

 

Why haven't GPUs made that full leap to 64 bit as CPUs have?

 

Because CPUs made the leap to 64 bit to support a greater memory address range (ie, more RAM).  32bit, in reference to GPUs, is almost exclusively talking about color depth (ie, the number of bits per pixel).

Share this post


Link to post
Share on other sites

because 256-bit for a 4-component colour is a waste of time, memory, registers, and bandwidth. I would prefer to see 10-bit depth-colour monitors everywhere to say good-bye to r8g8b8a8_s frame-buffers...

Edited by Alessio1989

Share this post


Link to post
Share on other sites
GPU's support 64-bit about as well as CPU's do: they support 64-bit pointers, can perform 64-bit arithmetic on those pointers, can store 64-bit values in registers (usually by using 2 adjacent 32-bit registers), can work with double-precision floating point, etc. HLSL is a little behind in this regard, but it's hardly a big deal since almost all graphics workloads are going to work with 8-bit, 16-bit, or 32-bit values.

As for a 64-bit per component texture format, I don't see it happening anytime soon. You can already write 64-bit values to buffers and textures by using 2 32-bit values, and those cases are probably too rare to justify making the ROP's and texture units more complicated. It's probably a better tradeoff to spend that silicon and on more ALU and cache, since that would benefit all workloads. Edited by MJP

Share this post


Link to post
Share on other sites

 

There are many more thing to store in buffers then just colors.

Out of curiosity what do you think you need 64bits for?

 

 
As far as 64 bit computation in general: CAD and any real-world modeling applications, large scale worlds, time handling.  Now I'm not suggesting using a lot of 64 bit math (for performance reasons on todays GPUs you would use it sparingly), nor am I suggesting there aren't other ways to work around it; but there are situations where a small amount of 64-bit computations can greatly simplify things while having negligible performance impact.
 
As far as a DXGI_FORMAT_R64G64B64A64_FLOAT format, I could see situations in non-polygonal rendering where it would be beneficial (ray tracing/casting, realtime CSG, etc...).

Share this post


Link to post
Share on other sites

This topic is 822 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this