Increase print/visit performance#4312
Conversation
|
Hi @JoviDeCroock, I'm @github-actions bot happy to help you with this PR 👋 Supported commandsPlease post this commands in separate comments and only one per comment:
|
3b56584 to
354a64a
Compare
Co-Authored-By: Benjie <[email protected]>
354a64a to
e53c6ce
Compare
This comment has been minimized.
This comment has been minimized.
DetailsBenchmark output
🍳 Preparing HEAD... HEAD�[90m x �[0m�[32m43.44�[0m ops/sec �[90m±�[0m�[32m1.83�[0m�[36m%�[0m�[90m x �[0m2.18 MB/op�[90m (8 runs sampled)�[0m ⏱ Build Schema from Introspection HEAD�[90m x �[0m�[32m52.31�[0m ops/sec �[90m±�[0m�[32m0.91�[0m�[36m%�[0m�[90m x �[0m1.12 MB/op�[90m (11 runs sampled)�[0m ⏱ Execute Introspection Query �[32mHEAD�[0m�[90m x �[0m�[32m50.54�[0m ops/sec �[90m±�[0m�[32m1.20�[0m�[36m%�[0m�[90m x �[0m2.49 MB/op�[90m (8 runs sampled)�[0m ⏱ Parse introspection query �[32mHEAD�[0m�[90m x �[0m�[32m13,609�[0m ops/sec �[90m±�[0m�[32m0.13�[0m�[36m%�[0m�[90m x �[0m2.62 KB/op�[90m (35 runs sampled)�[0m ⏱ Print kitchen sink document �[32mHEAD�[0m�[90m x �[0m�[32m9,290�[0m ops/sec �[90m±�[0m�[32m0.21�[0m�[36m%�[0m�[90m x �[0m1.51 KB/op�[90m (24 runs sampled)�[0m ⏱ Many repeated fields HEAD�[90m x �[0m�[32m 99.2�[0m ops/sec �[90m±�[0m�[32m0.25�[0m�[36m%�[0m�[90m x �[0m525 KB/op�[90m (20 runs sampled)�[0m ⏱ Validate Introspection Query HEAD�[90m x �[0m�[32m562�[0m ops/sec �[90m±�[0m�[32m0.22�[0m�[36m%�[0m�[90m x �[0m270 KB/op�[90m (14 runs sampled)�[0m ⏱ Validate Invalid Query HEAD�[90m x �[0m�[32m505�[0m ops/sec �[90m±�[0m�[32m0.30�[0m�[36m%�[0m�[90m x �[0m326 KB/op�[90m (14 runs sampled)�[0m ⏱ Validate SDL Document HEAD�[90m x �[0m�[32m67.44�[0m ops/sec �[90m±�[0m�[32m0.92�[0m�[36m%�[0m�[90m x �[0m203 KB/op�[90m (11 runs sampled)�[0m ⏱ Visit all AST nodes HEAD�[90m x �[0m�[32m308�[0m ops/sec �[90m±�[0m�[33m3.86�[0m�[36m%�[0m�[90m x �[0m311 KB/op�[90m (19 runs sampled)�[0m ⏱ Visit all AST nodes in parallel HEAD�[90m x �[0m�[32m28.9�[0m ops/sec �[90m±�[0m�[32m0.50�[0m�[36m%�[0m�[90m x �[0m1.23 MB/op�[90m (7 runs sampled)�[0m |
This replaces our expensive method that changes the underlying V8 shape multiple times with a loop that preserves the identity as much as possible. ``` ⏱ Print kitchen sink document 1 tests completed. 2 tests completed. HEAD x 9,290 ops/sec ±0.21% x 1.51 KB/op (24 runs sampled) BASE x 2,645 ops/sec ±0.18% x 2.18 KB/op (11 runs sampled) ``` --------- Co-authored-by: Benjie <[email protected]>
This replaces our expensive method that changes the underlying V8 shape multiple times with a loop that preserves the identity as much as possible. ``` ⏱ Print kitchen sink document 1 tests completed. 2 tests completed. HEAD x 9,290 ops/sec ±0.21% x 1.51 KB/op (24 runs sampled) BASE x 2,645 ops/sec ±0.18% x 2.18 KB/op (11 runs sampled) ``` --------- Co-authored-by: Benjie <[email protected]>
This replaces our expensive method that changes the underlying V8 shape multiple times with a loop that preserves the identity as much as possible. ``` ⏱ Print kitchen sink document 1 tests completed. 2 tests completed. HEAD x 9,290 ops/sec ±0.21% x 1.51 KB/op (24 runs sampled) BASE x 2,645 ops/sec ±0.18% x 2.18 KB/op (11 runs sampled) ``` --------- Co-authored-by: Benjie <[email protected]>
This replaces our expensive method that changes the underlying V8 shape multiple times with a loop that preserves the identity as much as possible.