[Haskell-cafe] Cache miss performance costs for Haskell programs?
merijn at inconsistent.nl
Wed Aug 31 10:34:31 UTC 2016
Accidentally didn't address the mailing list:
Additionally, if you want to investigate things like cache misses, etc. Intel VTune Amplifier is an amazing profiling tool and there is a non-commercial open source license available for it.
> On 31 Aug 2016, at 11:52, Ramakrishnan Muthukrishnan <ram at rkrishnan.org> wrote:
> On Tue, Aug 30, 2016, at 08:53 PM, Rob Stewart wrote:
>> Any Haskell profiling and performance tuning blog or tutorial will
>> advise the use of memory space and runtime profiling, using GHC
>> tooling. Far less is said about the impact of increased cache miss
>> rates as program size increases.
>> The paper "Secrets of the Glasgow Haskell Compiler inliner", in the
>> Journal of Functional Programming, July 2002, talks a lot about the
>> benefits of inlining, i.e. it's part of GHCs simplifier as it enables
>> many other optimisations, some that ultimately reduce program size.
>> Not much is said about detrimental effect that bad inlining choices
>> has to runtime. The paper says: "Bloated programs are bad (increased
>> compilation time, lower cache hit rates)" in Section 2.2.
>> I'd really like to see how badly Haskell runtimes are affected as
>> cache hit rates decrease. Is anyone aware of any empirical studies, or
>> papers, or blog posts, that show examples where:
>> For the same Haskell program, increasing inlining causes lower cache
>> hit rates, which slows down runtime due to costly cycles to fetch from
>> main memory more often.
> Hi Rob,
> Have you looked at the `perf' tool supported in recent linux kernel
> versions? It seem to have tools to report cache statistics.
> I haven't used it on Haskell programs though..
> Haskell-Cafe mailing list
> To (un)subscribe, modify options or view archives go to:
> Only members subscribed via the mailman list are allowed to post.
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 842 bytes
Desc: Message signed with OpenPGP using GPGMail
More information about the Haskell-Cafe