Nvidia's internal Geforce 260.52 Beta drivers are dated Wednesday, September 1, 2010 and include support for Geforce 8, 9, 100, 200, 300 and 400 Series desktop cards (including the upcoming Geforce GTS 450). They also come bundled with a new PhysX 9.10.0514 software update.
The new driver package marks a departure from the rather unified installation process Nvidia has implemented over the past few years. Users now have the freedom to perform an Express Install, where GPU drivers are updated while current Nvidia settings are retained, or a Custom (Advanced) Install, which allows custom installation options for discreet driver components. In other words, Nvidia has finally implemented the driver installation flexibility that AMD Catalyst users have known for so many years, as the company now allows users to uncheck the installation of PhysX System Software, the 3D Vision Driver, and the Graphics Driver individually. This is particularly useful for users without Nvidia 3D Vision setups who find themselves constantly uninstalling 3D Vision software and disabling Windows services related to 3D Vision driver components for every new update.
New driver installation UI in Nvidia Geforce 260.52 Beta
Express and Custom installation options in Nvidia Geforce 260.52 Beta
Custom driver installation options in Nvidia Geforce 260.52 Beta
Not much is known about the full list of feature changes Nvidia has implemented in this release. After all, the drivers were leaked from a Taiwanese source and contain no documentation. While browsing through the Nvidia Control Panel, however, we were able to discover a new setting called Dynamic Tiling. While the feature contains no functional description, settings include Nvidia Recommended, Off, Safe and Unsafe. According to an article on IngentaConnect, Dynamic Tiling is a software mechanism that makes effective use of shared caches on simultaneous multithreaded (SMT) processors by partitioning the shared caches into dynamically-sized "tiles" to improve performance and reduce excessive cache conflicts.
We suppose this feature may be particularly geared towards Fermi-based GPUs, as the architecture is capable of simultaneously executing multiple kernels from the same application, each kernel being distributed to one or more SMs on the die. In turn, the application switching is managed by Nvidia's GigaThread hardware thread scheduler, which manages 1,536 simultaneously active threads for each streaming multiprocessor. From the abstract:
"Simultaneous multithreaded (SMT) processors use data caches which are dynamically shared between threads. Depending on the processor workload, sharing the data cache may harm performance due to excessive cache conflicts. A way to overcome this problem is to physically partition the cache between threads. Unfortunately, partitioning the cache requires additional hardware and may lead to lower utilisation of the cache in certain workloads. It is therefore important to consider software mechanisms to implicitly partition the cache between threads by controlling the locations in the cache in which each thread can load data. This paper proposes standard program transformations for partitioning the shared data caches of SMT processors, if and only if there are conflicts between threads in the shared cache at runtime. We propose transformations based on dynamic tiling. The key idea is to use two tile sizes in the program, one for single-threaded execution mode and one suitable for multithreaded execution mode and switch between tile sizes at runtime. Our transformations combine dynamic tiling with either copying or storing arrays in block layout. The paper presents an implementation of these transformations along with runtime mechanisms for detecting cache contention between threads and react to it on-the-fly. Our experimental results show that for regular, perfect loop nests, these transformations provide substantial performance improvements."
For the sake of performance comparison against Geforce 258.96 WHQL drivers released on July 19, 2010, we installed the Geforce 260.52 Beta drivers on a gaming PC running an Intel Core i7 860 at 3.80GHz, an EVGA P55 SLI FTW motherboard, 4GB of DDR3 1600MHz CL7 memory, EVGA GeForce GTX 275 CO-OP PhysX and EVGA GeForce GTX 275 SC graphics cards in SLI + dedicated PhysX, and Windows 7 Ultimate x64. According to our 3DMark Vantage benchmark results, the drivers behave no differently than Geforce 258.96 WHQL, with negligible differences between GPU subscores and a slight increase in CPU subscore.
Geforce 260.52 Beta - 3DMark Vantage Performance test
Geforce 258.96 WHQL - 3DMark Vantage Performance test
Our friends at TechConnect Magazine have the Geforce 260.52 Beta drivers available to download for anyone willing to experiment. They can be found here.
Update: According to Nvidia Senior PR Manager Bryan Del Rizzo, the Geforce 260.52 Beta drivers are currently under NDA until Monday, September 13, 2010. They will be posted for download on the official Nvidia site that day at 9am EST (6am PST) along with release notes and a changelog from the prior WHQL driver release.