A floating-point unit (FPU) is that part of a computer’s processing unit that allows it to perform floating-point calculations. Floating-point numbers contain fractions or decimal points, such as 8.565 and 0.0158, and operations that include them are called “floating-point calculations.” These calculations could range from simple ones, such as addition and multiplication, to complicated processes, such as trigonometric and exponential calculations.
Computers in the early 1990s used to have a separate FPU to handle these types of calculations. However, starting with the Motorola 68000 and Intel Pentium series, computer manufacturers made FPUs a part of the microprocessor chip. Today, FPUs have become a standard addition to the central processing unit (CPU).
Read More about a “Floating-Point Unit”
When you open a computer game like, say, “Minecraft,” do you think about how the developers came up with its graphics? If you have, then one of the factors that enable developers to make high-resolution and detailed graphics is the FPU. Take a look at this four-second video that demonstrates the power of an FPU:
The video may not show much, but if you maximize it and set the playback speed to 0.25, you would see that the image projected on the screen is very detailed.
How Does a Floating-Point Unit Work?
FPUs handle mathematical operations related to floating-point numbers. So, when a CPU is instructed to calculate 125 x 16, the equation would be processed as an integer operation by the integer processing unit. However, if the CPU receives an instruction to calculate 5.051 x 11.0003, the request would be sent to the FPU.
Note that a CPU can handle floating-point calculations even without an integrated FPU. However, the process would be slower, as integer operations differ from floating-point calculations.
How Is Floating-Point Unit Performance Measured?
When shopping for computers, among the things we look at is clock speed, which measures the CPU performance. A good clock speed for a gaming computer, for instance, is 3.5–4.0 GHz.
FPU performance, on the other hand, is often measured by “gigaFLOPS.” One gigaFLOPS is equivalent to one billion floating-point operations per second (FLOPS). To give you some perspective, let’s take the IBM Sequoia supercomputer as an example.
Sequoia was among the fastest computers in the world with a speed of 20.13 petaFLOPS. One petaFLOPS is equal to one quadrillion FLOPS.
History of Floating-Point Units
Some engineering and scientific applications need to perform floating-point calculations, which regular computers could not handle before. These calculations are often done in mainframe computers, a type of computer specially designed for bulk data processing.
In later years, the need for floating-point operations pushed programmers to write the FPU instructions. Graphics designers and engineers would then need to install a separate computer chip to enable floating-point operations in their hardware. These days, an FPU is often integrated into any computer’s CPU.
However, having dedicated hardware for floating-point operations could be expensive. As such, FPU instructions can be emulated in the following ways:
- In the CPU as a microcode or microprogram
- As a function of an operating system (OS)
- In software
The need for floating-point operations has always been present even before the emergence of personal computers (PCs). After all, not all calculations involve whole numbers. At some point, people will need to calculate floating-point or decimal numbers. FPUs make these computations a lot easier.
Aside from giving designers and developers the ability to create three-dimensional (3D) graphics and high-resolution games, FPUs make complex science and engineering applications possible.