aboutsummaryrefslogtreecommitdiffstats
path: root/tests/benchmarker/valgrindrunner.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Switch qbs-benchmarker to QbsIvan Komissarov2021-07-031-1/+1
| | | | | | | | | | | | This allows to better utilize processor cores when building qbs as well as use ccache when set via profile: profiles.gcc.cpp.compilerWrapper: "/usr/bin/ccache" profiles.gcc.cpp.toolchainInstallPath: "/usr/bin" profiles.gcc.qbs.toolchain: "gcc" Change-Id: I4ba622777f1dd5d7c650a3d7399534043094c0b9 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* qt6: use lambdas to pass callables to QtConcurrent::runIvan Komissarov2020-11-041-10/+14
| | | | | | | | It is not possible to use "this" as the 1st argument for run() method since it should be QThreadPool now Change-Id: I69d4291b8a748ea62de7e3b486f8e3e046cd38b4 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Apply 'modernize-pass-by-value' fix-itIvan Komissarov2020-01-281-2/+2
| | | | | | | | | Also, treat this warning as error This amends 936eee744db9b2fd1b9b66d168d80a113002aad2 Change-Id: I372c3b11baa08375d581052282f4546b2ba2e057 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Fix -Wclazy-inefficient-qlist-softIvan Komissarov2019-05-201-3/+6
| | | | | | | | | QLists were used with types that bigger than sizeof(void*) which lead to extra allocations Change-Id: Id716c6b4919f9a0ad62e1d2972319a600785afc5 Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Use QStringLiteral more where it is possibleDenis Shienkov2019-02-251-9/+9
| | | | | | Change-Id: I7419cc3fbc1e8776de3943852dcedab4c95d1c32 Reviewed-by: Anton Kudryavtsev <antkudr@mail.ru> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* STL compatibility: use push_back() instead of operator<<Jake Petroules2017-11-161-4/+4
| | | | | | | ...and operator+= Change-Id: I848610544cacc2d187d601c0db567703c3e68c93 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* STL compatibility: use empty() instead of isEmpty()Jake Petroules2017-11-161-1/+1
| | | | | | | This is a simple find and replace with manual sanity check. Change-Id: Iab6d46dcc3be246d1650aae2b1730f933b717be8 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* STL compatibility: use size() instead of count()Jake Petroules2017-11-151-3/+3
| | | | | | | This is a simple find and replace with manual sanity check. Change-Id: Ia733befe7885dc3c643d5c84e151312bfd86a3c6 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Replace all uses of QMutex/QMutexLocker with std::mutex/std::lock_guardJake Petroules2017-03-221-2/+3
| | | | | | Change-Id: I5b4518cb241d556f062f85cadd6c8f61887c8ae6 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Change style of #includes of Qt headersJake Petroules2017-01-041-6/+9
| | | | | | | | | | | | | | | | By using q<lowercase>.h headers, we become more bootstrap-friendly, as no full syncqt is required any more. In the same go, prefix all includes with the module name. This helps grep-based analysis of which parts of Qt are used and where. It's also consistent with Qt's public headers (where syncqt enforces the style). Testdata and examples are excluded from the change, as they are not relevant for bootstrapping. Change-Id: I9539b1d795e87fca6e5fc6c91acbb775b79208d9 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* qbs_benchmarker: Fix interpretation of massif outputChristian Kandeler2016-11-161-1/+1
| | | | | | | We mistakenly read the "extra" value rather than the "total" one. Change-Id: I06e584ffffb535687d72111ca7a884c94dac2878 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Update license headersIikka Eklund2016-08-291-16/+14
| | | | | | | | | | Patch-set 2 includes *.cpp *.c Every source file needs to have up-to-date license headers in order to pass ci. Change-Id: Ie6e493097af6f7dd6a8adff170eb856f496e689e Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* Benchmarker: Make valgrind trace child processesChristian Kandeler2016-07-281-2/+3
| | | | | | | Otherwise, we won't catch performance regressions introduced by Probes. Change-Id: Ia48848d6f7e328cdbd83065958900f9b45335900 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* Replace 'the Qt build suite' with 'Qbs' in copyright notices.Jake Petroules2016-06-061-1/+1
| | | | | | Change-Id: I885d94bb14b325dc36767a840ebdb0be1fb59dd2 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Add benchmarking tool.Christian Kandeler2015-02-171-0/+243
Takes two qbs repo states, runs callgrind and massif on different phases of the build process for each of them and informs the user of the relative performance of these operations. I suggest running this tool before committing anything that could conceivably impact performance. Note that we have similar regression detection functionality on our build machines, but it's better to spot such problems before pushing a change. Example output (for commits 04df1532c4 and f53d724eec building qbs itself): ========== Performance data for Resolving ========== Old instruction count: 1931242543 New instruction count: 1457438375 Relative change: -25 % Old peak memory usage: 1710721 Bytes New peak memory usage: 1509879 Bytes Relative change: -12 % ========== Performance data for Rule Execution ========== Old instruction count: 2924308821 New instruction count: 2890322188 Relative change: -2 % Old peak memory usage: 2520740 Bytes New peak memory usage: 2488058 Bytes Relative change: -2 % ========== Performance data for Null Build ========== Old instruction count: 572213104 New instruction count: 517813513 Relative change: -10 % Old peak memory usage: 1964455 Bytes New peak memory usage: 1774279 Bytes Relative change: -10 % Change-Id: I1f05c647d204b6cacf3539c8ecbf13633b757cf7 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>