Daniele Cono D'Elia edited experim.tex  over 8 years ago

Commit id: cfb5316a28d5083d83ceed9ea3e0c07d3357bbcd

deletions | additions      

       

Table~\ref{tab:sameFun} reports for each benchmark an estimate of the average cost of performing an OSR transition to a function identical to the running one. For each benchmark we compute the difference in terms of total CPU time when an always-firing or a never-firing OSR point is inserted in the code, respectively; we then normalize this difference against the number of fired OSR transitions.  Hot code portions for OSR point insertion are picked as in the experiments for code quality. However, as our goal for hot loops is to perform an OSR transition at each iteration, inserting an always-firing OSR point in the enclosing function is not an option, because the function we OSR into should then fire an OSR itself, leading eventually to a very large number of active stack frames. Depending on [...] the characteristics of the hot loop, we can either transform it into a separate function and instrument its entrypoint, or if the loop repeatedly calls a method with high total self time, we insert an OSR point at the beginning of such method.  \begin{table*}   \begin{center}