diff options
Diffstat (limited to 'chapters')
-rw-r--r-- | chapters/scheduling.tex | 28 |
1 files changed, 16 insertions, 12 deletions
diff --git a/chapters/scheduling.tex b/chapters/scheduling.tex index de83ed2..c012ff3 100644 --- a/chapters/scheduling.tex +++ b/chapters/scheduling.tex @@ -7,18 +7,22 @@ \section[introduction]{Introduction} -\oindex{static scheduling}The use of multicore processors has been increasing drastically, thereby -making parallelising compilers ever more important. In addition to that, the need for custom -hardware accelerators is also increasing, as traditional processors are not always the best choice -for all applications. Compilers that support optimisations which can automatically parallelise its -input programs are therefore also becoming more important, as these back ends all benefit from -it. For processors, one wants to optimise the pipeline usage as much as possible, whereas in -hardware one can create custom pipelines, as well as making more use out of the spacial properties -that hardware offers, making instruction parallelism important as well as speculative -execution. However, with more powerful optimisations there is a greater chance to make mistakes in -the compiler, making it possible to generate programs that behave differently to the input -program. An important step towards making compilers more reliable is to formally verify these -optimisations so that it can be guaranteed that bugs are not introduced. +\oindex{static scheduling}The use of multicore processors has been increasing +drastically, thereby making parallelising compilers ever more important. In +addition to that, the need for custom hardware accelerators is also increasing, +as traditional processors are not always the best choice for all +applications. Compilers that support optimisations which can automatically +parallelise its input programs are therefore also becoming more important, as +these back ends all benefit from it. For processors, one wants to optimise the +pipeline usage as much as possible, whereas in hardware one can create custom +pipelines, as well as making more use out of the spacial properties that +hardware offers, making instruction parallelism important as well as speculative +execution. However, with more powerful optimisations there is a greater chance +to make mistakes in the compiler, making it possible to generate programs that +behave differently to the input program. An important step towards making +compilers more reliable is to formally verify these optimisations, so taoirenst +arsntoi earsite naoriestn aoirsten aorsnt ot so that it can be guaranteed that +bugs are not introduced. A popular optimisation for processors increasing the instruction parallelism of the resulting program is to use scheduling. This is an optimisation that is especially important for processors |