Age | Commit message (Collapse) | Author | |
---|---|---|---|
2024-02-15 | ruby-spec: Accept the receiver in backtraces | Yusuke Endoh | |
2024-02-15 | ruby-spec: Accept both a backtick and a single quote in error messages | Yusuke Endoh | |
2024-02-05 | Update to ruby/spec@3fc4444 | Benoit Daloze | |
2023-10-12 | M:N thread scheduler for Ractors | Koichi Sasada | |
This patch introduce M:N thread scheduler for Ractor system. In general, M:N thread scheduler employs N native threads (OS threads) to manage M user-level threads (Ruby threads in this case). On the Ruby interpreter, 1 native thread is provided for 1 Ractor and all Ruby threads are managed by the native thread. From Ruby 1.9, the interpreter uses 1:1 thread scheduler which means 1 Ruby thread has 1 native thread. M:N scheduler change this strategy. Because of compatibility issue (and stableness issue of the implementation) main Ractor doesn't use M:N scheduler on default. On the other words, threads on the main Ractor will be managed with 1:1 thread scheduler. There are additional settings by environment variables: `RUBY_MN_THREADS=1` enables M:N thread scheduler on the main ractor. Note that non-main ractors use the M:N scheduler without this configuration. With this configuration, single ractor applications run threads on M:1 thread scheduler (green threads, user-level threads). `RUBY_MAX_CPU=n` specifies maximum number of native threads for M:N scheduler (default: 8). This patch will be reverted soon if non-easy issues are found. [Bug #19842] | |||
2023-09-04 | Update to ruby/spec@96d1072 | Benoit Daloze | |
2023-06-26 | Update to ruby/spec@30e1c35 | Benoit Daloze | |
2023-02-27 | Update to ruby/spec@e7dc804 | Benoit Daloze | |
2022-11-08 | Thread#native_thread_id is very platform specific | Nobuyoshi Nakada | |
2022-11-07 | Update to ruby/spec@740ccc8 | Benoit Daloze | |
2022-09-28 | Update to ruby/spec@1d9d5c6 | Benoit Daloze | |
2022-06-26 | Update to ruby/spec@ab32a1a | Benoit Daloze | |
2022-04-25 | Update to ruby/spec@3affe1e | Benoit Daloze | |
2022-03-28 | Update to ruby/spec@aaf998f | Benoit Daloze | |
2022-03-03 | Update to ruby/spec@82cd3a3 | Benoit Daloze | |
2021-10-28 | Update to ruby/spec@21a48d9 | Benoit Daloze | |
2021-07-29 | Make RubyVM::AbstractSyntaxTree.of raise for method/proc created in eval | Jeremy Evans | |
This changes Thread::Location::Backtrace#absolute_path to return nil for methods/procs defined in eval. If the realpath of an iseq is nil, that indicates it was defined in eval, in which case you cannot use RubyVM::AbstractSyntaxTree.of. Fixes [Bug #16983] Co-authored-by: Koichi Sasada <ko1@atdot.net> Notes: Merged: https://github.com/ruby/ruby/pull/4519 | |||
2021-07-29 | Update to ruby/spec@b65d01f | Benoit Daloze | |
2021-01-28 | Update to ruby/spec@8cafaa5 | Benoit Daloze | |
2020-11-13 | Update to ruby/spec@b0b7f53 | Benoit Daloze | |
2020-10-24 | Update to ruby/spec@4f59d86 | Benoit Daloze | |
2020-09-21 | Make Thread#join always convert its argument, as before 70f08f1eed | Benoit Daloze | |
2020-09-21 | Fix Thread leak in Thread#join specs | Benoit Daloze | |
2020-09-21 | Make `Thread#join` non-blocking. | Samuel Williams | |
Notes: Merged: https://github.com/ruby/ruby/pull/3558 | |||
2020-09-15 | 2.8 -> 3.0 in specs | Benoit Daloze | |
2020-08-31 | Thread.exclusive: delete | 卜部昌平 | |
Has been deprecated since 2069c9e031fc968d6d3d0fe30a9316851e4d91d8. [Feature #17125][ruby-core:99636] | |||
2020-08-28 | Update to ruby/spec@335eb9b | Benoit Daloze | |
2020-07-27 | Update to ruby/spec@07164da | Benoit Daloze | |
2020-05-31 | Update to ruby/spec@4e486fa | Benoit Daloze | |
2020-05-03 | Update to ruby/spec@032ee74 | Benoit Daloze | |
2020-04-01 | Drop support for ruby 2.4 from ruby/spec | Nobuyoshi Nakada | |
Notes: Merged: https://github.com/ruby/ruby/pull/2892 | |||
2020-04-01 | Use FrozenError instead of frozen_error_class | Nobuyoshi Nakada | |
Notes: Merged: https://github.com/ruby/ruby/pull/2892 | |||
2020-02-28 | Update to ruby/spec@41bf282 | Benoit Daloze | |
2020-01-28 | Update to ruby/spec@f8a2d54 | Benoit Daloze | |
2019-12-27 | Update to ruby/spec@d419e74 | Benoit Daloze | |
2019-12-22 | Move version guard outside to make it clear the method was added in Ruby 2.5 | Benoit Daloze | |
2019-12-11 | Test `Thread#to_s` when used from to_s_spec.rb | Nobuyoshi Nakada | |
2019-12-11 | `Thread#to_s` has been added at ruby 2.5 | Nobuyoshi Nakada | |
2019-12-11 | Thread#to_s is not same as #inspect on old version. | Koichi Sasada | |
Thread#to_s returns simple Object#to_s until Ruby 2.4. | |||
2019-12-11 | fix for old MRI versions | Koichi Sasada | |
2019-12-11 | Make Thread#to_s consistent with Method and Proc to_s | Jean byroot Boussier | |
Notes: Merged: https://github.com/ruby/ruby/pull/2738 | |||
2019-11-29 | check interrupts at each frame pop timing. | Koichi Sasada | |
Asynchronous events such as signal trap, finalization timing, thread switching and so on are managed by "interrupt_flag". Ruby's threads check this flag periodically and if a thread does not check this flag, above events doesn't happen. This checking is CHECK_INTS() (related) macro and it is placed at some places (laeve instruction and so on). However, at the end of C methods, C blocks (IMEMO_IFUNC) etc there are no checking and it can introduce uninterruptible thread. To modify this situation, we decide to place CHECK_INTS() at vm_pop_frame(). It increases interrupt checking points. [Bug #16366] This patch can introduce unexpected events... | |||
2019-10-26 | Update to ruby/spec@28a728b | Benoit Daloze | |
2019-10-14 | Suppress warnings for Thread.exclusive | Nobuyoshi Nakada | |
2019-09-29 | Update to ruby/spec@519df35 | Benoit Daloze | |
2019-07-27 | Update to ruby/spec@875a09e | Benoit Daloze | |
2019-04-28 | Update to ruby/spec@7de852d | Benoit Daloze | |
2019-04-27 | Update to ruby/spec@15c9619 | Benoit Daloze | |
2019-03-28 | Update to ruby/spec@e81b3cd | eregon | |
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67361 b2dd03c8-39d4-4d8f-98ff-823fe69b080e | |||
2019-02-21 | Update to ruby/spec@7a16e01 | eregon | |
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67112 b2dd03c8-39d4-4d8f-98ff-823fe69b080e | |||
2018-11-27 | Update to ruby/spec@cdd6ff7 | eregon | |
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66041 b2dd03c8-39d4-4d8f-98ff-823fe69b080e |