<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Performance issue in Intel® Fortran Compiler</title>
    <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770509#M22356</link>
    <description>mecej4,&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;I've already made a "reproducer" program which has been posted above. Does it show the problem you were looking for?&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;Franois&lt;/DIV&gt;</description>
    <pubDate>Wed, 30 May 2012 21:53:03 GMT</pubDate>
    <dc:creator>velvia</dc:creator>
    <dc:date>2012-05-30T21:53:03Z</dc:date>
    <item>
      <title>Performance issue</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770492#M22339</link>
      <description>&lt;P&gt;Hi,&lt;BR /&gt;&lt;BR /&gt;I have a problem with the Intel Fortran compilers giving different performance at one point of my program depending on the version of the compiler used. With the version composer_xe_2011_sp1.9.293, I get a hot spot (It spends 20s) at this line:&lt;BR /&gt;&lt;BR /&gt;pw = theCellState%pw(vk)&lt;BR /&gt;&lt;BR /&gt;where theCellState is an object, pw a method on that object (which is pure), and whose code is:&lt;BR /&gt;&lt;BR /&gt;pure function pw(this,i)&lt;BR /&gt; class(cellStateArray), intent(in) :: this &lt;BR /&gt; integer, intent(in) :: i &lt;BR /&gt; real(fp) :: pw &lt;BR /&gt; &lt;BR /&gt; pw = this%pw_(i) &lt;BR /&gt;end function pw &lt;BR /&gt;&lt;BR /&gt;where this%pw_ is an array, member of the object.&lt;BR /&gt;&lt;BR /&gt;If you look at the assembly code (generated by composer_xe_2011_sp1.9.293) for this line, I get:&lt;BR /&gt;&lt;BR /&gt;mov %rdx, %rsi&lt;BR /&gt;movq %r8, 0x3463b6(%rip)&lt;BR /&gt;movq %rdi, 0x3463b7(%rip)&lt;BR /&gt;...&lt;BR /&gt;and more than 100 lines or movq !&lt;BR /&gt;&lt;BR /&gt;If I compile the program with composer_xe_2011_sp1.7.256 or composer_xe_2011_sp1.6.233, the time spent at this line comes back to 0.036s, and the assembly code is just&lt;BR /&gt;&lt;BR /&gt;movq 0x3a0(%rsi), %r15&lt;BR /&gt;shl $0x3, %r15&lt;BR /&gt;neg %r15&lt;BR /&gt;addq 0x360(%rsi), %r15&lt;BR /&gt;movq %r12, 0x68(%rsp)&lt;BR /&gt;&lt;BR /&gt;Do you have any idea where the problem comes from ?&lt;BR /&gt;&lt;BR /&gt;Best regards,&lt;BR /&gt;Francois&lt;/P&gt;</description>
      <pubDate>Thu, 17 May 2012 21:19:07 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770492#M22339</guid>
      <dc:creator>velvia</dc:creator>
      <dc:date>2012-05-17T21:19:07Z</dc:date>
    </item>
    <item>
      <title>Performance issue</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770493#M22340</link>
      <description>Francois,&lt;BR /&gt;&lt;BR /&gt;I suspect in one case (slow case) you are in Debug build and you have array bounds checking enabled.&lt;BR /&gt;And in the other case you do not have array bounds checking enabled. (and/or function is inlined).&lt;BR /&gt;&lt;BR /&gt;Jim Dempsey</description>
      <pubDate>Thu, 17 May 2012 21:29:55 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770493#M22340</guid>
      <dc:creator>jimdempseyatthecove</dc:creator>
      <dc:date>2012-05-17T21:29:55Z</dc:date>
    </item>
    <item>
      <title>Performance issue</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770494#M22341</link>
      <description>Jim,&lt;BR /&gt;&lt;BR /&gt;Both cases are compiled with the same Makefile and the same options:&lt;BR /&gt;-O3 -ipo -no-prec-div -xHost -assume realloc_lhs -g -opt-report&lt;BR /&gt;So I don't think the problem is about compilation options, including bound checking.&lt;BR /&gt;&lt;BR /&gt;Concerning inlining, as suggested, I've asked reports to the compiler for both versions, and I get the same conclusion from the intel compiler in both cases. So it seems that everything is inlined in both cases.&lt;BR /&gt;&lt;BR /&gt;What I found interesting is that I have made the following change:&lt;BR /&gt;*****&lt;BR /&gt;- Changed the member pw_ from private to public&lt;BR /&gt;- I have changed the line&lt;BR /&gt; pw = theCellState%pw(vk)&lt;BR /&gt; to the line&lt;BR /&gt; pw = theCellState%pw_(vk)&lt;BR /&gt;*****&lt;BR /&gt;And the hotspot dissapear from this line (and goes to the next getter,
 and as always only the next one, not the following ones).&lt;BR /&gt;So there is really something about accessing the value of a member through a getter. But is does not seems to be an inlining problem.&lt;BR /&gt;&lt;BR /&gt;Maybe I can post the full assembly code for this line. Would it be helpful?&lt;BR /&gt;&lt;BR /&gt;Very strange.&lt;BR /&gt;Francois&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Fri, 18 May 2012 13:38:35 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770494#M22341</guid>
      <dc:creator>velvia</dc:creator>
      <dc:date>2012-05-18T13:38:35Z</dc:date>
    </item>
    <item>
      <title>Performance issue</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770495#M22342</link>
      <description>Here is the assembly for the code compiled with 12.1.3 (The version that run slower than the other ones).&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;It is amazing that one line of code, that calls a function that is just a getter and that seems to be inlined according to -opt-report, can generate 440 lines of assembly code!&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Fri, 18 May 2012 14:53:12 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770495#M22342</guid>
      <dc:creator>velvia</dc:creator>
      <dc:date>2012-05-18T14:53:12Z</dc:date>
    </item>
    <item>
      <title>Performance issue</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770496#M22343</link>
      <description>The code is not inlined.... it is trashed.&lt;BR /&gt;&lt;BR /&gt;Either the compiler generated bad code.....&lt;BR /&gt;Or your program overwrote the code.&lt;BR /&gt;&lt;BR /&gt;Place a break point on the first instruction in PROGRAM&lt;BR /&gt;&lt;BR /&gt;Open up Dissassembly window and examine&lt;BR /&gt;&lt;BR /&gt;0x4cb578 (use Ctrl-G in Dissassembly window)&lt;BR /&gt;*** this assumes code still at 0x4cb578 as listed in the dump you sent&lt;BR /&gt;*** if not, find new current location, then restart with break at start of program and examine code&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;If the code is as what was listed (excepting for offsets on jle 0x......) then compiler error. Report to Intel.&lt;BR /&gt;&lt;BR /&gt;If code looks like proper code for inlined or outlined code of your function, then your program is overwriting your program. To find out where, set a data change break point in one of the locations that gets modified (set data break and enter hex address).&lt;BR /&gt;&lt;BR /&gt;Note, in optimized code, figuring out line numbers takes a little bit of detective work.&lt;BR /&gt;&lt;BR /&gt;Jim Dempsey&lt;BR /&gt;</description>
      <pubDate>Fri, 18 May 2012 16:52:35 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770496#M22343</guid>
      <dc:creator>jimdempseyatthecove</dc:creator>
      <dc:date>2012-05-18T16:52:35Z</dc:date>
    </item>
    <item>
      <title>Performance issue</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770497#M22344</link>
      <description>Hi Jim,&lt;BR /&gt;&lt;BR /&gt;Thank you very much for the help. I am very novice in assembly code, but here is what I did.&lt;BR /&gt;&lt;BR /&gt;- I first ran vTune amplifier on the code generated by ifort 12.1.3 (the one giving slower code). Then I've looked at the strange hotspot and it's corresponding assembly code (It is at a different line than before as I have changed these getters into a direct access to the members):&lt;BR /&gt; rhoKrMu = theCellState%rhow(vk)&lt;BR /&gt; xor %r8d, %r8d&lt;BR /&gt; mov $0x570070, %r14d&lt;BR /&gt; movq %rax, 0x3454b25%(rip)&lt;BR /&gt; ... and then about 400 lines of movq instructions.&lt;BR /&gt; The first line of assembly code is at address 0x4cb596&lt;BR /&gt;&lt;BR /&gt;- Then, I ran idb and I set up a break point at the first line of my code. I run the code that stops at my break point. I then go to View-Assembler, and I set the starting line to be 0x4cb596. Here are the lines I get:&lt;BR /&gt; xor r8d, r8d&lt;BR /&gt; mov r14d, 0x570070&lt;BR /&gt; mov qword ptr {rip+0x3454b2}, rax&lt;BR /&gt; mov qword ptr {rip+0x3454b3}, rdx&lt;BR /&gt; .... and many lines (at least all the following 40 lines) beginning with move qword ptr.&lt;BR /&gt;&lt;BR /&gt;If I undestand you well, it seems to be bug of the compiler.&lt;BR /&gt;&lt;BR /&gt;What can I do so that Intel can fix it? The problem appears on Mac OS X and Linux (I don't have Windows). And it also appears in 12.1.4 and 13.0.0 released today.&lt;BR /&gt;&lt;BR /&gt;Francois&lt;BR /&gt;</description>
      <pubDate>Fri, 18 May 2012 21:23:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770497#M22344</guid>
      <dc:creator>velvia</dc:creator>
      <dc:date>2012-05-18T21:23:00Z</dc:date>
    </item>
    <item>
      <title>Performance issue</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770498#M22345</link>
      <description>I made some tests on Mac OS X. And it seems to appear in 12.1.3:&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;The problem is not there on versions 12.1.0, 12.1.2 and it is there on versions 12.1.3, 12.1.4 and 13.0.0 (the one published today).&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;Francois&lt;/DIV&gt;</description>
      <pubDate>Fri, 18 May 2012 22:27:33 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770498#M22345</guid>
      <dc:creator>velvia</dc:creator>
      <dc:date>2012-05-18T22:27:33Z</dc:date>
    </item>
    <item>
      <title>Performance issue</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770499#M22346</link>
      <description>Francois,&lt;BR /&gt;&lt;BR /&gt;If you can make a simplified reproducer that would help.&lt;BR /&gt;Submit it together with information about your compiler version, OS, CPU, anything else to help Intel (or others) to replicate your problem.&lt;BR /&gt;&lt;BR /&gt;Also, for this forum, can you post cellStateArray?&lt;BR /&gt;&lt;BR /&gt;Jim Dempsey</description>
      <pubDate>Sat, 19 May 2012 02:15:14 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770499#M22346</guid>
      <dc:creator>jimdempseyatthecove</dc:creator>
      <dc:date>2012-05-19T02:15:14Z</dc:date>
    </item>
    <item>
      <title>Performance issue</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770500#M22347</link>
      <description>I forgot to ask:&lt;BR /&gt;&lt;BR /&gt;When using the compiler version that produces the error, what happens when you depreciate the optimization levels?&lt;BR /&gt;&lt;BR /&gt;Also with/withou IPO (Inter-Procedural Optimization).&lt;BR /&gt;&lt;BR /&gt;Jim Dempsey</description>
      <pubDate>Sat, 19 May 2012 02:18:16 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770500#M22347</guid>
      <dc:creator>jimdempseyatthecove</dc:creator>
      <dc:date>2012-05-19T02:18:16Z</dc:date>
    </item>
    <item>
      <title>Performance issue</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770501#M22348</link>
      <description>Hi Jim,&lt;BR /&gt;&lt;BR /&gt;I made some progress:&lt;BR /&gt;- The problem is there wether or not IPO is there, and with optimization -O2 and -O3.&lt;BR /&gt;- I have realized that the problem is always with the first call to a method of theCellState that appears in the source code. As in my code, the first call is inside a loop, I get better performance if I first call a method outside of the loop for nothing.&lt;BR /&gt;&lt;BR /&gt;Otherwise, I can't get a small case yet. This problem is very tricky to hunt.&lt;BR /&gt;&lt;BR /&gt;By the way, what do you mean when you say "The code is trashed" ?&lt;BR /&gt;&lt;BR /&gt;Francois</description>
      <pubDate>Sat, 19 May 2012 06:01:32 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770501#M22348</guid>
      <dc:creator>velvia</dc:creator>
      <dc:date>2012-05-19T06:01:32Z</dc:date>
    </item>
    <item>
      <title>Performance issue</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770502#M22349</link>
      <description>&amp;gt;&amp;gt;I have realized that the problem is always with the first call to a 
method of theCellState that appears in the source code. As in my code, 
the first call is inside a loop, I get better performance if I first 
call a method outside of the loop for nothing.&lt;BR /&gt;&lt;BR /&gt;Does your class have initialization code?&lt;BR /&gt;Is the object a dummy arg (subroutine arg) or local to subroutine/function?&lt;BR /&gt;&lt;BR /&gt;&amp;gt;&amp;gt;By the way, what do you mean when you say "The code is trashed" ?&lt;BR /&gt;&lt;BR /&gt;ArrayA = something&lt;BR /&gt;&lt;BR /&gt;Where the array descriptor of ArrayA is not initialized or is no longer valid.&lt;BR /&gt;This often occurs in multi-threaded applications where the threads are not properly coordinated with respect to the lifetime of the array descriptor.&lt;BR /&gt;&lt;BR /&gt;This can trash code or data or unused memory or Sef Fault&lt;BR /&gt;&lt;BR /&gt;Array(indexOutOfBounds) = something&lt;BR /&gt;&lt;BR /&gt;! recursive or OpenMP or option in effect&lt;BR /&gt;! to place subroutine scoped array on stack&lt;BR /&gt;subroutine foo(...)&lt;BR /&gt;someType :: Array(N)&lt;BR /&gt;someOtherType, pointer :: p&lt;BR /&gt;...&lt;BR /&gt;p =&amp;gt; somewhereValid&lt;BR /&gt;Array(N+1) = something ! trashes pointer p&lt;BR /&gt;p = something ! memory trashed&lt;BR /&gt;&lt;BR /&gt;There are many other situations. The Debug runtime checks for uninitialized variables used before initialization and subscripts out of bounds checks catch most of the coding errors but not all such errors.&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Sat, 19 May 2012 11:50:15 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770502#M22349</guid>
      <dc:creator>jimdempseyatthecove</dc:creator>
      <dc:date>2012-05-19T11:50:15Z</dc:date>
    </item>
    <item>
      <title>Performance issue</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770503#M22350</link>
      <description>I finally got it.&lt;BR /&gt;&lt;BR /&gt;Here is a simple case where the problem shows up.&lt;BR /&gt;&lt;BR /&gt;[fortran]program main
    use cellStateArray_module, only : cellStateArray
    implicit none

    type(cellStateArray), allocatable :: myCellState
    real(8), allocatable, dimension(:) :: myPw
    real(8) :: total
    integer :: n, k

    n = 50000

    allocate(myPw(1:n))
    myPw = 1.0

    allocate(myCellState)
    call myCellState%init(pw = myPw)

    total = 0.0
    do k = 1, 10000000
        total = total + essai(myCellState)
    end do
    write (*,*) total
contains
    pure function essai(theCellStateArray)
        type(cellStateArray), intent(in) :: theCellStateArray
        real(8) :: essai

        essai = theCellStateArray%pw(1)
    end function essai
end program main[/fortran] with the following module&lt;BR /&gt;&lt;BR /&gt;[fortran]module cellStateArray_module
    implicit none
    private

    type, public :: cellStateArray
        private
        real(8), allocatable, dimension(:) :: pw_
        !real(8), allocatable, dimension(:) :: a_
        !real(8), allocatable, dimension(:) :: b_
        !real(8), allocatable, dimension(:) :: c_
        !real(8), allocatable, dimension(:) :: d_
        !real(8), allocatable, dimension(:) :: e_
        !real(8), allocatable, dimension(:) :: f_
        !real(8), allocatable, dimension(:) :: g_
        !real(8), allocatable, dimension(:) :: h_
        !real(8), allocatable, dimension(:) :: i_
        !real(8), allocatable, dimension(:) :: j_
        !real(8), allocatable, dimension(:) :: k_
        !real(8), allocatable, dimension(:) :: l_
        !real(8), allocatable, dimension(:) :: m_
        !real(8), allocatable, dimension(:) :: n_
        !real(8), allocatable, dimension(:) :: o_
        !real(8), allocatable, dimension(:) :: p_
        !real(8), allocatable, dimension(:) :: q_
        !real(8), allocatable, dimension(:) :: r_
        !real(8), allocatable, dimension(:) :: s_
        !real(8), allocatable, dimension(:) :: t_
        !real(8), allocatable, dimension(:) :: u_
        !real(8), allocatable, dimension(:) :: v_
        !real(8), allocatable, dimension(:) :: w_
        !real(8), allocatable, dimension(:) :: x_
        !real(8), allocatable, dimension(:) :: y_
        !real(8), allocatable, dimension(:) :: z_
    contains
        private
        procedure, public :: init
        ! Getters
        procedure, public :: pw
    end type cellStateArray
contains
    subroutine init(this, pw)
        class(cellStateArray), intent(inout) :: this
        real(8), allocatable, dimension(:), intent(in) :: pw

        allocate(this%pw_(1:size(pw)))
        this%pw_ = pw
    end subroutine init

    pure function pw(this, i)
        class(cellStateArray), intent(in) :: this
        integer, intent(in) :: i
        real(8) :: pw

        pw = this%pw_(i)
    end function pw
end module cellStateArray_module[/fortran] &lt;BR /&gt;This program runs fine with ifort 12.1.3 and ifort 12.1.2. But as soon as you uncomment the members a_,..., z_, the size of the code generared by 12.1.3 (and versions above) for the code essai = theCellStateArray%pw(1) gets huge (It seems to be proportional to the number of members of the class cellStateArray) and the run time is multiplied by 10. Whereas with ifort 12.1.2, everything runs at the same speed.&lt;BR /&gt;&lt;BR /&gt;I found this problem on Linux and Mac OS X.&lt;BR /&gt;&lt;BR /&gt;Francois&lt;BR /&gt;</description>
      <pubDate>Sat, 19 May 2012 15:49:26 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770503#M22350</guid>
      <dc:creator>velvia</dc:creator>
      <dc:date>2012-05-19T15:49:26Z</dc:date>
    </item>
    <item>
      <title>Performance issue</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770504#M22351</link>
      <description>Hello,&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;Is anyone at Intel able to reproduce this problem?&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;Best regards,&lt;/DIV&gt;&lt;DIV&gt;Franois&lt;/DIV&gt;</description>
      <pubDate>Mon, 21 May 2012 16:47:55 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770504#M22351</guid>
      <dc:creator>velvia</dc:creator>
      <dc:date>2012-05-21T16:47:55Z</dc:date>
    </item>
    <item>
      <title>Performance issue</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770505#M22352</link>
      <description>Hello,&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;I am sorry to insist but I have spent 2 days of work in order to provide a simple test case. This issue is a major problem in terms of performance for our code.&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;Therefore, I would be very disapointed if the Intel team does not react to this post.&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;Franois&lt;/DIV&gt;</description>
      <pubDate>Thu, 24 May 2012 04:35:16 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770505#M22352</guid>
      <dc:creator>velvia</dc:creator>
      <dc:date>2012-05-24T04:35:16Z</dc:date>
    </item>
    <item>
      <title>Performance issue</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770506#M22353</link>
      <description>Hello Francois,&lt;BR /&gt;&lt;BR /&gt;Thank you for the small test case. I was able to reproduce the issue and have escalated it to the developers. The issue number is DPD200232355. I will keep you informed of any updates I receive on this issue. &lt;BR /&gt;&lt;BR /&gt;Regards,&lt;BR /&gt;Annalee&lt;BR /&gt;Intel Developer Support</description>
      <pubDate>Thu, 24 May 2012 23:34:03 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770506#M22353</guid>
      <dc:creator>Anonymous66</dc:creator>
      <dc:date>2012-05-24T23:34:03Z</dc:date>
    </item>
    <item>
      <title>Performance issue</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770507#M22354</link>
      <description>Hello Annalee,&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;Thanks for taking care of that.&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;Best regards,&lt;/DIV&gt;&lt;DIV&gt;Franois Fayard&lt;/DIV&gt;</description>
      <pubDate>Thu, 24 May 2012 23:53:56 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770507#M22354</guid>
      <dc:creator>velvia</dc:creator>
      <dc:date>2012-05-24T23:53:56Z</dc:date>
    </item>
    <item>
      <title>Performance issue</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770508#M22355</link>
      <description>Apart from all the points covered by Jim's and your posts in this thread, I notice something very suspicious in the lines&lt;BR /&gt;&lt;BR /&gt; movq %r8, 0x3463b6(%rip)&lt;BR /&gt; movq %rdi, 0x3463b7(%rip)&lt;BR /&gt;&lt;BR /&gt;Each instruction is writing eight bytes of memory. However, the second of these two instructions is overwriting the the last seven bytes written by the first instruction. &lt;BR /&gt;&lt;BR /&gt;This is rather unusual. I would have expected the target addresses to differ by at least the register size, namely, eight bytes -- had the second address been 0x3463be(%rip), that would have been more reasonable.&lt;BR /&gt;&lt;BR /&gt;Please consider making up a small "reproducer" test program.&lt;BR /&gt;</description>
      <pubDate>Fri, 25 May 2012 08:15:32 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770508#M22355</guid>
      <dc:creator>mecej4</dc:creator>
      <dc:date>2012-05-25T08:15:32Z</dc:date>
    </item>
    <item>
      <title>Performance issue</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770509#M22356</link>
      <description>mecej4,&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;I've already made a "reproducer" program which has been posted above. Does it show the problem you were looking for?&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;Franois&lt;/DIV&gt;</description>
      <pubDate>Wed, 30 May 2012 21:53:03 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770509#M22356</guid>
      <dc:creator>velvia</dc:creator>
      <dc:date>2012-05-30T21:53:03Z</dc:date>
    </item>
    <item>
      <title>Performance issue</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770510#M22357</link>
      <description>Thanks, I can see the main problem (numerous moves between registers and memory, for all the members of cellStateArray, whether needed or not). &lt;BR /&gt;&lt;BR /&gt;At present, I am running Windows 7, and on this platform the compiler does not produce any instructions that contain instruction-pointer relative memory references (%rip+...).&lt;BR /&gt;</description>
      <pubDate>Thu, 31 May 2012 13:47:01 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770510#M22357</guid>
      <dc:creator>mecej4</dc:creator>
      <dc:date>2012-05-31T13:47:01Z</dc:date>
    </item>
    <item>
      <title>Performance issue</title>
      <link>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770511#M22358</link>
      <description>Hello Franois,&lt;BR /&gt;&lt;BR /&gt;The developers have informed me that the performance regression is the result of an important bug fix. They may look into improving the performance in the future, but the changes that resulted in this performance regression will not be undone.&lt;BR /&gt;&lt;BR /&gt;Regards,&lt;BR /&gt;Annalee&lt;BR /&gt;Intel Developer Support</description>
      <pubDate>Wed, 06 Jun 2012 14:53:31 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Fortran-Compiler/Performance-issue/m-p/770511#M22358</guid>
      <dc:creator>Anonymous66</dc:creator>
      <dc:date>2012-06-06T14:53:31Z</dc:date>
    </item>
  </channel>
</rss>

