Quantcast
Channel: Intel® Many Integrated Core Architecture
Viewing all articles
Browse latest Browse all 1347

[Fortran] Regarding Implementation of fast-transcendentals on Xeon / Xeon Phi

$
0
0

Hello,

I have been experimenting with the following compiler flags / options.

1. fp-model [strict, source, fast=2,etc]

2. -fast-transcendentals

3.-fimf-precision=high/low/medium

I have been comparing the performance of Xeon vs Xeon Phi for my application using various combinations of these flags. I obtained the best performance with fast=2, on both the Xeon and the Xeon Phi. But what I noticed was that performance improvement for Xeon Phi for -fp-model fast=2 over fp-model strict was far greater than the improvement for Xeon (Owing to FMA, in addition to other optimizations). Even with these flags, the Xeon Phi is barely keeping up with the Xeon (computation time alone). 

My application's hotspot contains a lot of pow (**) and log(base 10 and base e), and doesn't contain any other transcendentals as far as I can see. This hotspot is not vectorizable, but is compute intensive due to the power and log functions.

I am interested in knowing how these two functions are implemented (mathematical details like series expansion, etc), and how the implementation varies with precision (high, medium, low). 

The reason I ask for the above information is because I am interested in implementing a more "crude" form of pow and log, to see if I can further improve performance for Xeon Phi, while keeping an eye on correctness. Please note that both the base and the exponent are real numbers (not integers)

Compiler Used: 2015 Intel Fortran Compiler

Regards,

Srinivasan Ramesh


Viewing all articles
Browse latest Browse all 1347

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>