[#64703] Add `Hash#fetch_at` (issue #10017) — Wojtek Mach <wojtek@...>
Hey guys
1 message
2014/09/01
[#64711] [ruby-trunk - Bug #10193] [Closed] TestIO#test_readpartial_locktmp fails randomly — nobu@...
Issue #10193 has been updated by Nobuyoshi Nakada.
3 messages
2014/09/02
[#64744] [ruby-trunk - Bug #10202] [Open] TestBenchmark#test_realtime_output breaks on ARM — v.ondruch@...
Issue #10202 has been reported by Vit Ondruch.
3 messages
2014/09/03
[#64823] documenting constants — Xavier Noria <fxn@...>
I am writing a Rails guide about constant autoloading in Ruby on
5 messages
2014/09/07
[#64838] [ruby-trunk - Bug #10212] [Open] MRI is not for lambda calculus — ko1@...
Issue #10212 has been reported by Koichi Sasada.
6 messages
2014/09/08
[#64858] Re: [ruby-trunk - Bug #10212] [Open] MRI is not for lambda calculus
— Eric Wong <normalperson@...>
2014/09/08
rb_env_t may use a flexible array, helps a little even on my busy system:
[#64871] Re: [ruby-trunk - Bug #10212] [Open] MRI is not for lambda calculus
— SASADA Koichi <ko1@...>
2014/09/08
(2014/09/08 19:48), Eric Wong wrote:
[#64972] [ruby-trunk - Bug #10231] [Open] Process.detach(pid) defines new singleton classes every call — headius@...
Issue #10231 has been reported by Charles Nutter.
3 messages
2014/09/11
[#64980] [ruby-trunk - Bug #10212] MRI is not for lambda calculus — ko1@...
Issue #10212 has been updated by Koichi Sasada.
4 messages
2014/09/12
[#65142] [ruby-trunk - Feature #10267] [Open] Number of processors — akr@...
Issue #10267 has been reported by Akira Tanaka.
4 messages
2014/09/20
[#65144] Re: [ruby-trunk - Feature #10267] [Open] Number of processors
— Eric Wong <normalperson@...>
2014/09/20
akr@fsij.org wrote:
[#65210] [ruby-trunk - misc #10278] [Assigned] [RFC] st.c: use ccan linked list — nobu@...
Issue #10278 has been updated by Nobuyoshi Nakada.
3 messages
2014/09/22
[ruby-core:65155] Re: [ruby-trunk - Feature #10267] [Open] Number of processors
From:
Eric Wong <normalperson@...>
Date:
2014-09-20 05:57:50 UTC
List:
ruby-core #65155
KOSAKI Motohiro <kosaki.motohiro@gmail.com> wrote: > On Sat, Sep 20, 2014 at 1:03 PM, Eric Wong <normalperson@yhbt.net> wrote: > > akr@fsij.org wrote: > >> matz accepted this feature including the method name, > >> Etc.nprocessors_online. > > > > I think the name is too long. How about naming it after the GNU > > coreutils nproc(1) command? > > > > Etc.nproc(:online) > > This is an option. But "proc" is not unclear on ruby context. It is sometimes > procedure, and it is sometimes process. I like processor or cpu. OK. I mainly want the ability to specify type as arg. > > I think it is important to be able to get all CPUs, not just > > online CPUs, too > > > (to workaround old SMP bugs in the kernel): > > What bug? Anything which may involve synchronizing with softirq or workqueues, I think... I suppose my fix in 128dd1759d96ad36c379240f8b9463e8acfd37a1 (missing barrier in EPOLL_CTL_MOD) is one example. I was never able to reproduce that bug on my HW, but it worries me because some users are still on old kernels and potentially affected. > > Etc.nproc(:all) > > I don't think this is useful. I'd like to explain some kernel internal. > Now, Linux has three type of number of cpus. > > 1) online > 2) present > 3) possible I think these names are fine for Ruby. > "all" is not clear to me. > > If you elaborate why you need nproc(:all), I may be able to suggest better > name. I just chose "all" because it matched the nproc(1) --all option and didn't want to use Linux-specific naming. But online/present/possible is fine, for now, too. We could also have extra options like: :cores - exclude HyperThread (probably useful for Intel users) :physical - number of sockets (maybe for affinity)