You are on page 1of 8

COMPUTATIONAL FLUID DYNAMICS

Document Identifier : Flops - Parallel Computing Using MATLAB


Student : Huynh Van Tinh
Student Number : 20205079
School of : Mechanical and Automotive Engineering
Description : HW#1
Date (dd / mm / yyyy) : 19 / 03 / 2020
COMPUTATIONAL FLUID DYNAMICS - HW#1

1. FLOPS
1.1 What is FLOPS?
Floating-point Operations Per Second (FLOPS) is a measure of computer
performance, performance of supercomputer, useful in fields of scientific
computations that require floating-point calculations. For such cases it is a more
accurate measure than Measuring Instructions Per Second (MIPS).
FLOPS value is used in computers to describe its performance. It indicates
the number of operations with floating point numbers which a computer an
produce per second. The higher the value, the more productive the computer. It is
determined experimentally for every computer, usually by running a test program
that produces a certain number of calculations. It also measures the time it takes
for the computer to carry out them. Another advantage of FLOPS characteristics is
that it can be calculated theoretically, for example, for computers that are being
designed and do not exist at the moment, while other performance characteristics
are relative and are evaluated in comparison with other computer settings.
However, the magnitude can be affected by the general memory
performance, communication channels bandwidth in the processor environment
as well as other factors.
1.2 Where is it used?
- Scientific calculations accuracy (FLOPS better than IPS).
- Integers: fixed-point numbers; real numbers: floating-point numbers.
1.3 Prefixes for representing orders of magnitude

Prefix Abbreviation Order of magnitude Computer performance


giga- G 109 gigaFLOPS (GFLOPS)
12
tera- T 10 teraFLOPS (TFLOPS)
peta- P 1015 petaFLOPS (PFLOPS)
18
exa- E 10 exaFLOPS (EFLOPS)
zetta- Z 1021 zettaFLOPS (ZFLOPS)
24
yotta- Y 10 yottaFLOPS (YFLOPS)

© hvtinh97@gmail.com 1
COMPUTATIONAL FLUID DYNAMICS - HW#1

2. CHECK THE SPECIFICATION OF PC


 Processor: Intel(R) Core(TM) i5-5250U CPU @ 1.60GHz, 1601 Mhz, 2
Core(s), 4 Logical Processor(s).
 Adapter description: NVIDIA GeForce 820M.
 Motherboard:
 Manufacturer: Dell Inc.
 Product: OMNXTG
 Serial number: /H3Z4262/CN1296359J00ED/
 Version: A00
 RAM: 4.00 GB

© hvtinh97@gmail.com 2
COMPUTATIONAL FLUID DYNAMICS - HW#1

3. PARALLEL COMPUTING USING MATLAB


Traditionally, software has been written for serial computation:
 To be run on a single computer having a single Central Processing Unit
(CPU).
 A problem is broken into a discrete series of instructions.
 Instructions are executed one after another.
 Only one instruction may execute at any moment in time.
Parallel computing is the simultaneous use of multiple compute resources to solve
a computational problem:
 To be run using multiple CPUs.
 A problem is broken into discrete parts that can be solved concurrently.
 Each part is further broken down to a series of instructions.
 Instructions from each part execute simultaneously on different CPUs or
core [2].
3.1 Setting up
Go to Home  Parallel  Manager Cluster Profiles.
Select Local (Default) and click Validate.

Figure 1. Cluster Profile Manager


In the Command Window, run gpuDevice (show in figure 2).

© hvtinh97@gmail.com 3
COMPUTATIONAL FLUID DYNAMICS - HW#1

Figure 2. GpuDevice result display


3.2 Executing
Download code from MathWorks to review an example using Parallel
Computing Toolbox™. Figure 3 and figure 4 shown the CPU performance change
before and after running ex_compare.m

Figure 3. Before running

Figure 4. After running


3.3 Result
In theory, throwing more resources at a task will shorten its time to
completion, with potential cost savings. Parallel computers can be built from
cheap, commodity components.

© hvtinh97@gmail.com 4
COMPUTATIONAL FLUID DYNAMICS - HW#1

Serial processing time: 24,1209, but parallel processing time only: 19,4174.
It means that processing is x1,24 faster (big speed up with little effort).

Figure 5. Processing time


The result looks quite similar.

Figure 6. The result


3.4 Conclusions
Serial processing was the best way of computing data sets until hardware
and software technologies finally caught up and made true parallel processing a
reality, to improve performance. Parallel Computing Toolbox™ helps take
advantage of multicore computers and GPUs:
- Speed up algorithms. With long running and computationally intensive, there is
larger compute pool solution (more processors).
- Have datasets too big to fit on computer. With large data set, there is larger
memory pool solution (more machines).

© hvtinh97@gmail.com 5
COMPUTATIONAL FLUID DYNAMICS - HW#1

© hvtinh97@gmail.com 6
COMPUTATIONAL FLUID DYNAMICS - HW#1

BIBLIOGRAPHY
[1] Website: https://www.mathworks.com/videos/series/parallel-and-gpu-
computing -tutorials-97719.html
[2] Abhay B. Rathod, Rajratna Khadse and M Faruk Bagwan (2014). Serial
Computing vs Parallel Computing: a Comparative Study Using Matlab. In
International Journal of Computer Science and Mobile Computing, pp.815-820.

© hvtinh97@gmail.com 7

You might also like