Fermi: Compute Capabilities (Cont.)
Other features of Fermi include support for C++ (current-generation CUDA products only support C), and, of course, the already oft-repeated fact that this core is some three billion transistors in size. NVIDIA has publicly tried to blow the importance of this off, claiming that analysts have always expressed concerns over the size of the company's chips, but there's no arguing that three billion transistors is a lot.
Fermi's block-level diagram. The increased amount of configurable/L1 cache per SM and the 768K of unified L2...
Obvious improvements over GT200 but NVIDIA has made changes to boost core execution efficiency all the way around.
Dig into NVIDIA's whitepapers on Fermi, and you may end up thinking that the company designed a compute engine that happens to be capable of handling graphics rather than the other way around. Many of Fermi's changes should translate across GPU computation and gaming; there's no inherent reason why both sides can't benefit from certain improvements. Certain features, like support for 64-bit addressing, however, are rather obviously aimed at the scientific computing market rather than the needs of the game industry.
NVIDIA Nexus -
Another one of the major projects NVIDIA has revealed is a massively parallel development environment that plugs into Microsoft's Visual Studio, dubbed Nexus. Nexus, according to NVIDIA, will allow programmers to simultaneously develop for heterogeneous computing environments. Developers will be able to use Nexus to write code intended for execution on the GPU or CPU simultaneously, and includes debugger and profiler capabilities to identify which code runs best on which execution resources.
According to NVIDIA, Nexus is capable of hardware-level debugging of CUDA C, HLSL, and DirectCompute (the original G80 did not include a hardware-level debugger; this feature is only available on G84 cards and above). When profiling program execution, it's possible to view GPU and CPU events simultaneously, or drill down into a specific area. If you listen to NVIDIA, the company is quite excited about Nexus, and touts it as a major boon to developers who have long wanted such a programming interface.
"NVIDIA Nexus is going to improve programmer productivity immediately," said Tarek El Dokor at Edge 3 Technologies. "An integrated GPU and CPU development solution is something Edge 3 has needed for a long time. The fact that it’s integrated into the Visual Studio development environment drastically reduces the learning curve."