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

Reduce memory allocations in function calls #1282

Merged

Conversation

lahma
Copy link
Collaborator

@lahma lahma commented Sep 4, 2022

  • make DeclarativeEnvironmentRecord properties lazy
  • check AST if there's a real need to have arguments object passed in

@lahma
Copy link
Collaborator Author

lahma commented Sep 4, 2022

Esprima.Benchmark.SunSpiderBenchmark

Diff Method FileName Mean Error Allocated
Old Run 3d-cube 199.57 ms 0.319 ms 50173.05 KB
New 200.04 ms (0%) 0.428 ms 49005.39 KB (-2%)
Old Run 3d-morph 158.60 ms 0.417 ms 48379.87 KB
New 162.64 ms (+3%) 0.568 ms 48366.35 KB (0%)
Old Run 3d-raytrace 167.86 ms 0.387 ms 92704.46 KB
New 163.64 ms (-3%) 0.361 ms 88362.81 KB (-5%)
Old Run access-binary-trees 82.30 ms 0.229 ms 75722.21 KB
New 75.50 ms (-8%) 0.139 ms 60931.89 KB (-20%)
Old Run access-fannkuch 459.86 ms 3.778 ms 134.92 KB
New 433.21 ms (-6%) 0.851 ms 133.82 KB (-1%)
Old Run access-nbody 188.20 ms 0.523 ms 63844.97 KB
New 188.57 ms (0%) 0.503 ms 63661.02 KB (0%)
Old Run access-nsieve 156.63 ms 0.367 ms 21518.16 KB
New 153.28 ms (-2%) 0.272 ms 21518.14 KB (0%)
Old Run bitop(...)-byte [24] 158.50 ms 0.445 ms 68948.69 KB
New 147.65 ms (-7%) 0.302 ms 56948.25 KB (-17%)
Old Run bitops-bits-in-byte 232.04 ms 0.421 ms 45444.6 KB
New 249.90 ms (+8%) 0.559 ms 37044.38 KB (-18%)
Old Run bitops-bitwise-and 134.57 ms 1.276 ms 55942.53 KB
New 127.43 ms (-5%) 0.708 ms 55938.46 KB (0%)
Old Run bitops-nsieve-bits 220.61 ms 4.334 ms 54072.78 KB
New 209.46 ms (-5%) 0.655 ms 54074.29 KB (0%)
Old Run contr(...)rsive [21] 127.39 ms 0.982 ms 108772.08 KB
New 96.36 ms (-24%) 0.228 ms 83183.09 KB (-24%)
Old Run crypto-aes 143.40 ms 1.500 ms 14935.53 KB
New 133.28 ms (-7%) 0.537 ms 14008.27 KB (-6%)
Old Run crypto-md5 106.27 ms 0.358 ms 88403.25 KB
New 96.68 ms (-9%) 0.352 ms 77891.84 KB (-12%)
Old Run crypto-sha1 102.85 ms 0.881 ms 75067.3 KB
New 95.53 ms (-7%) 0.156 ms 64563.47 KB (-14%)
Old Run date-format-tofte 101.73 ms 0.165 ms 45250.98 KB
New 95.54 ms (-6%) 0.187 ms 43131.97 KB (-5%)
Old Run date-format-xparb 57.73 ms 0.188 ms 28787.27 KB
New 55.73 ms (-3%) 0.118 ms 24846 KB (-14%)
Old Run math-cordic 327.89 ms 0.503 ms 113031.72 KB
New 325.23 ms (-1%) 0.402 ms 81973.88 KB (-27%)
Old Run math-partial-sums 131.58 ms 0.346 ms 50094.9 KB
New 129.19 ms (-2%) 0.460 ms 50094.43 KB (0%)
Old Run math-spectral-norm 127.22 ms 0.275 ms 63333.26 KB
New 121.53 ms (-4%) 0.271 ms 51831.58 KB (-18%)
Old Run regexp-dna 114.67 ms 0.317 ms 17665.72 KB
New 105.21 ms (-8%) 0.404 ms 17666.21 KB (0%)
Old Run string-base64 101.32 ms 0.204 ms 11240.54 KB
New 102.92 ms (+2%) 0.338 ms 11240.63 KB (0%)
Old Run string-fasta 190.90 ms 0.634 ms 155489.71 KB
New 186.82 ms (-2%) 1.210 ms 148051.28 KB (-5%)
Old Run string-tagcloud 73.02 ms 0.235 ms 48436.63 KB
New 69.00 ms (-6%) 0.142 ms 44111.32 KB (-9%)
Old Run string-unpack-code 72.61 ms 0.186 ms 83958.86 KB
New 68.36 ms (-6%) 0.138 ms 74416.94 KB (-11%)
Old Run strin(...)input [21] 80.69 ms 0.111 ms 41620.6 KB
New 79.38 ms (-2%) 0.176 ms 39743.73 KB (-5%)

@lahma lahma enabled auto-merge (squash) September 4, 2022 10:04
@lahma lahma merged commit 704a016 into sebastienros:main Sep 4, 2022
@lahma lahma deleted the reduce-memory-allocations-in-function-call branch September 4, 2022 10:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant