ruby-core@ruby-lang.org archive (unofficial mirror)
 help / color / mirror / Atom feed
From: gamelinks007@gmail.com
To: ruby-core@ruby-lang.org
Subject: [ruby-core:99476] [Ruby master Bug#17101] YAML.load_file: Massive slowdown under Ruby 2.7 vs. Ruby 2.4
Date: Tue, 04 Aug 2020 10:13:39 +0000 (UTC)	[thread overview]
Message-ID: <redmine.journal-86931.20200804101337.8636@ruby-lang.org> (raw)
In-Reply-To: redmine.issue-17101.20200803151924.8636@ruby-lang.org

Issue #17101 has been updated by S_H_ (Shun Hiraoka).


I tried this benchmark in several ruby's(Ubuntu18.04 in WSL2. using `rbenv`).

```yaml
prelude: |
  require 'yaml'
benchmark: 
  load_file: YAML.load_file('qlnv_h_h.yaml')
loop_count: 1

```


And, result.

```bash
sh@MyComputer:~/rubydev/bugs$ benchmark-driver yml.yaml --output compare --rbenv '2.4.4;2.5.8;2.6.6;2.7.1;2.8.0-dev'
Calculating -------------------------------------
                          2.4.4       2.5.8       2.6.6       2.7.1   2.8.0-dev 
           load_file      0.113       0.075       0.076       0.058       0.134 i/s -       1.000 times in 8.839451s 13.406090s 13.240691s 17.256679s 7.435239s

Comparison:
                        load_file
           2.8.0-dev:         0.1 i/s 
               2.4.4:         0.1 i/s - 1.19x  slower
               2.6.6:         0.1 i/s - 1.78x  slower
               2.5.8:         0.1 i/s - 1.80x  slower
               2.7.1:         0.1 i/s - 2.32x  slower

```

Between `2.5` and `2.7` is slow, but `master(2.8.9-dev)` is very fast(faster than `2.4`!).

And checked `yaml` versions(in theseruby's).

| Ruby version | YAML version |
|:--:|:--:|
|2.8.0-dev | 0.2.5 |
|2.7.1 | 0.2.1 |
|2.6.6 | 0.2.1 |
|2.5.8 | 0.1.7 |
|2.4.4 | 0.1.7 |


----------------------------------------
Bug #17101: YAML.load_file: Massive slowdown under Ruby 2.7 vs. Ruby 2.4
https://bugs.ruby-lang.org/issues/17101#change-86931

* Author: fitmap (Justin Peal)
* Status: Open
* Priority: Normal
* ruby -v: ruby 2.7.1p83 (2020-03-31 revision a0c7c23c9c) [x64-mingw32]
* Backport: 2.5: UNKNOWN, 2.6: UNKNOWN, 2.7: UNKNOWN
----------------------------------------
When use Ruby 2.4, the following program runs fast, After ungrade to Ruby 2.7, the same program runs very very slow. Please unzip the attach first for test.

require 'yaml'
YAML.load_file('qlnv_h_h.yaml')

---Files--------------------------------
qlnv_h_h.7z (1.41 MB)


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

  parent reply	other threads:[~2020-08-04 10:13 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-08-03 15:19 [ruby-core:99454] [Ruby master Bug#17101] YAML.load_file: Massive slowdown under Ruby 2.7 vs. Ruby 2.4 fitmap
2020-08-03 18:51 ` [ruby-core:99461] " Greg.mpls
2020-08-04 10:13 ` gamelinks007 [this message]
2020-08-04 15:36 ` [ruby-core:99477] " fitmap
2021-07-02 16:15 ` [ruby-core:104474] " merch-redmine

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.ruby-lang.org/en/community/mailing-lists/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=redmine.journal-86931.20200804101337.8636@ruby-lang.org \
    --to=ruby-core@ruby-lang.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).