You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Vyacheslav Shakin (JIRA)" <ji...@apache.org> on 2006/12/28 13:38:28 UTC

[jira] Commented: (HARMONY-2816) [drlvm][jit] Jitrino operand priority calculation in bin pack register allocator

    [ http://issues.apache.org/jira/browse/HARMONY-2816?page=comments#action_12461181 ] 
            
Vyacheslav Shakin commented on HARMONY-2816:
--------------------------------------------

I reviewed the patch and found it simple and correct, thanks a lot. The truncation often caused rather strange prioritization of operands leading to inefficient register allocation, especially with the static profile estimator. 

> [drlvm][jit] Jitrino operand priority calculation in bin pack register allocator
> --------------------------------------------------------------------------------
>
>                 Key: HARMONY-2816
>                 URL: http://issues.apache.org/jira/browse/HARMONY-2816
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>            Reporter: Ivashin Sergey
>         Attachments: H-2816.patch
>
>
> Calculation of operand's priority for register assignment is based on execution counters and register pressures for all blocks where the operand is used. Block execution counter is a float (double) value, but currently result of this calculation is truncated to integer value. This truncation causes (1) errors in estimating priorities of operands and (2) different allocation results for different compilers used (run-time routines from ICL and MSVC produce different floating point results).
> Using floating point values for operand priorities (weight calculation) significantly reduce numeric instability and help reproduce allocation results for different compilers. It should not have a negative impact on performance, because double to integer truncation is removed.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira