Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

inspect: refactor to use more primodials #36730

Merged
merged 1 commit into from
Jan 5, 2021

Conversation

rchougule
Copy link
Contributor

@rchougule rchougule commented Jan 2, 2021

Checklist
  • make -j4 test (UNIX), or vcbuild test (Windows) passes
  • commit message follows commit guidelines

@nodejs-github-bot nodejs-github-bot added the util Issues and PRs related to the built-in util module. label Jan 2, 2021
@aduh95
Copy link
Contributor

aduh95 commented Jan 2, 2021

Benchmark CI: https://ci.nodejs.org/view/Node.js%20benchmark/job/benchmark-node-micro-benchmarks/853/ (queued, will 404 until it starts)

Copy link
Member

@Trott Trott left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM if benchmark is OK

aduh95
aduh95 previously requested changes Jan 2, 2021
Copy link
Contributor

@aduh95 aduh95 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Unfortunately this change induces some very significant perf regressions.

EDIT: I was looking at the wrong CI, my bad 😅

@aduh95 aduh95 dismissed their stale review January 2, 2021 17:26

Nevemind, I was looking at the wrong CI. Let's wait for the correct CI to complete.

Copy link
Contributor

@aduh95 aduh95 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No significant perf regressions, and even a few perf improvements. LGTM!

                                                                       confidence improvement accuracy (*)   (**)   (***)
 util/inspect-array.js type='denseArray' len=100000 n=500                              1.21 %       ±5.30% ±7.06%  ±9.21%
 util/inspect-array.js type='denseArray' len=100 n=500                                -3.76 %       ±4.62% ±6.15%  ±8.01%
 util/inspect-array.js type='denseArray_showHidden' len=100000 n=500                   1.87 %       ±5.43% ±7.22%  ±9.41%
 util/inspect-array.js type='denseArray_showHidden' len=100 n=500                      1.12 %       ±4.29% ±5.71%  ±7.43%
 util/inspect-array.js type='mixedArray' len=100000 n=500                              0.61 %       ±2.76% ±3.67%  ±4.78%
 util/inspect-array.js type='mixedArray' len=100 n=500                                 0.58 %       ±4.16% ±5.54%  ±7.21%
 util/inspect-array.js type='sparseArray' len=100000 n=500                             1.38 %       ±4.20% ±5.58%  ±7.27%
 util/inspect-array.js type='sparseArray' len=100 n=500                                1.50 %       ±5.63% ±7.49%  ±9.76%
 util/inspect.js option='colors' method='Array' n=20000                               -0.96 %       ±1.72% ±2.29%  ±2.99%
 util/inspect.js option='colors' method='Date' n=20000                                 0.14 %       ±4.24% ±5.64%  ±7.35%
 util/inspect.js option='colors' method='Error' n=20000                                2.74 %       ±3.74% ±4.99%  ±6.50%
 util/inspect.js option='colors' method='Number' n=20000                               1.77 %       ±3.29% ±4.38%  ±5.71%
 util/inspect.js option='colors' method='Object_deep_ln' n=20000                      -1.50 %       ±1.82% ±2.42%  ±3.16%
 util/inspect.js option='colors' method='Object_empty' n=20000                ***      5.84 %       ±3.33% ±4.45%  ±5.84%
 util/inspect.js option='colors' method='Object' n=20000                               0.46 %       ±3.17% ±4.22%  ±5.49%
 util/inspect.js option='colors' method='Set' n=20000                                  2.51 %       ±3.74% ±4.98%  ±6.48%
 util/inspect.js option='colors' method='String_boxed' n=20000                        -3.43 %       ±4.44% ±5.91%  ±7.71%
 util/inspect.js option='colors' method='String_complex' n=20000                       0.15 %       ±4.01% ±5.34%  ±6.95%
 util/inspect.js option='colors' method='String' n=20000                              -1.93 %       ±5.51% ±7.33%  ±9.54%
 util/inspect.js option='colors' method='TypedArray_extra' n=20000              *      2.28 %       ±2.16% ±2.87%  ±3.74%
 util/inspect.js option='colors' method='TypedArray' n=20000                           1.66 %       ±1.69% ±2.25%  ±2.93%
 util/inspect.js option='none' method='Array' n=20000                                  3.05 %       ±4.54% ±6.11%  ±8.08%
 util/inspect.js option='none' method='Date' n=20000                                   1.02 %       ±4.16% ±5.53%  ±7.20%
 util/inspect.js option='none' method='Error' n=20000                                  4.73 %       ±5.96% ±7.96% ±10.44%
 util/inspect.js option='none' method='Number' n=20000                                 0.62 %       ±4.15% ±5.53%  ±7.20%
 util/inspect.js option='none' method='Object_deep_ln' n=20000                         0.25 %       ±2.72% ±3.63%  ±4.73%
 util/inspect.js option='none' method='Object_empty' n=20000                           1.24 %       ±3.95% ±5.26%  ±6.86%
 util/inspect.js option='none' method='Object' n=20000                                 0.25 %       ±3.45% ±4.59%  ±5.97%
 util/inspect.js option='none' method='Set' n=20000                                   -0.86 %       ±4.51% ±6.00%  ±7.81%
 util/inspect.js option='none' method='String_boxed' n=20000                           1.56 %       ±4.30% ±5.72%  ±7.44%
 util/inspect.js option='none' method='String_complex' n=20000                         1.17 %       ±4.62% ±6.14%  ±8.00%
 util/inspect.js option='none' method='String' n=20000                                 0.07 %       ±4.05% ±5.39%  ±7.01%
 util/inspect.js option='none' method='TypedArray_extra' n=20000                       0.59 %       ±4.29% ±5.76%  ±7.59%
 util/inspect.js option='none' method='TypedArray' n=20000                             4.51 %       ±6.35% ±8.52% ±11.25%
 util/inspect.js option='showHidden' method='Array' n=20000                            0.24 %       ±1.30% ±1.73%  ±2.26%
 util/inspect.js option='showHidden' method='Date' n=20000                             1.20 %       ±4.20% ±5.59%  ±7.28%
 util/inspect.js option='showHidden' method='Error' n=20000                            1.58 %       ±2.57% ±3.42%  ±4.46%
 util/inspect.js option='showHidden' method='Number' n=20000                          -3.77 %       ±4.89% ±6.55%  ±8.61%
 util/inspect.js option='showHidden' method='Object_deep_ln' n=20000                  -1.08 %       ±2.20% ±2.93%  ±3.81%
 util/inspect.js option='showHidden' method='Object_empty' n=20000              *      4.50 %       ±4.16% ±5.55%  ±7.24%
 util/inspect.js option='showHidden' method='Object' n=20000                           2.04 %       ±3.66% ±4.87%  ±6.35%
 util/inspect.js option='showHidden' method='Set' n=20000                              0.47 %       ±4.97% ±6.62%  ±8.62%
 util/inspect.js option='showHidden' method='String_boxed' n=20000                    -0.56 %       ±4.28% ±5.70%  ±7.42%
 util/inspect.js option='showHidden' method='String_complex' n=20000                   0.05 %       ±3.15% ±4.19%  ±5.45%
 util/inspect.js option='showHidden' method='String' n=20000                           0.53 %       ±2.77% ±3.69%  ±4.81%
 util/inspect.js option='showHidden' method='TypedArray_extra' n=20000                 1.53 %       ±2.53% ±3.37%  ±4.39%
 util/inspect.js option='showHidden' method='TypedArray' n=20000                       0.70 %       ±1.92% ±2.55%  ±3.32%
 util/inspect-proxy.js isProxy=0 showProxy=0 n=100000                                 -0.59 %       ±1.71% ±2.28%  ±2.97%
 util/inspect-proxy.js isProxy=0 showProxy=1 n=100000                                  0.10 %       ±1.76% ±2.35%  ±3.06%
 util/inspect-proxy.js isProxy=1 showProxy=0 n=100000                                  1.54 %       ±1.87% ±2.49%  ±3.24%
 util/inspect-proxy.js isProxy=1 showProxy=1 n=100000                           *      3.59 %       ±2.96% ±3.95%  ±5.17%

Be aware that when doing many comparisons the risk of a false-positive
result increases. In this case there are 51 comparisons, you can thus
expect the following amount of false-positive results:
  2.55 false positives, when considering a   5% risk acceptance (*, **, ***),
  0.51 false positives, when considering a   1% risk acceptance (**, ***),
  0.05 false positives, when considering a 0.1% risk acceptance (***)

@aduh95 aduh95 added author ready PRs that have at least one approval, no pending requests for changes, and a CI started. request-ci Add this label to start a Jenkins CI on a PR. labels Jan 4, 2021
@github-actions github-actions bot removed the request-ci Add this label to start a Jenkins CI on a PR. label Jan 4, 2021
@nodejs-github-bot

This comment has been minimized.

@nodejs-github-bot

This comment has been minimized.

@nodejs-github-bot
Copy link
Collaborator

@nodejs-github-bot
Copy link
Collaborator

@aduh95 aduh95 added the commit-queue Add this label to land a pull request using GitHub Actions. label Jan 5, 2021
@github-actions github-actions bot removed the commit-queue Add this label to land a pull request using GitHub Actions. label Jan 5, 2021
@github-actions
Copy link
Contributor

github-actions bot commented Jan 5, 2021

Commit Queue failed
- Loading data for nodejs/node/pull/36730
✔  Done loading data for nodejs/node/pull/36730
----------------------------------- PR info ------------------------------------
Title      inspect: refactor to use more primodials (#36730)
Author     Rohan Chougule  (@rchougule, first-time contributor)
Branch     rchougule:inspect_primordials_refactor -> nodejs:master
Labels     author ready, util
Commits    1
 - inspect: refactor to use more primodials
Committers 1
 - Rohan Chougule 
PR-URL: https://github.com/nodejs/node/pull/36730
Reviewed-By: Michaël Zasso 
Reviewed-By: Rich Trott 
Reviewed-By: Antoine du Hamel 
Reviewed-By: Trivikram Kamat 
Reviewed-By: Pooja D P 
------------------------------ Generated metadata ------------------------------
PR-URL: https://github.com/nodejs/node/pull/36730
Reviewed-By: Michaël Zasso 
Reviewed-By: Rich Trott 
Reviewed-By: Antoine du Hamel 
Reviewed-By: Trivikram Kamat 
Reviewed-By: Pooja D P 
--------------------------------------------------------------------------------
   ✔  Last GitHub Actions successful
   ℹ  Last Benchmark CI on 2021-01-02T09:09:47Z: https://ci.nodejs.org/view/Node.js%20benchmark/job/benchmark-node-micro-benchmarks/853/
   ℹ  Last Full PR CI on 2021-01-05T14:08:53Z: https://ci.nodejs.org/job/node-test-pull-request/35296/
- Querying data for job/node-test-pull-request/35296/
✔  Build data downloaded
   ✔  Last Jenkins CI successful
   ℹ  This PR was created on Sat, 02 Jan 2021 06:56:23 GMT
   ✔  Approvals: 5
   ✔  - Michaël Zasso (@targos) (TSC): https://github.com/nodejs/node/pull/36730#pullrequestreview-560624493
   ✔  - Rich Trott (@Trott) (TSC): https://github.com/nodejs/node/pull/36730#pullrequestreview-560644682
   ✔  - Antoine du Hamel (@aduh95): https://github.com/nodejs/node/pull/36730#pullrequestreview-560649622
   ✔  - Trivikram Kamat (@trivikr): https://github.com/nodejs/node/pull/36730#pullrequestreview-561399102
   ✔  - Pooja D P (@PoojaDurgad): https://github.com/nodejs/node/pull/36730#pullrequestreview-561686642
--------------------------------------------------------------------------------
   ✔  No git cherry-pick in progress
   ✔  No git am in progress
   ✔  No git rebase in progress
--------------------------------------------------------------------------------
- Bringing origin/master up to date...
From https://github.com/nodejs/node
 * branch                  master     -> FETCH_HEAD
✔  origin/master is now up-to-date
- Downloading patch for 36730
From https://github.com/nodejs/node
 * branch                  refs/pull/36730/merge -> FETCH_HEAD
✔  Fetched commits as f8b983133824..50c565812fff
--------------------------------------------------------------------------------
[master fbf6eede8c] inspect: refactor to use more primodials
 Author: Rohan Chougule 
 Date: Sat Jan 2 12:22:49 2021 +0530
 1 file changed, 10 insertions(+), 8 deletions(-)
   ✔  Patches applied
--------------------------------------------------------------------------------
--------------------------------- New Message ----------------------------------
inspect: refactor to use more primodials

PR-URL: #36730
Reviewed-By: Michaël Zasso targos@protonmail.com
Reviewed-By: Rich Trott rtrott@gmail.com
Reviewed-By: Antoine du Hamel duhamelantoine1995@gmail.com
Reviewed-By: Trivikram Kamat trivikr.dev@gmail.com
Reviewed-By: Pooja D P Pooja.D.P@ibm.com

[master dadecfedb4] inspect: refactor to use more primodials
Author: Rohan Chougule rohan183chougule@gmail.com
Date: Sat Jan 2 12:22:49 2021 +0530
1 file changed, 10 insertions(+), 8 deletions(-)
✖ dadecfedb4f821db0b6ca166da699b79f96a2983
✔ 0:0 skipping fixes-url fixes-url
✔ 0:0 blank line after title line-after-title
✔ 0:0 line-lengths are valid line-length
✔ 0:0 metadata is at end of message metadata-end
✔ 1:8 PR-URL is valid. pr-url
✔ 0:0 reviewers are valid reviewers
✖ 0:0 Invalid subsystem: "inspect" subsystem
✔ 0:0 Title is formatted correctly. title-format
✔ 0:0 Title is <= 50 columns. title-length

ℹ Please fix the commit message and try again.

https://github.com/nodejs/node/actions/runs/464070859

@github-actions github-actions bot added the commit-queue-failed An error occurred while landing this pull request using GitHub Actions. label Jan 5, 2021
PR-URL: nodejs#36730
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Pooja D P <Pooja.D.P@ibm.com>
@aduh95 aduh95 force-pushed the inspect_primordials_refactor branch from 50c5658 to 779f1bb Compare January 5, 2021 18:49
@aduh95
Copy link
Contributor

aduh95 commented Jan 5, 2021

Landed in 779f1bb 🎉 Thanks for the contribution!

@aduh95 aduh95 merged commit 779f1bb into nodejs:master Jan 5, 2021
@rchougule rchougule deleted the inspect_primordials_refactor branch January 5, 2021 20:33
danielleadams pushed a commit that referenced this pull request Jan 12, 2021
PR-URL: #36730
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Pooja D P <Pooja.D.P@ibm.com>
@danielleadams danielleadams mentioned this pull request Jan 12, 2021
@targos targos removed the commit-queue-failed An error occurred while landing this pull request using GitHub Actions. label Sep 5, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
author ready PRs that have at least one approval, no pending requests for changes, and a CI started. util Issues and PRs related to the built-in util module.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants