Improving implicit parallelism

José Manuel Calderón Trilla, Colin Runciman
2015 SIGPLAN notices  
Using static analysis techniques compilers for lazy functional languages can be used to identify parts of a program that can be legitimately evaluated in parallel and ensure that those expressions are executed concurrently with the main thread of execution. These techniques can produce improvements in the runtime performance of a program, but are limited by the static analyses' poor prediction of runtime performance. This paper outlines the development of a system that uses iterative
more » ... terative profile-directed improvement in addition to well-studied static analysis techniques. This allows us to achieve higher performance gains than through static analysis alone.
doi:10.1145/2887747.2804308 fatcat:ks5tvtdslze3nmkyt2aq6ks3ky