aboutsummaryrefslogtreecommitdiffstats
path: root/tests/auto/qml/qv4mm
diff options
context:
space:
mode:
authorOlivier De Cannière <olivier.decanniere@qt.io>2023-12-11 14:08:25 +0100
committerOlivier De Cannière <olivier.decanniere@qt.io>2023-12-20 08:38:26 +0100
commitd08ede57dd530a67c3420b3858fe39bf1e5eb598 (patch)
treea2880723e202afafeb7e58e10f373dd375f17dca /tests/auto/qml/qv4mm
parent65deeb3f5125a6091ca959b192d09127ee3a99b0 (diff)
tst_ecmascript: Run tests on separate processes instead of threads
Previously, tests were run in parallel on separate threads. This was faster than running them on only one but was still significantly slower than it could be, on Windows. This is due to them sharing the same heap and the fact that each memory allocation and free would temporarilly lock the heap for all other threads making the tests run much slower than on other platforms. This patch changes the way the test is run so that each js test file is run on a separate process. This ensures that the heap is no longer being shared by all test runners and reduces overhead significantly. The test runner processes listen for test data in JSON format over their standard input, run the test, return the results over their standard output and then wait for the next test data. tst_ecmascripttests on 13900k with 32 threads Debug MSVC Windows Debug GCC Linux threads: 569s 105s processes: 89s (~ -84%) 52s (~ -50%) On platforms where QT_CONFIG(process) returns false, the tests fallback to running on threads as before. Change-Id: Id51fc9d6e0d5ef0ae5c88f96b0119aa99e57f0fe Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Diffstat (limited to 'tests/auto/qml/qv4mm')
0 files changed, 0 insertions, 0 deletions