Uh oh!
There was an error while loading. Please reload this page.
perf_hooks: implement performance.now() with fast API calls - #50492
Conversation
nodejs-github-bot
commented
Oct 31, 2023
nodejs-github-bot
commented
Oct 31, 2023
devsnek
commented
Nov 1, 2023
I haven't kept up with fast calls lately but originally the double return type was only supported on some architectures. Do we know that this is actually optimizing the call everywhere? |
joyeecheung
commented
Nov 1, 2023
Haven’t really looked into if it’s always optimized but I think fast APIs are not guaranteed to always be hit anyway, that’s why the slow fallback callbacks are required. |
Uh oh!
There was an error while loading. Please reload this page.
devsnek
commented
Nov 1, 2023
@joyeecheung i think my only concern would be whether this was, in practice, a regression on any of our supported platforms. maybe a benchmark run could double check? |
We only have benchmark CI on Ubuntu x64 but here is a CI run https://ci.nodejs.org/view/Node.js%20benchmark/job/benchmark-node-micro-benchmarks/1469/
JSCallReducer should just skip generating fast calls for signatures that are not supported on the running platform, that's why the slow callback is required. If a regression can be caused by running a fast call on a platform it cannot optimize, that sounds more like an internal bug of V8... |
joyeecheung
commented
Nov 3, 2023
From benchmark CI: |
nodejs-github-bot
commented
Nov 3, 2023
nodejs-github-bot
commented
Nov 4, 2023
nodejs-github-bot
commented
Nov 6, 2023
nodejs-github-bot
commented
Nov 7, 2023
nodejs-github-bot
commented
Nov 14, 2023
nodejs-github-bot
commented
Nov 15, 2023
nodejs-github-bot
commented
Nov 15, 2023
nodejs-github-bot
commented
Nov 17, 2023
nodejs-github-bot
commented
Nov 17, 2023
Landed in 8c7fe47 |
PR-URL: #50492 Reviewed-By: Vinícius Lourenço Claro Cardoso <contact@viniciusl.com.br> Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com> Reviewed-By: Bryan English <bryan@bryanenglish.com> Reviewed-By: Chengzhong Wu <legendecas@gmail.com> Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By: Stephen Belanger <admin@stephenbelanger.com>
PR-URL: nodejs#50492 Reviewed-By: Vinícius Lourenço Claro Cardoso <contact@viniciusl.com.br> Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com> Reviewed-By: Bryan English <bryan@bryanenglish.com> Reviewed-By: Chengzhong Wu <legendecas@gmail.com> Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By: Stephen Belanger <admin@stephenbelanger.com>
PR-URL: #50492 Reviewed-By: Vinícius Lourenço Claro Cardoso <contact@viniciusl.com.br> Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com> Reviewed-By: Bryan English <bryan@bryanenglish.com> Reviewed-By: Chengzhong Wu <legendecas@gmail.com> Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By: Stephen Belanger <admin@stephenbelanger.com>
PR-URL: #50492 Reviewed-By: Vinícius Lourenço Claro Cardoso <contact@viniciusl.com.br> Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com> Reviewed-By: Bryan English <bryan@bryanenglish.com> Reviewed-By: Chengzhong Wu <legendecas@gmail.com> Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By: Stephen Belanger <admin@stephenbelanger.com>
PR-URL: #50492 Reviewed-By: Vinícius Lourenço Claro Cardoso <contact@viniciusl.com.br> Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com> Reviewed-By: Bryan English <bryan@bryanenglish.com> Reviewed-By: Chengzhong Wu <legendecas@gmail.com> Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By: Stephen Belanger <admin@stephenbelanger.com>
Local benchmark numbers: