summaryrefslogtreecommitdiffstats
path: root/tests/benchmarks
Commit message (Collapse)AuthorAgeFilesLines
* Add a once-over unrolled fromLatin1 conversion (32 characters)Thiago Macieira2011-03-271-0/+46
| | | | | This was suggested by Matthias Kretz on my blog. It improves on GCC (one case up to 5%), but worsens on ICC (up to 5%).
* Add 16-byte loads of the Neon fromLatin1 functionsThiago Macieira2011-03-271-0/+68
|
* Remove the use of the QtTest baseline feature I revertedThiago Macieira2011-03-221-4/+4
|
* Use the ARM version of UTF-8 detection in the Neon codeThiago Macieira2011-03-221-16/+13
|
* Update the data files for the QString benchmark testThiago Macieira2011-03-223-204/+71503
| | | | Also add the Neon build flags
* Fix a bug in the SSE2 UTF-8 decoder.Thiago Macieira2011-03-221-0/+4
| | | | | If the multibyte sequence crossed the end of the SSE2 area, then len would have a wrong value and the data wouldn't be read.
* Add ARM Neon versions of fromLatin1 and fromUtf8Thiago Macieira2011-03-221-0/+192
| | | | | | | | | | | | | | | | | | | | | The fromLatin1 code is very simple, yet the handwritten assembly performs better due to the use of post-increments. The fromUtf8 code has two alternatives. Neon lacks an instruction similar to SSE2's _mm_movemask_epi8 (PMOVMSKB) which extracts one bit from each byte and stores it in a register. We used that in the UTF-8 code to detect bytes with the highest bit set. To compensate, we used two alternatives: 1) AND the comparison result with a vector containing {128, 64, ...,1 } Do 3 parallel-adds (VPADD.I8), which will make the mask propagate to the lowest component in the vector. Trick found in: http://hilbert-space.de/?p=22 (comment 16-17) 2) Extract the two words from the doubleword Neon register and do the work in ARM assembly. It looks like the latter version is performing better.
* Make this compile on Atom/Core2 (no SSE4) and on ARM (no SSE)Thiago Macieira2011-03-221-1/+18
|
* Add baselines and zeros to the benchmarks.Thiago Macieira2011-03-221-6/+13
|
* Add an UTF-8 conversion on trusted data and no BOM.Thiago Macieira2011-03-221-0/+48
| | | | | This assumes that there are no overlong sequences, no continuation characters without the leading, no missing continuations and no BOM.
* Make it easier to write a UTF-8 conversion on trusted dataThiago Macieira2011-03-221-38/+58
|
* Add the missing tests and 4-byte UTF-8 sequencesThiago Macieira2011-03-221-1/+23
|
* Improve the code and avoid unnecessary storesThiago Macieira2011-03-221-7/+9
| | | | | If there's an UTF-8 high byte in the first 8 bytes, don't try to save the latter 8 characters
* Add an UTF-8 conversion optimised for ASCII using SSE2Thiago Macieira2011-03-221-1/+54
| | | | | This code is 2x faster than the original UTF-8 code and within 35% of the pure Latin1 code
* Add an UTF-8 conversion code that is optimised for ASCIIThiago Macieira2011-03-221-2/+94
| | | | This code is ~1.5x faster than the original UTF-8 code
* Add a stateless copy of the Qt 4.7 UTF-8 codec.Thiago Macieira2011-03-221-0/+99
| | | | For whatever reason, this code is worse than the stateful code...
* Add UTF-8 code benchmarksThiago Macieira2011-03-221-0/+223
| | | | | | Also compare to the Latin1 functions. The UTF-8 algorithm in Qt 4.7 right now is 109% slower than the unoptimised Latin-1 algo, 120% than the Qt 4.7 SSE2 code
* Improve a little more the core loop and propagate to the other codeThiago Macieira2011-03-221-18/+22
| | | | | | Currently are that the "improved SSE2" version and the SSE4.1 version are yielding the best results, within 1% of each other. These results are around 20% better than the Qt 4.7 code.
* Reduce the number of operations in the main loopThiago Macieira2011-03-221-8/+7
| | | | | | The more operations there are, the more time it takes. More importantly, the more variables we touch, the more the compiler may want to use the stack instead of registers.
* Add an SSE4 version using PMOVZXBW and PSRLDQThiago Macieira2011-03-221-0/+22
|
* Attempt to improve the epilog codeThiago Macieira2011-03-221-19/+72
|
* Add two SIMD overcommit prologsThiago Macieira2011-03-221-0/+21
|
* Try to remove the non-determinism by moving the malloc() awayThiago Macieira2011-03-221-10/+15
|
* Optimise the prolog even furtherThiago Macieira2011-03-221-16/+33
|
* Try to improve the prolog by doing less operationsThiago Macieira2011-03-221-7/+7
|
* Add an unrolled prologThiago Macieira2011-03-221-1/+22
|
* Make the prolog function more genericThiago Macieira2011-03-221-12/+6
|
* Add an SSE2 alternative with prologThiago Macieira2011-03-221-0/+48
|
* Add some boundary/spill protectionThiago Macieira2011-03-221-4/+8
|
* Correct the code: use ushorts, not QCharThiago Macieira2011-03-221-4/+4
|
* Add the SSE2 code we have in Qt 4.7 to the benchmarkThiago Macieira2011-03-221-0/+26
|
* Add a test for QString::fromLatin1 performace alternativesThiago Macieira2011-03-225-11/+414
|
* Remove the __attribute__((optimize)) marksThiago Macieira2011-03-221-11/+11
|
* Add a script that generates a string table of 8-bitsThiago Macieira2011-03-221-0/+203
|
* Add a benchmark for QString::fromLatin1Thiago Macieira2011-03-221-0/+36
|
* Compile in C++0x modeThiago Macieira2011-03-221-10/+10
|
* add license headers to qhash_string benchmarkhjk2011-03-212-1/+40
|
* benchmarks: first shot at alternative implementation for qHash(QString)hjk2011-03-165-0/+435
|
* Update copyright year to 2011.Rohan McGovern2011-03-107-7/+7
| | | | | Reviewed-by: Trust Me (cherry picked from commit 774a3536b00c4d6e4c4c10b708e31b4373a338e3)
* Merge branch 'master' of scm.dev.nokia.troll.no:qt/qt-earth-staging into ↵Qt Continuous Integration System2011-03-043-4/+15
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | master-integration * 'master' of scm.dev.nokia.troll.no:qt/qt-earth-staging: (40 commits) Readded a ';;' that was removed by mistake. Fixed mkspec detection for Symbian. Removed javascript-jit from default symbian-gcce build. QAbstractSocket: Check for socket state on Unbuffered reads Corrected a mismerge in GCCE link parameters. QAbstractSocket: Check for engine validity on Unbuffered reads tst_qnetworkreply: fix the MiniHttpServer. tst_qnetworkProxyFactory: fix debug output. Fixed incorrect referral to an include file. tst_qnetworkreply: getErrors() only ignore warning for the specific test Check engine existence before increasing reference count Fixed library casing. Fix Q_INVOKABLE declared after Q_PROPERTY tst_qnetworkreply: small improvements QNAM: Add a warning for misuse of the file backend. Keep reference count for cached font engines in QTextEngine QNAM HTTP: Be more strict with HTTP channel state tst_qnetworkreply: Add a test for broken gzip encoding QNAM HTTP: Add qWarning() for double-finished() bug fix documentation typos in isLowSurrogate and requiresSurrogates ...
| * Merge branch 'master' of scm.dev.nokia.troll.no:qt/qt into earth-masteraxis2011-02-2419-2/+470
| |\ | | | | | | | | | | | | | | | Conflicts: src/network/access/qnetworkreplyimpl.cpp tests/auto/moc/tst_moc.cpp
| * | SSL backend: loat root certificates on demand on Unix (excluding Mac)Peter Hartmann2011-02-231-1/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, on initializing the first QSslSocket, we read all root certificates into memory (~ 150 files). Now, we tell OpenSSL where to find the root certificates, so that they can be loaded on demand (if supported, see 'man c_rehash' for details). Reviewed-by: Markus Goetz Task-number: QTBUG-14016
| * | Fix tst_v8Olivier Goffart2011-02-171-2/+2
| | |
| * | Fix tst_sunspider.cppOlivier Goffart2011-02-171-1/+1
| | | | | | | | | | | | It was unable to find the scripts
* | | Add qscriptobject and context2d to "trusted" benchmarksKent Hansen2011-03-021-1/+3
| |/ |/| | | | | Reviewed-by: Joao
* | Add QDir/tree benchmark to "trusted" listJoão Abecasis2011-02-101-1/+2
| |
* | Merge branch 'qt-master-from-4.7' of ↵Qt Continuous Integration System2011-02-102-0/+108
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | scm.dev.nokia.troll.no:qt/qt-integration into master-integration * 'qt-master-from-4.7' of scm.dev.nokia.troll.no:qt/qt-integration: (182 commits) Fixes XPASS Revert part of commit 7c1ab9b6a8 Fixed wrong casing of a Symbian library. Fixed wrong static library extension on Symbian. Fixed library casing. Remove dependencies to pre-Symbian3 platforms from Symbian3 packages My changes 4.7.2 Don't accept input methods when a TextEdit or TextInput is read only. Correct error message On windows xp using a higher port makes the declarativedebug* tests work Correct assert Fix qt.sis platform dependencies for Symbian^3 builds. Fix few QFileDialog static method issues in Symbian^3 Update QDeclarative DEF files for Symbian Export QDeclarativeRefCount so that symbian compiles. Make Flickable's wheel handling more like QAbstractScrollArea. Changing header or footer failed to delete the previous. Avoid index-out-of bounds related crash in Grid Move Qt.application docs into Qt global object page Add initial size to ListView in FolderListModel example ...
| * \ Merge remote-tracking branch 'origin/4.7' into qt-master-from-4.7Olivier Goffart2011-02-042-0/+108
| |\ \ | | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: demos/declarative/samegame/SamegameCore/samegame.js mkspecs/features/symbian/default_post.prf src/declarative/qml/qdeclarativeengine.cpp src/gui/text/qtextdocumentlayout.cpp src/plugins/plugins.pro src/s60installs/bwins/QtCoreu.def src/s60installs/bwins/QtGuiu.def src/s60installs/eabi/QtCoreu.def src/s60installs/eabi/QtGuiu.def src/s60installs/s60installs.pro tests/auto/declarative/declarative.pro tests/auto/declarative/qdeclarativedebug/tst_qdeclarativedebug.cpp tests/auto/declarative/qdeclarativepixmapcache/tst_qdeclarativepixmapcache.cpp tests/auto/declarative/qmlvisual/qmlvisual.pro
| | * Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-qml into qtquick11Martin Jones2011-01-19220-220/+220
| | |\
| | * \ Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-qml into qtquick11Martin Jones2010-12-012-0/+139
| | |\ \