+++ title = "Complex optimisation effects" author = "Yann Herklotz" tags = [] categories = [] backlinks = ["1f3"] forwardlinks = ["1f4a"] zettelid = "1f4" +++ Finally, the last flakiness property that HLS tools have is that they apply many optimisations, which may or may not have linear effects on the performance and area of the result. > Because of Amdahl's law arguments, most optimizations don't have a > linear effect. They appear to have a linear effect sometimes, but > eventually hit some diminishing returns. Some other effects are really > discontinuous, for instance, unrolling accumulation loops may not > change critical recurrences. — Stephen Neuendorffer ([email]) It's is nearly impossible to predict what a series of optimisations will do to the performance. The user will implicitly try to predict the performance with a simplified model as reference, and as the HLS tool has to take everything into account, and will therefore sometimes not be able to optimise the loop as the user would want it to be, leading to discontinuous optimisations. [email]: notmuch:id:BYAPR02MB3910A2FA9F954031FC11A232A8479@BYAPR02MB3910.namprd02.prod.outlook.com