Martin Heller
Contributing Writer

Parallel computing with GPUs

analysis
Jul 25, 20083 mins

NCAR was able to speed up the Weather Research & Forecasting Model by 20% by parallelizing one component of the model with NVIDIA CUDA software and a many-core GPU Computing Processor called Tesla.

Writing highly parallel code is hard, but many of us are going to need to learn to do it in the next few years, since computers are now getting more cores and bigger caches instead of faster clocks. Writing good parallel code for symmetric multi-processor computers with shared memory is hard enough, but when it becomes asymmetric, more than a little art is required.

I’ve been impressed by the progress in graphics processors (GPUs) from NVIDIA and ATI. A recent story from NVIDIA illustrates what can be done. NCAR got a 20% overall speed improvement out of the most widely used weather forecasting model in the world. They did it by converting one component of the model, Microphysics, to use the CUDA programming environment and a many-core GPU Computing Processor called Tesla. The component they converted was accelerated by a factor of 10.

According to NVIDIA , the CUDA C programming environment simplifies many-core programming and enhances performance by offloading computationally-intensive activities from the CPU to the GPU. It enables developers to utilize NVIDIA GPUs to solve the most complex computation-intensive challenges such as protein docking, molecular dynamics, financial analysis, fluid dynamics, structural analysis and many others.

National Center for Atmospheric Research Taps CUDA for Better Weather Forecasting

From killer hurricanes to global climate change, weather is the biggest uncontrollable factor affecting our daily lives and, at times, our very survival. But early predictions of weather events are becoming faster and more accurate, giving people more time to prepare. At the National Center for Atmospheric Research (NCAR) a team of scientists has developed sophisticated forecasting models for immediate, long-term and short-term weather conditions.

The Weather Research & Forecasting Model (WRF) is the most widely used model in the world, with users including the National Weather Service, the Air Force Weather Agency, foreign weather services and commercial weather forecasting companies. NCAR’s climate and weather models are moving from Terascale (1 trillion FLOPS) to Petascale class applications, outgrowing conventional computing clusters and reaching a tipping point where adding more CPUs is no longer effective for improving speed. The problem has been particularly acute with applications that involve a real-time component or other time-to-solution constraints.

In examining ways to improve overall forecasting speed and accuracy, NCAR technical staff in collaboration with the researchers at the University of Colorado at Boulder turned to NVIDIA GPU Computing solutions. After porting to NVIDIA® CUDA™, there was a 10X improvement in speed for Microphysics, a crucial but computationally intensive component of WRF. Although Microphysics made up less than 1 percent of the model source code, converting it to CUDA resulted in a 20 percent speed improvement for the overall model.

“This result is extremely encouraging and timely, coming at a time when we are running out of gas for time-critical forecasts on conventional clusters,” says NCAR’s John Michalakes, lead software developer for WRF. “We aim to cut the time for a forecast by at least a factor of two as we incorporate NVIDIA’s GPU computing technology into more of WRF. I expect the affect of accelerators in weather and climate modeling will be transformative.”

Now NCAR, and the many agencies worldwide who rely on the WRF, are able to produce critically needed forecasts about real-time weather events and developing conditions faster. As a result, people will be able to prepare for these events and get out of harm’s way.

For more information, visit: www.ncar.ucar.edu

For more information on GPU Computing, visit: www.nvidia.com/object/tesla_computing_solutions.html

Martin Heller

Martin Heller is a contributing writer at InfoWorld. Formerly a web and Windows programming consultant, he developed databases, software, and websites from his office in Andover, Massachusetts, from 1986 to 2010. From 2010 to August of 2012, Martin was vice president of technology and education at Alpha Software. From March 2013 to January 2014, he was chairman of Tubifi, maker of a cloud-based video editor, having previously served as CEO.

Martin is the author or co-author of nearly a dozen PC software packages and half a dozen Web applications. He is also the author of several books on Windows programming. As a consultant, Martin has worked with companies of all sizes to design, develop, improve, and/or debug Windows, web, and database applications, and has performed strategic business consulting for high-tech corporations ranging from tiny to Fortune 100 and from local to multinational.

Martin’s specialties include programming languages C++, Python, C#, JavaScript, and SQL, and databases PostgreSQL, MySQL, Microsoft SQL Server, Oracle Database, Google Cloud Spanner, CockroachDB, MongoDB, Cassandra, and Couchbase. He writes about software development, data management, analytics, AI, and machine learning, contributing technology analyses, explainers, how-to articles, and hands-on reviews of software development tools, data platforms, AI models, machine learning libraries, and much more.

More from this author