<div style="line-height:1.7;color:#000000;font-size:14px;font-family:arial"><div><br><br>At 2015-03-11 00:36:45,"Steve Borho" <steve@borho.org> wrote:<br>>On Tue, Mar 10, 2015 at 11:34 AM, dave <dtyx265@gmail.com> wrote:<br>>> On 03/10/2015 08:56 AM, Steve Borho wrote:<br>>>><br>>>> On 03/10, dave wrote:<br>>>>><br>>>>> On 03/09/2015 11:40 PM, Steve Borho wrote:<br>>>><br>>>> <snip><br>>>>>><br>>>>>> No, but the command line option --cu-stats does show how much it is<br>>>>>> called (but not how long it took)<br>>>>>><br>>>>> This produces some interesting numbers.<br>>>>><br>>>>> Without using registers for constants<br>>>>><br>>>>> x265 [info]: I32: Intra 100%(DC 0% P 40% Ang 58%)<br>>>>><br>>>>> encoded 2000 frames in 95.98s (20.84 fps), 1020.04 kb/s<br>>>>><br>>>>> With using registers for constants<br>>>>><br>>>>> x265 [info]: I32: Intra 99%(DC 39% P 16% Ang 43%)<br>>>>><br>>>>> encoded 2000 frames in 93.10s (21.48 fps), 1008.63 kb/s<br>>>>><br>>>>> I just added --cu-stats to the same command options that I used<br>>>>> previously and I ran it several times and got exactly the same<br>>>>> percentages.  Times varied by less than a second for each build.  So<br>>>>> how can simple register usage in one primitive affect intra pred<br>>>>> decisions?<br>>>><br>>>> it shouldn't, the behavior must be wrong in one of the cases. no change<br>>>> in performance should be able to impact the encoder output (or any<br>>>> coding decisions)<br>>>><br>>> So execution time isn't directly measured for decision making?<br>>><br>>> The output is also different.<br>>><br>>> ls -l bridge-close*<br>>> -rw-r--r-- 1 shakezula shakezula 8432204 Mar 10 09:25 bridge-close1.y4m<br>>> -rw-r--r-- 1 shakezula shakezula 8527219 Mar 10 07:49 bridge-close.y4m<br>>><br>>>  bridge-close1.y4m was generated without the use of registers to hold<br>>> constants.<br>><br>>yeah, definitely a bug in one of the two versions and if the testbench<br>>doesn't catch it that's really bad.<br>><br>We need disable assembly to confirm and try to find which function made the bug</div>
<div> </div></div>