Yes every time you replace primitive call you are at the mercy of jit to inline the method. Choose primitive wherever possible to reduce variability On Apr 22, 2013 7:15 AM, "Dan Filimon" <[email protected]> wrote:
> Thanks! > > So, I'm running more benchmark and it's a mixed bag. There are regressions > and gains, but what surprises me the most is that after replacing every > "primitive" call with calls to assign/aggregate, the clustering behaves > much worse. > > As in, dozens (literally) of times worse. I'm surprised it's so bad, yet > doesn't show in the benchmarks. > Any ideas why this might be, or what I should look into? > > > On Sat, Apr 20, 2013 at 9:14 PM, Robin Anil <[email protected]> wrote: > >> >> https://docs.google.com/spreadsheet/ccc?key=0AhewTD_ZgznddGFQbWJCQTZXSnFULUYzdURfWDRJQlE#gid=2 >> >> Here you go. There are some regressions and some improvements. One of the >> major reasons I think is replacing inline math with foo.apply(). JVM might >> not have optimized it yet. You might be better off but just adding an >> AggregateBenchmark and working on it for your functions before replacing >> entire AbstractVector methods. >> > >
