Visit additional Tabor Communication Publications
May 28, 2009
This week Intel announced that it has begun shipping what is probably the most significant new tool in parallel computing to come along in quite a while: Parallel Studio. Intel began talking about Parallel Studio back in August of last year, and released a beta version in February.
So, what is it? Parallel Studio is a set of plug-ins for Microsoft's Visual Studio integrated development environment (IDE) for Windows. This tells you a lot about where the tool is aimed: at C and C++ developers of applications for a single multicore desktop where shared memory models (like OpenMP and threading) are relevant. It is also aimed at non-experts in parallel computing, providing tools to help with the what of parallel coding -- the actual development -- as well as the where and how.
Intel obviously has a very large motivation to help developers get the most out of its chips, and the largest number of chips head out the door to consumers. Even as we've accelerated toward deployment of more complex multicore processors, the computer science and IT communities have collectively decried the lack of tools and education among the millions of programmers who are now faced with re-engineering their sequential applications for at least dozens of cores (more if they don't want to do it again in 18 months). Intel has stepped up to the plate with a whole host of efforts to help bridge the skills gap: it is funding basic research through its Universal Parallel Computing Research Centers, providing curriculum support material to professors all over the world to help train the next generation workforce, teaming up with other companies to provide large-scale computational test beds, and developing tools like Ct and Threading Building Blocks.
Each of these is part of Intel's big picture strategy for parallel computing. But the bread and butter of this revolution in skills development today is Parallel Studio. Parallel Studio consists of three production-quality tools that address the entire lifecycle of parallel application development, from coding and debugging to tuning.
Parallel Composer is where code gets written in Parallel Studio (Intel has posted videos that show off the features of Composer on its Web site). It supports application development in C and C++ using Intel's Threading Building Blocks and OpenMP, and supports Windows own threading tools, which could be important if you are using a library or have an existing code base. Composer strongly adopts the Visual Studio way of doing things, so there is all the semantic support for parallel programming you'd expect from an IDE on Windows.
Parallel Inspector is the debugging center of the suite (video feature walkthroughs here). Chief Evangelist and Director of Marketing for Intel's Software Development Products, James Reinders is especially keen on the automated deadlock and race condition detection that happens through runtime observation of the applications during execution. Inspector finds these problems by monitoring all memory accesses by the various threads, and watching for two threads that target the same memory location for modification. Reinders explains that this can be especially powerful for finding latent faults -- conditions where the code works fine on your system, but fails in unexpected ways after it ships out to thousands of users. When I asked him for some feedback about what they had gotten out of the beta, he said that beta users were very enthusiastic about having access to a thread-safe memory checker, and as a result they put in extra effort to make sure that Inspector was up to snuff.
The final shipping piece of the Parallel Studio suite is Parallel Amplifier (click here for videos). Amplifier helps developers find bottlenecks in their code, and tune it for scalable multicore performance. Amplifier builds upon the experience of VTune, a powerful but hard-to-use tool Intel has offered for more than a decade. Amplifier utilizes a new user interface that gained popularity after being introduced several years ago at WhatIf.Intel.com. Although they are bundled as a suite, you can buy the individual components separately and the tools can work independently and with tools from other vendors.
Design for non-experts is obviously an absolute necessity for Parallel Studio at this point in the adoption of multicore processors. Reinders says that throughout the beta program the product team was very sensitive to any findings that pointed to workflow or design features in the product that were non-intuitive for users. They conducted a series of live tests, watching users install and use the software, noting where users seemed to get stuck and finding opportunities to make the next step a little more obvious.
The piece of the puzzle that Intel is still working on is Parallel Advisor, released this week as a free download called Parallel Advisor Lite (which is a little ahead of the schedule Reinders briefed me on back in August of last year for this tool; note that although it is free you've got to have Parallel Studio in order to use it). Advisor is an interesting piece of technology that is designed to analyze existing sequential code and advise developers of opportune places to add parallelism, and to offer advice about how to go about it.
What is the path for Parallel Studio developers off the desktop and onto distributed memory clusters? Reinders points to the company's extensive portfolio of compilers and performance products for cluster and HPC developers on Linux platforms. He explains that Parallel Studio is designed for developers for whom "parallelism is a piece of their job, not an all-consuming passion," and right now Parallel Studio leaves off where MPI begins, even on Windows clusters. Still, Reinders does say that parts of the suite will migrate to Intel's other tools for clusters and other operating systems where it makes sense, and this is definitely a good thing for our community.
May 16, 2013 |
When it comes to cloud, long distances mean unacceptably high latencies. Researchers from the University of Bonn in Germany examined those latency issues of doing CFD modeling in the cloud by utilizing a common CFD and its utilization in HPC instance types including both CPU and GPU cores of Amazon EC2.
May 15, 2013 |
Supercomputers at the Department of Energy’s National Energy Research Scientific Computing Center (NERSC) have worked on important computational problems such as collapse of the atomic state, the optimization of chemical catalysts, and now modeling popping bubbles.
May 10, 2013 |
Program provides cash awards up to $10,000 for the best open-source end-user applications deployed on 100G network.
May 09, 2013 |
The Japanese government has revealed its plans to best its previous K Computer efforts with what they hope will be the first exascale system...
May 08, 2013 |
For engineers looking to leverage high-performance computing, the accessibility of a cloud-based approach is a powerful draw, but there are costs that may not be readily apparent.
05/10/2013 | Cleversafe, Cray, DDN, NetApp, & Panasas | From Wall Street to Hollywood, drug discovery to homeland security, companies and organizations of all sizes and stripes are coming face to face with the challenges – and opportunities – afforded by Big Data. Before anyone can utilize these extraordinary data repositories, however, they must first harness and manage their data stores, and do so utilizing technologies that underscore affordability, security, and scalability.
04/15/2013 | Bull | “50% of HPC users say their largest jobs scale to 120 cores or less.” How about yours? Are your codes ready to take advantage of today’s and tomorrow’s ultra-parallel HPC systems? Download this White Paper by Analysts Intersect360 Research to see what Bull and Intel’s Center for Excellence in Parallel Programming can do for your codes.
In this demonstration of SGI DMF ZeroWatt disk solution, Dr. Eng Lim Goh, SGI CTO, discusses a function of SGI DMF software to reduce costs and power consumption in an exascale (Big Data) storage datacenter.
The Cray CS300-AC cluster supercomputer offers energy efficient, air-cooled design based on modular, industry-standard platforms featuring the latest processor and network technologies and a wide range of datacenter cooling requirements.