Function Atan2

The Atan2 function computes an angle between the X axis and the line from the origin to the point X+iY, where the abscissa X=b and the ordinate Y=b are vector elements.

Performance:

 

Default processor

Pentium® III processor

Pentium® 4 processor

Itanium® processor

vsAtan2 (HA version)

85.6

86.1

57.3

12.4

vdAtan2 (HA version)

139.7

139.8

139.7

19.8

Notes:
1) Units - CPE (Clocks per Element)
2) Performance was measured on "working" interval (double precision: [-10000,10000], [-10000,10000]; single precision: [-10000,10000], [-10000,10000])
3) Data - vectors of 1000 elements with random generated numbers
4) "Default" means X87 code for all IA-32 processors
5) Performance of "default" version was measured on Pentium® III processor

 
Notes:
1) *        X87 code for all processors
2) **      Pentium® III processor
3) ***    Pentium® 4 processor
4) **** Itanium® processor
5) Logarithmic scale is used for "Vectors Size" axis

Maximal observed error for the whole function domain:

 

Default processor

Pentium® III processor

Pentium® 4 processor

Itanium® processor

vsAtan2 (HA version)

0.75

0.95

0.78

0.50

vdAtan2 (HA version)

0.58

0.58

0.78

0.50

Notes:
1) Units - ULP (Units in The Last Place)

Special values:

Function

Input Argument

Result

Default processor

Pentium® III processor

Pentium® 4 processor

Itanium® processor

vsAtan2/vdAtan2

(HA version)

x= -Inf, y=-Inf

-3*PI/4

+

+

+

+

x= -Inf, y pos. finite

-PI/2

+

+

+

+

x=-Inf, y=0

-PI/2

+

+

+

+

x=-Inf, y=+Inf

-PI/4

+

+

+

+

x=-Inf, y pos.finite

-PI/2

+

+

+

+

x=-Inf, y=NaN

NaN

+

+

+

+

x neg. finite, y= -Inf

PI

+

+

+

+

x neg. finite, y= 0

PI/2

+

+

+

+

x neg. finite, y= +Inf

0

+

+

+

+

x neg. finite, y= NaN

NaN

+

+

+

+

Intel, Pentium, Pentium III, Pentium 4, and Itanium are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries.

Copyright © 2000-2002, Intel Corporation, All Rights Reserved.