Tuesday, May 15, 2012

Nvidia Parallel Nsight 2.2; CUDA Toolkit 5.0 Preview in Eclipse Version

Nvidia Parallel NSight 2.2 : Visual Studio and Eclipse Now - all editions FREE!

Nvidia Releases Unified FREE Version : No more "Professional" vs. "Standard" Editions

I was happy to read the latest news that shows Nvidia has come to the realization that the best way to further adoption of its CUDA technology is to make its productivity tools (like Nsight 2.2) easily available to all developers.  Nvidia (NASDAQ:NVDA) corporation's line of GPUs (Graphical Processing Units) provides incredibly powerful parallel computing within reach of most individual users and businesses through rather affordable Nvidia Graphics Cards, including its most recent "Kepler" GPUs that have just started hitting the store shelves. The Kepler architecture is available in the latest Nvidia graphics cards like the GeForce GTX 680.

An even wider range of developers is now within reach of simplified CUDA programming and software development thanks to the new Eclipse IDE plugin. The Microsoft Visual Studio version is still available, but now the Eclipse version will open up development of CUDA applications under Eclipse on Linux and MacOS environments (I am still not sure why support for an Eclipse version on Windows OS is not yet indicated; I cannot help wonder if Nvidia has some existing licensing agreement with MS to promote Visual Studio for Windows development — hopefully, with time, the Nsight Eclipse Edition will run on Windows Eclipse too).

New Features in Nvidia Nsight 2.2

Eclipse Edition Specific

One standout in the Eclipse edition is that it uses a preview version of the CUDA 5.0 toolkit that includes Nvidia's own C and C++ compilers. There is actually a presentation about CUDA 5.0 new features today, and I will be blogging about those new features as more details emerge.

Visual Studio Edition Specific

Some features only make sense on Windows, like the support for DirectX 9 frame debugging, frame profiling, and analysis. But, I found it odd that features like "Local CUDA debugging on a single GPU system" and "Support for the new Kepler architecture" were currently only shown as bullet-points under the Visual Studio / Windows version of Nsight and not under the new Eclipse Nsight version. I wonder if this is simply due to how new the Eclipse product is and the fact that it may still take a bit of time to push the same feature-set into both versions. I sure hope that is the case, as the single-GPU CUDA debugging and latest GPU support are both very interesting to me and other developers (especially if you only have one GPU installed in a development system).

General Nsight 2.2 Features on Interest

Nvidia has added features like automatic code refactoring (to convert sequential CPU loops into GPU kernels where parallel GPU execution is possible), syntax highlighting and autocompletion for both CPU and GPU code, and a code analysis system to help identify bottlenecks in CPU-GPU applications via a unified CPU and GPU application trace.

The Nsight Source Code Editor has new project templates and integration with the CUDA SDK samples to make getting started quick and easy — this should certainly help new developers get productive more quickly. The editor has CUDA code highlighting to make it easy to navigate heterogeneous code while CUDA-aware code completion, inline help, and refactoring are certain to improve developer productivity and code quality.

The Nsight Debugger provides seamless and simultaneous debugging of both CPU and GPU code as well as the ability to view program variables across several CUDA threads and examine execution state and mapping of the kernels and GPUs. You can view, navigate and filter to selectively track execution across threads, plus you have the ability to set breakpoints and perform single-step execution at both source-code and assembly levels. This all sounds like great improvements to a rapidly developing product that has come a long way in the past couple years.

Get Started with CUDA / Nvidia Nsight

If you want to get started with CUDA programming and development, and you have a somewhat recent CUDA-Enabled Graphics Card in your system, head over to the Nvidia CUDA Download Page to obtain the free software. I actually posted this image of the page showing how nicely organized it is (they recently updated it to make it rather clear):

Once you have the CUDA Toolkit, you can obtain downloads of the latest Nsight 2.2 at: Nvidia Nsight Visual Studio Edition or Nvidia Nsight Eclipse edition.

Continue to read this Software Development and Technology Blog for computer programming articles (including useful free / OSS source-code and algorithms), software development insights, and technology Techniques, How-To's, Fixes, Reviews, and News — focused on Dart Language, SQL Server, Delphi, Nvidia CUDA, VMware, TypeScript, SVG, other technology tips and how-to's, plus my varied political and economic opinions.

No comments: