summaryrefslogtreecommitdiffstats
path: root/content/zettel/1f4.md
blob: 1f1184f32831ecefbcd73a099c3cfcdc2d2b68ae (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
+++
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