Floating-point modes and exceptions, Floating-point exceptions, Floating-point modes and exceptions -60 – Intel ARCHITECTURE IA-32 User Manual

Page 132: Floating-point exceptions -60

Advertising
background image

IA-32 Intel® Architecture Optimization

2-60

desired numeric precision, the size of the look-up tableland taking advantage
of the parallelism of the Streaming SIMD Extensions and the Streaming SIMD
Extensions 2 instructions.

Floating-point Modes and Exceptions

When working with floating-point numbers, high-speed
microprocessors frequently must deal with situations that need special
handling in hardware or code. The Pentium 4 processor is optimized to
handle the most common cases of such situations efficiently.

Floating-point Exceptions

The most frequent situation that can lead to performance degradation
involve masked floating-point exception conditions such as:

arithmetic overflow

arithmetic underflow

denormalized operand

Refer to Chapter 4 of the IA-32 Intel® Architecture Software
Developer’s Manual, Volume 1
for the definitio
n of overflow, underflow
and denormal exceptions.

Denormalized floating-point numbers impact performance in two ways:

directly: when they are used as operands

indirectly: when they are produced as a result of an underflow
situation

If a floating-point application never underflows, the denormals can only
come from floating-point constants.

User/Source Coding Rule 16. (H impact, ML generality) Denormalized
floating-point constants should be avoided as much as possible.

Denormal and arithmetic underflow exceptions can occur during the
execution of x87 instructions or SSE/SSE2/SSE3 instructions. The
Pentium 4 processor handles these exceptions more efficiently when

Advertising