[#111565] [Ruby master Bug#19293] The new Time.new(String) API is nice... but we still need a stricter version of this — "matsuda (Akira Matsuda) via ruby-core" <ruby-core@...>

Issue #19293 has been reported by matsuda (Akira Matsuda).

8 messages 2023/01/01

[#111572] [Ruby master Bug#19297] Don't download content from internet to execute Ruby test suite — "vo.x (Vit Ondruch) via ruby-core" <ruby-core@...>

Issue #19297 has been reported by vo.x (Vit Ondruch).

12 messages 2023/01/02

[#111579] [Ruby master Feature#19300] Move public objects from Kernel to Object — "zverok (Victor Shepelev) via ruby-core" <ruby-core@...>

Issue #19300 has been reported by zverok (Victor Shepelev).

15 messages 2023/01/02

[#111581] [Ruby master Bug#19301] Fix Data class to report keyrest instead of rest parameters — "bkuhlmann (Brooke Kuhlmann) via ruby-core" <ruby-core@...>

SXNzdWUgIzE5MzAxIGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGJrdWhsbWFubiAoQnJvb2tlIEt1aGxt

8 messages 2023/01/02

[#111604] [Ruby master Misc#19304] Kernel vs Object documentation — "zverok (Victor Shepelev) via ruby-core" <ruby-core@...>

Issue #19304 has been reported by zverok (Victor Shepelev).

8 messages 2023/01/03

[#111674] [Ruby master Feature#19314] String#bytesplice should support partial copy — "shugo (Shugo Maeda) via ruby-core" <ruby-core@...>

Issue #19314 has been reported by shugo (Shugo Maeda).

8 messages 2023/01/06

[#111678] [Ruby master Feature#19315] Lazy substrings in CRuby — "Eregon (Benoit Daloze) via ruby-core" <ruby-core@...>

Issue #19315 has been reported by Eregon (Benoit Daloze).

11 messages 2023/01/06

[#111693] [Ruby master Bug#19316] YJIT crash in 3.2.0 — "jdashton (J Daniel Ashton) via ruby-core" <ruby-core@...>

Issue #19316 has been reported by jdashton (J Daniel Ashton).

12 messages 2023/01/06

[#111696] [Ruby master Feature#19317] Unicode ICU Full case mapping — "noraj (Alexandre ZANNI) via ruby-core" <ruby-core@...>

SXNzdWUgIzE5MzE3IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IG5vcmFqIChBbGV4YW5kcmUgWkFOTkkp

7 messages 2023/01/06

[#111712] [Ruby master Feature#19322] Support spawning "private" child processes — "kjtsanaktsidis (KJ Tsanaktsidis) via ruby-core" <ruby-core@...>

SXNzdWUgIzE5MzIyIGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGtqdHNhbmFrdHNpZGlzIChLSiBUc2Fu

14 messages 2023/01/07

[#111739] [Ruby master Feature#19324] Enumerator.product => Enumerable#product — "zverok (Victor Shepelev) via ruby-core" <ruby-core@...>

Issue #19324 has been reported by zverok (Victor Shepelev).

18 messages 2023/01/08

[#111740] [Ruby master Bug#19325] Windows support lacking. — "dsisnero (Dominic Sisneros) via ruby-core" <ruby-core@...>

Issue #19325 has been reported by dsisnero (Dominic Sisneros).

11 messages 2023/01/08

[#111742] [Ruby master Feature#19326] Please add a better API for passing a Proc to a Ractor — sdwolfz via ruby-core <ruby-core@...>

SXNzdWUgIzE5MzI2IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IHNkd29sZnogKENvZHJ1yJsgR3XImW9p

13 messages 2023/01/08

[#111789] [Ruby master Feature#19333] Setting (Fiber Local|Thread Local|Fiber Storage) to nil should delete value in order to avoid memory leaks. — "ioquatix (Samuel Williams) via ruby-core" <ruby-core@...>

Issue #19333 has been reported by ioquatix (Samuel Williams).

10 messages 2023/01/11

[#111792] [Ruby master Bug#19334] Defining many instance variables and accessing them is slow in Ruby 3.2.0 — "mame (Yusuke Endoh) via ruby-core" <ruby-core@...>

Issue #19334 has been reported by mame (Yusuke Endoh).

12 messages 2023/01/12

[#111812] [Ruby master Bug#19340] Ruby master 'make install' not installing rbs gem — "MSP-Greg (Greg L) via ruby-core" <ruby-core@...>

Issue #19340 has been reported by MSP-Greg (Greg L).

8 messages 2023/01/14

[#111842] [Ruby master Feature#19347] Add Dir.fchdir — "jeremyevans0 (Jeremy Evans) via ruby-core" <ruby-core@...>

Issue #19347 has been reported by jeremyevans0 (Jeremy Evans).

9 messages 2023/01/16

[#111873] [Ruby master Bug#19351] Promote bundled gems at Ruby 3.3 — "hsbt (Hiroshi SHIBATA) via ruby-core" <ruby-core@...>

Issue #19351 has been reported by hsbt (Hiroshi SHIBATA).

26 messages 2023/01/18

[#111890] [Ruby master Bug#19352] Feature #17391 was not such a good idea because now Ruby 3.2 can not install Rails v5 or v6 if they use webpacker. — "Milella@... (Scott Milella) via ruby-core" <ruby-core@...>

Issue #19352 has been reported by [email protected] (Scott Milella).

16 messages 2023/01/19

[#111953] [Ruby master Bug#19362] #dup on Proc doesn't call initialize_dup — "zverok (Victor Shepelev) via ruby-core" <ruby-core@...>

Issue #19362 has been reported by zverok (Victor Shepelev).

8 messages 2023/01/21

[#111956] [Ruby master Bug#19363] Fix rb_transient_heap_mark: wrong header (T_STRUCT) segfault — "bkuhlmann (Brooke Kuhlmann) via ruby-core" <ruby-core@...>

SXNzdWUgIzE5MzYzIGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGJrdWhsbWFubiAoQnJvb2tlIEt1aGxt

9 messages 2023/01/21

[#111988] [Ruby master Feature#19370] Anonymous parameters for blocks? — "zverok (Victor Shepelev) via ruby-core" <ruby-core@...>

Issue #19370 has been reported by zverok (Victor Shepelev).

10 messages 2023/01/23

[#112041] [Ruby master Feature#19377] Rename Fiber#storage to Fiber.storage — "zverok (Victor Shepelev) via ruby-core" <ruby-core@...>

Issue #19377 has been reported by zverok (Victor Shepelev).

8 messages 2023/01/25

[#112045] [Ruby master Bug#19378] Windows: Use less syscalls for faster require of big gems — "aidog (Andi Idogawa) via ruby-core" <ruby-core@...>

SXNzdWUgIzE5Mzc4IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGFpZG9nIChBbmRpIElkb2dhd2EpLg0N

7 messages 2023/01/26

[#112048] [Ruby master Bug#19379] Regex: "end pattern with unmatched parenthesis" with Ruby 3.2 and interpolation — "renchap (Renaud Chaput) via ruby-core" <ruby-core@...>

Issue #19379 has been reported by renchap (Renaud Chaput).

8 messages 2023/01/26

[#112058] [Ruby master Bug#19383] Time.now.zone encoding for German display language in Windows is incorrect — "stringsn88keys (Thomas Powell) via ruby-core" <ruby-core@...>

SXNzdWUgIzE5MzgzIGhhcyBiZWVuIHJlcG9ydGVkIGJ5IHN0cmluZ3NuODhrZXlzIChUaG9tYXMg

11 messages 2023/01/26

[#112072] [Ruby master Bug#19386] `test_hmac.rb` of openssl is timeout on RHEL9 — "hsbt (Hiroshi SHIBATA) via ruby-core" <ruby-core@...>

Issue #19386 has been reported by hsbt (Hiroshi SHIBATA).

14 messages 2023/01/27

[#112091] [Ruby master Bug#19387] Issue with ObjectSpace.each_objects not returning IO objects after starting a ractor — "luke-gru (Luke Gruber) via ruby-core" <ruby-core@...>

Issue #19387 has been reported by luke-gru (Luke Gruber).

9 messages 2023/01/27

[#112119] [Ruby master Bug#19392] Endless method vs and/or — "zverok (Victor Shepelev) via ruby-core" <ruby-core@...>

Issue #19392 has been reported by zverok (Victor Shepelev).

20 messages 2023/01/30

[#112146] [Ruby master Bug#19394] cvars in instance of cloned class point to source class's cvars even after class_variable_set on clone — "jamescdavis (James Davis) via ruby-core" <ruby-core@...>

SXNzdWUgIzE5Mzk0IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGphbWVzY2RhdmlzIChKYW1lcyBEYXZp

8 messages 2023/01/31

[ruby-core:112109] [Ruby master Bug#19288] Ractor JSON parsing significantly slower than linear parsing

From: duerst via ruby-core <ruby-core@...>
Date: 2023-01-30 02:46:37 UTC
List: ruby-core #112109
Issue #19288 has been updated by duerst (Martin D=FCrst).





Eregon (Benoit Daloze) wrote in #note-7:



> And then of course there is the issue that Ractor is incompatible with mo=
st gems/code out there.

> While JSON loading might work, any non-trivial processing after using a g=
em is unlikely to work well.

> Other Rubies have solved this in a much more efficient, usable and reliab=
le way, by having no GVL.



But don't other Rubies rely on the programmer to know how to program with t=
hreads? That's only usable if you're used to programming with threads and a=
void the related issues. The idea (where the implementation and many gems m=
ay still have to catch up) behind Ractor is that thread-related issues such=
 as data races can be avoided at the level of the programming model.



----------------------------------------

Bug #19288: Ractor JSON parsing significantly slower than linear parsing

https://bugs.ruby-lang.org/issues/19288#change-101546



* Author: maciej.mensfeld (Maciej Mensfeld)

* Status: Open

* Priority: Normal

* ruby -v: ruby 3.2.0 (2022-12-25 revision a528908271) [x86_64-linux]

* Backport: 2.7: UNKNOWN, 3.0: UNKNOWN, 3.1: UNKNOWN, 3.2: UNKNOWN

----------------------------------------

a simple benchmark:



```ruby

require 'json'

require 'benchmark'



CONCURRENT =3D 5

RACTORS =3D true

ELEMENTS =3D 100_000



data =3D CONCURRENT.times.map do

  ELEMENTS.times.map do

    {

      rand =3D> rand,

      rand =3D> rand,

      rand =3D> rand,

      rand =3D> rand

    }.to_json

  end

end



ractors =3D CONCURRENT.times.map do

  Ractor.new do

    Ractor.receive.each { JSON.parse(_1) }

  end

end



result =3D Benchmark.measure do

  if RACTORS

    CONCURRENT.times do |i|

      ractors[i].send(data[i], move: false)

    end



    ractors.each(&:take)

  else

    # Linear without any threads

    data.each do |piece|

      piece.each { JSON.parse(_1) }

    end

  end

end



puts result

```



Gives following results on my 8 core machine:



```shell

# without ractors:

  2.731748   0.003993   2.735741 (  2.736349)



# with ractors

12.580452   5.089802  17.670254 (  5.209755)

```

I would expect Ractors not to be two times slower on the CPU intense work.











--=20

https://bugs.ruby-lang.org/

 ______________________________________________
 ruby-core mailing list -- [email protected]
 To unsubscribe send an email to [email protected]
 ruby-core info -- https://ml.ruby-lang.org/mailman3/postorius/lists/ruby-c=
ore.ml.ruby-lang.org/

In This Thread