General

Profile

mperham (Mike Perham)

  • Login: mperham
  • Email: mperham@gmail.com
  • Registered on: 04/23/2010
  • Last sign in: 04/15/2024

Issues

open closed Total
Assigned issues 0 0 0
Reported issues 2 12 14

Activity

07/22/2022

04:56 PM Ruby Bug #18935 (Feedback): Binary search reference not found
This method says "See binary searching" but I can't find anything relevant on the page. I would like to see an example or two of how to use bsearch.
https://ruby-doc.org/core-3.1.2/Array.html#method-i-bsearch
mperham (Mike Perham)

07/15/2021

06:07 PM Ruby Feature #3187: Allow dynamic Fiber stack size
nerdrew (Andrew Lazarus) wrote in #note-22:
> Is this request still being considered?
I consider this issue (and really any decade-old issue) irrelevant. Please close.
mperham (Mike Perham)

01/20/2021

08:25 PM Ruby Feature #17566 (Open): Tune thread QoS / efficiency on macOS
Hi, new Apple M1 processors have "performance" and "efficiency" cores. Apple provides a QoS API so threads can tune which cores they should execute on. Some threads should be executed as high-priority, some should be treated as low-prior... mperham (Mike Perham)

08/01/2018

12:55 AM Ruby Feature #14718: Use jemalloc by default?
Sam, I'm ok with your suggestion, any progress here is welcome. The main issue with tcmalloc is that Ruby doesn't support it out of the box with a `--with-tcmalloc` flag. Are you using LD_PRELOAD instead? mperham (Mike Perham)

05/23/2018

04:22 AM Ruby Feature #14718: Use jemalloc by default?
> Ideally I would like a new Ruby runtime flag --long-lived that was tuned for long run times (e.g low malloc arena count, JIT enabled) vs script/short usages where I want maximum performance.
> ...
The JVM has had server and client VMs...
mperham (Mike Perham)

05/22/2018

08:22 PM Ruby Feature #14718: Use jemalloc by default?
If jemalloc 5.1.0 is using too much memory, you can tune its arenas in the same way as glibc:
~~~
MALLOC_CONF=narenas:2,print_stats:true
~~~
https://github.com/jemalloc/jemalloc/blob/dev/TUNING.md
mperham (Mike Perham)
04:25 PM Ruby Feature #14718: Use jemalloc by default?
Another graph from a production Rails app:
![jemalloc](https://pbs.twimg.com/media/Ddv2rvfVMAAM9qu.jpg)
https://twitter.com/krasnoukhov/status/998662977891913728
Edit: Not sure why the image isn't showing...
mperham (Mike Perham)

05/20/2018

05:58 PM Ruby Feature #14759: [PATCH] set M_ARENA_MAX for glibc malloc
Yusuke, your script doesn't create any memory fragmentation, it throws away everything after 1600 and reads the exact same amount of data each time. I don't believe this is how Rails apps behave; they fragment over time. My script crea... mperham (Mike Perham)

05/18/2018

03:49 AM Ruby Feature #14718: Use jemalloc by default?
Dennis, your results match my results (Ubuntu 18.04, gcc 7.3, glibc 2.27). jemalloc 3.6 is slow but space efficient. jemalloc 5.1 is faster but almost as bad with space as untuned glibc. MALLOC_ARENA_MAX=2 is fast and space efficient ... mperham (Mike Perham)

05/17/2018

05:31 PM Ruby Feature #14718: Use jemalloc by default?
Yusuke, I'm not sure, I can't explain that. It does get worse as the machine gets larger. A machine with more cores will see larger bloat, which is what that graph above shows (36 cores, 40GB -> 9GB); the GVL does not appear to help. ... mperham (Mike Perham)

Also available in: Atom