[prev in list] [next in list] [prev in thread] [next in thread] 

List:       haskell-cafe
Subject:    Re: [Haskell-cafe] Cache miss performance costs for Haskell programs?
From:       Merijn Verstraaten <merijn () inconsistent ! nl>
Date:       2016-08-31 10:34:31
Message-ID: 6C34F8A4-BD67-438C-B61E-8B6D882EDBDC () inconsistent ! nl
[Download RAW message or body]

[Attachment #2 (multipart/signed)]


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.

Cheers,
Merijn

> On 31 Aug 2016, at 11:52, Ramakrishnan Muthukrishnan <ram@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.
> 
> <http://developers.redhat.com/blog/2014/03/10/determining-whether-an-application-has-poor-cache-performance-2/>
>  
> I haven't used it on Haskell programs though..
> 
> --
> Ramakrishnan
> _______________________________________________
> Haskell-Cafe mailing list
> To (un)subscribe, modify options or view archives go to:
> http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe
> Only members subscribed via the mailman list are allowed to post.


["signature.asc" (signature.asc)]

-----BEGIN PGP SIGNATURE-----
Comment: GPGTools - https://gpgtools.org

iQIcBAEBCgAGBQJXxrK4AAoJEDhtCBaQ29lAntwP/RSuBspMAeMjqxMpfvglmInC
McVykBoEQJlpBPgagF2UGeDH0+24t+NXqgw1vx2Spx7CrbYpzMS9DVj0g5ozlc7F
uiIRof2IhF8Sz0tT0qtOGKa2BScayiralu94qCw6DnsZHmuK8S8T/Tm8xZgQvF53
LdT+PYeKuet9J3GRWBTBSfG88fEpcceyFSXXztlm/AKhlRUx80qeOUBoW8VE4Vjv
I7XrrdD8X89Vcrn82yl1+lo3CSOvQ/j3WRIwvGRXQmKMc+zEgHPRyea7OkaTkOqo
Bhe62VmTLmakS5Cy36fUwIch62Y/ECObrv/furJuAEEqiygJUnmiaBIqpKctJK2g
C9WDY1GRSJ5gsWYnY/yitDDiMjxHoyvunQo0n7e4x9RZxO0b1bvW/lilj61OJ3m6
VCAVSTZN5ShsWFRzoBm1Y8ioD3e6n3hHqIzlTcJ8sZuSOX0m3u0adBmm7RaMZ74f
DV+nLYtzq7PrZ5RhahQTQOVq30jUJp+8mr2//6gG0Jzx5oslkLDiMabahiBoXVNT
7CFA85rfdE3cCUSw/1re0ZkB6oja96bnLYqd2NeqH8rnc/F5juHEunmCneBgJraK
slQQDT0j88biX6f2RUUnD4Iby+cD85zW6f8HwiRFcSDquCCD3DYOvviaTVDmXTE8
fGbu/BnnrAhj/UKK1a2u
=KdgJ
-----END PGP SIGNATURE-----

[Attachment #6 (text/plain)]

_______________________________________________
Haskell-Cafe mailing list
To (un)subscribe, modify options or view archives go to:
http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe
Only members subscribed via the mailman list are allowed to post.

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic