[LLVMdev] Analysis of polly-detect overhead in oggenc

Sebastian Pop sebpop at gmail.com
Sun Jul 14 08:30:31 PDT 2013


On Sun, Jul 14, 2013 at 10:17 AM, Star Tan <tanmx_star at yeah.net> wrote:
> Hi Sebastian,
>
> Yes, you have pointed an important reason. If we comment this source code
> you have listed, then the compile-time overhead for oggenc*8.ll can be
> reduced from 40.5261 ( 51.2%) to 20.3100 ( 35.7%).
>
> I just sent another mail to explain why polly-detect pass leads to
> significant compile-time overhead. Besides the reason you have pointed,
> another reason is resulted from those string buffer operations in "INVALID"
> MACRO. If we comment both the string buffer operations in "INVALID" MACRO
> and in the "isValidMemoryAccess" function, the compile-time overhead for
> oggenc*8.ll would be reduced from 40.5261 ( 51.2%) to 5.8813s (15.9%).

Awesome, thanks for the analysis.

Can you run again perf on the resulting program: I would still like to
understand
where we spend the 5.88s in the rest of scop detection.

> I think we should revise these string buffer operations in Polly-detect
> pass.

Right: we should incur no overhead in a non debug build.

Thanks,
Sebastian



More information about the llvm-dev mailing list