I don’t know, but you can easily find out by installing the CUDA SDK and running the deviceQuery sample. It will give you various information about your GPU, including its compute capability.
For native double support that even approaches performant however, you will need a CUDA 1.3 capable GPU, thats the 2xx series. Even then though, a single double operation takes as many clock cycles as 8 single operations. Fermi apparently improves on this, but I do not own one.
I don’t know, but you can easily find out by installing the CUDA SDK and running the deviceQuery sample. It will give you various information about your GPU, including its compute capability.
For native double support that even approaches performant however, you will need a CUDA 1.3 capable GPU, thats the 2xx series. Even then though, a single double operation takes as many clock cycles as 8 single operations. Fermi apparently improves on this, but I do not own one.
Yeap, this would work great after buying the new computer - the thing is that I’m trying to decide which laptop to buy. :)
Now I’m getting confused about native double support: In programming guide (3.1) section 5.2:
"Each double variable (on devices that supports native double precision, i.e. devices
of compute capability 1.2 and higher) and each long long variable uses two
registers. However, devices of compute capability 1.2 and higher have at least twice
as many registers per multiprocessor as devices with lower compute capability."
Then C.1.2:
"The errors listed below only apply when compiling for devices with native double-
precision support. When compiling for devices without such support, such as
devices of compute capability 1.2 and lower, the double type gets demoted to
float by default and the double-precision math functions are mapped to their
single-precision equivalents."
The G1 table says again no
I guess the first one is a typo in the document. sigh…
And I don’t need fast doubles, just doubles that work - the documentation said that it will demote doubles to floats in case the architecture doesn’t support them, which is kind of scary. I think I’d prefer emulated version but…
Yeap, this would work great after buying the new computer - the thing is that I’m trying to decide which laptop to buy. :)
Now I’m getting confused about native double support: In programming guide (3.1) section 5.2:
"Each double variable (on devices that supports native double precision, i.e. devices
of compute capability 1.2 and higher) and each long long variable uses two
registers. However, devices of compute capability 1.2 and higher have at least twice
as many registers per multiprocessor as devices with lower compute capability."
Then C.1.2:
"The errors listed below only apply when compiling for devices with native double-
precision support. When compiling for devices without such support, such as
devices of compute capability 1.2 and lower, the double type gets demoted to
float by default and the double-precision math functions are mapped to their
single-precision equivalents."
The G1 table says again no
I guess the first one is a typo in the document. sigh…
And I don’t need fast doubles, just doubles that work - the documentation said that it will demote doubles to floats in case the architecture doesn’t support them, which is kind of scary. I think I’d prefer emulated version but…
Ok, thanks - I was browsing through the documents and found an even more important point to preferring 1.2 over 1.1: in 1.1 coalescing is still “broken”, meaning that any single read/write inside half warp will serialize all reads/writes of that half warp, making development with 1.1 or less class devices a pain (a lot of “false-positive” broken coalesced accesses)
Ok, thanks - I was browsing through the documents and found an even more important point to preferring 1.2 over 1.1: in 1.1 coalescing is still “broken”, meaning that any single read/write inside half warp will serialize all reads/writes of that half warp, making development with 1.1 or less class devices a pain (a lot of “false-positive” broken coalesced accesses)