Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.
28323 Discussions

Why I did NOT get our application improved in performance?



Hi, Intell technician,

I revised our application Fortran codes in terms of the instructions given in the following paper:

However, our Fortran application did not improve in performance. On the contrary, our Fortran application get worse performances.

For example, if I add !dir$ vector aligned before a do loop:

!dir$ vector aligned

do itt=1, jgm

hmat(itt,mdnorp)=cs(itt)  *  hmat(itt,mdnorp)-sn(itt)   * hmat(itt,mdnorp)

end do

Could you tell me what probably caused such a poor performance? Do you have some standard Fortran OpenMP programmes for public to confirm any works given in the above paper?

I look forward to hearing from you.


Best regards,








0 Kudos
1 Reply
Black Belt

For the example you show, vector aligned could improve performance only if you can guarantee alignment for all used values of mdnorp for example with a leading dimension of a multiple of 16 for 32 bit data.  If the loop is long enough to measure performance accurately, any gain from the directive may be negligible. 

0 Kudos