fluent.com home page

   
 

Getting Started with Parallel Processing

 

Kirk L. Oseid, US Director of Support, Fluent Inc.

More and more FLUENT users are taking advantage of parallel processing to reduce turnaround time and fully utilize available hardware. Based on the client interviews in the related article on page 36, it is clear that parallel processing is used today across a wide range of applications and industries. In this article, some parallel processing basics are presented along with representative performance statistics and an update on new parallel processing features in FLUENT 6.0. If you haven’t tried running in parallel yet, this information should convince you to give it a try and help get you started.

Hardware requirements

Many hardware systems today support parallel processing, as shown in the list below. On these systems, a FLUENT calculation can be shared by two or more processors.

  • Multi-processor UNIX (including Linux) machines
  • Multi-processor Windows-based machines
  • Networks of UNIX workstations
  • Networks of Windows-based workstations

Since many engineers have access to one or more of these systems, the option for parallel processing is now widely available throughout the FLUENT user base.

How parallel processing speeds up the calculation

In an ideal world, the time required to run a calculation on two processors should be half that required to run it on a single processor. Associated with this reduction in calculation time, however, is the addition of time required to continually communicate information between the processors as the calculation proceeds. This computational overhead contributes to the performance rating given to a multi-processor calculation. Each time the number of processors doubles, the computation time on each processor halves, but the over-head continues to increase.

The ideal performance improvement for a parallel calculation is one where the performance rating increases linearly with the addition of processors. After several years of dedicated effort, FLUENT is now impressively close to this ideal for most practical configurations. The graph at left shows the actual scale-up of the performance rating for several representative hardware systems. The mediumsized benchmark problem used for this set of tests is that of a turbulent flow in a domain of approximately 250,000 cells. This and other benchmarks are described in detail on the Fluent User Services Center (www.fluentusers.com) and on the corporate web site (www.fluent.com/software/fluent/fl5bench).


Performance ratings for a number of representative UNIX and Intel-based systems show linear or nearly-linear behavior

Getting started

You can run FLUENT in parallel if your current license allows for two or more FLUENT processes, and if you have two or more CPUs exclusively available to you. By following the steps outlined below, you can be up and running quickly.

  • Launch the parallel solver The parallel version of FLUENT can be launched on various platforms using commands like those shown in the table below.
Platform
FLUENT Launch Command
Multi-processor UNIX Machine
fluent 3d -t2
Multi-processor Windows-based Machine
fluent 3d -t2
Network of UNIX Workstations
fluent 3d -t<n> -pnet -cnf=hostfile
Network of Windows-based Workstations
fluent 3d -t<n> -pnet -cnf=hostfile

    In these examples the 3D version of the code is specified (3d), and two processes are started on the multi-processor machines (-t2). For the network examples, a process will be launched on each machine listed in the hostfile, up to a number <n> specified by the -t flag. For the Windows-based network example, it is assumed that the RSHD communicator software (included with the FLUENT distribution) has been installed. For instructions on building the hostfile file, please refer to Chapter 28 of the FLUENT User’s Guide.

  • Read the grid (or case) file and partition
    Partitioning is the task of segmenting your computational domain and assigning the segments to individual processors. FLUENT will automatically partition the grid or case file for you, using defaults that should be close to optimal. If the grid or case has been partitioned previously, the partitions are retained, but they can be reviewed and adjusted at any time. FLUENT provides partition quality reporting, as well as state-of-the-art partitioning tools.

  • Initialize and solve
    Initialize and compute the solution as you would in a serial (single processor) run. The only difference you should see is faster turnaround!

Parallel enhancements in FLUENT 6.0

Parallel processing has been available in Fluent products since the mid-1990s, with improvements highlighted in every major release. In FLUENT 6.0, this trend continues, with numerous enhancements featured in partitioning controls and flexibility. For example:

  • Unpartitioned grids can be imported and partitioned in the parallel solver;
  • Stationary non-conformal interfaces can be partitioned directly in the parallel solver;
  • Partitioning can be invoked automatically, following grid adaption and remeshing; and
  • Two types of partitioners (Geometric and Metis, developed at the University of Minnesota) are now available for use.

Dynamic load balancing (automatic cell migration between partitions) has also been added to help keep your FLUENT session running optimally. Changes due to local mesh adaption, new loads added to individual processors, and variations in network performance for clusters are now managed efficiently using behind-the-scenes technology.

Want to learn more?

Check out the User Services Center to read more about parallel processing with FLUENT. You can also refer to the User Documentation CD, where a Parallel Processing Tutorial is provided to take you through the process in a step-by-step fashion. Call your local Fluent office with any questions you may have about using this exciting option at your site. Watch out, though. As you cycle through simulations at a faster pace, you may soon find your workload increasing as your colleagues approach you with more and more problems to solve!


Previous ArticleFluentNEWS Next Article