Request for reviews (S): 7035946: Up to 15% regression on JDK 7 b136 vs b135 on specjvm2008.crypto.rsa on x64 (original) (raw)
Vladimir Kozlov vladimir.kozlov at oracle.com
Fri Sep 9 09:54:24 PDT 2011
- Previous message: hg: hsx/hotspot-comp/hotspot: 7087453: PhaseChaitin::yank_if_dead() should handle MachTemp inputs
- Next message: Request for reviews (S): 7035946: Up to 15% regression on JDK 7 b136 vs b135 on specjvm2008.crypto.rsa on x64
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
http://cr.openjdk.java.net/~kvn/7035946/webrev
7035946: Up to 15% regression on JDK 7 b136 vs b135 on specjvm2008.crypto.rsa on x64
It is almost exact anti-delta of my changes in 7008866. I kept replace_parallel_iv() as separate method and added new TraceLoopOpts output.
I traced down the most of regression to my changes for "replace parallel induction variables" optimization in 7008866 fix. I replaced new nodes IGVN registration with immediate Ideal transformation. As result Split_If optimization reversed it back by doing spit through Phi and it prevents loop predicates (which follow Split_If) execute RCE. If local transformation in replace_parallel_iv() is not executed the created new code matches RCE shape: ivratio+(init2-initratio) where (init2-init*ratio) is loop invariant. And Split_If optimization does not execute spit through Phi for AddI nodes in Counted loops. Yes, a lot of hidden dependences.
An other part of regression came from always creation of new loop iteration Phi node. I was not able to find why it has regression affect. I returned code back to keep original Phi.
I do not see affect on refworkload benchmark after this fix.
Thanks, Vladimir
- Previous message: hg: hsx/hotspot-comp/hotspot: 7087453: PhaseChaitin::yank_if_dead() should handle MachTemp inputs
- Next message: Request for reviews (S): 7035946: Up to 15% regression on JDK 7 b136 vs b135 on specjvm2008.crypto.rsa on x64
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the hotspot-compiler-dev mailing list