Re: Cmm Memory Model (Understanding #15449)

2018-12-06 Thread Carter Schonwald
Awesome summary by Ben! theres also some crazy hijinks needed currently to do compare and swap style stuff see https://hackage.haskell.org/package/atomic-primops-0.8.2/docs/Data-Atomics.html for some discussion. (i'm not sure what the current state of the world is on CAS tech) On Thu, Nov 29, 20

Re: Windows test failures

2018-12-06 Thread Phyx
forgot to copy in ghc-devs. On Fri, Dec 7, 2018 at 12:05 AM Phyx wrote: > Ah great, > > Normally an msys2 .profile will contain the following line > > # Set user-defined locale > export LANG=$(locale -uU) > > which would attach ".UTF-8" to the user's current locale. > I'm guessing when you run i

Re: Windows test failures

2018-12-06 Thread Phyx
Hi Roland, Thanks for looking into thiis, > To fix the issue on Windows, the compiler and the plugin should use the same buffer for stdout. I'm not convinced that they're not. I'm guessing the answer lies in why your messages have a different ordering, but I don't know why off the top of my head

Re: Windows test failures

2018-12-06 Thread Phyx
Hi Simon, > Does that help at all? > > I can try your “export LANG=en_GB.UTF-8” … shall I do that? Can I test its efficacy by running one test rather than 6,000 of them? In which case, which one? Yes, "en_GB" doesn't seem to be a unicode locale, one test you can try to check is T3307,so make

Re: Residency profiles

2018-12-06 Thread Simon Marlow
It is documented! https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/runtime_control.html#rts-flag--F%20%E2%9F%A8factor%E2%9F%A9 On Thu, 6 Dec 2018 at 16:21, Sebastian Graf wrote: > Hey, > > thanks, all! Measuring with `-A1M -F1` delivers much more reliable > residency numbers. > `-

Re: Residency profiles

2018-12-06 Thread Sebastian Graf
Hey, thanks, all! Measuring with `-A1M -F1` delivers much more reliable residency numbers. `-F` doesn't seem to be documented. From reading `rts/RtsFlags.c` and `rts/sm/GC.c` I gather that it's the factor by which to multiply the number of live bytes by to get the new old gen size? So effectively,

Re: References for GHC usage of multiple capabilities

2018-12-06 Thread Ben Gamari
Artem Pelenitsyn writes: > Hello devs, > > I've been working on a short survey devoted to a topic of multithreading > inside the GHC compiler and runtime. So far I was mostly looking at the > following three papers > > [1] P. W. Trinder, K. Hammond, J. S. Mattson, Jr., A. S. Partridge, and S. > L

References for GHC usage of multiple capabilities

2018-12-06 Thread Artem Pelenitsyn
Hello devs, I've been working on a short survey devoted to a topic of multithreading inside the GHC compiler and runtime. So far I was mostly looking at the following three papers [1] P. W. Trinder, K. Hammond, J. S. Mattson, Jr., A. S. Partridge, and S. L. Peyton Jones. Gum: A portable parallel

RE: Windows test failures

2018-12-06 Thread Simon Peyton Jones via ghc-devs
Hi Tamar Thanks for working on this. if it's an msys2 shell, what does "locale" return? It’s a shell running inside emacs. Here’s what locale returns /c/tmp$ locale LANG=en_GB LC_CTYPE="en_GB" LC_NUMERIC="en_GB" LC_TIME="en_GB" LC_COLLATE="en_GB" LC_MONETARY="en_GB" LC_MESSAGES="en_GB"

RE: Residency profiles

2018-12-06 Thread Simon Peyton Jones via ghc-devs
| Right. A parameter for fixing the nursery size would be easy to implement, | I think. Just a new flag, then in GC.c:resize_nursery() use the flag as the | nursery size. Super! That would be v useful. | "Max. residency" is really hard to measure (need to do very frequent GCs), | perhaps a

Re: Residency profiles

2018-12-06 Thread Simon Marlow
On Thu, 6 Dec 2018 at 11:15, Ömer Sinan Ağacan wrote: > Hi, > > > I think what we want is a way to trigger GC at very regular intervals, > after > > (say) each 10kbytes or 100kbytes or 1Mbyte of allocation. That might > be > > expensive, but we’d get reproducible results. > > If we could fix

Re: Residency profiles

2018-12-06 Thread Ömer Sinan Ağacan
Hi, > I think what we want is a way to trigger GC at very regular intervals, after > (say) each 10kbytes or 100kbytes or 1Mbyte of allocation. That might be > expensive, but we’d get reproducible results. If we could fix the nursery size to 10kb that'd trigger a GC in every 10kb of allocation

Guidelines for respectful communication

2018-12-06 Thread Simon Peyton Jones via ghc-devs
Friends As many of you will know, I have been concerned for several years about the standards of discourse in the Haskell community. I think things have improved since the period that drove me to write my Respect email, but

Residency profiles

2018-12-06 Thread Simon Peyton Jones via ghc-devs
Simon, Ben, Omer As you'll see in comments 55-72 of https://ghc.haskell.org/trac/ghc/ticket/9476, Sebastian has been a bit flummoxed by the task of measure residency profiles; that is, how much data is truly live during execution. A major GC measures that, but we are vulnerable to exactly when i