| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Reviewed-by: Trust Me
|
|
|
|
|
| |
Reviewed-by: Trust Me
(cherry picked from commit ac5c099cc3c5b8c7eec7a49fdeb8a21037230350)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The previous code tried to do caching of queries with constraints too,
but it's usecase was rather limited.
The caching worked for the simple case of
effectiveSizeHint(Qt::PreferredSize, QSize(10, -1));
effectiveSizeHint(Qt::PreferredSize, QSize(10, -1)); // uses cache
The problem was that if somebody called this sequence:
effectiveSizeHint(Qt::PreferredSize, QSize(10, -1));
effectiveSizeHint(Qt::PreferredSize, QSize(-1, -1));
effectiveSizeHint(Qt::PreferredSize, QSize(10, -1));
Each call would disregard the cache because the constraint was
different.
Now the pattern is used in the qgridlayoutengine itself when we
calculate hfw: (yes, height-for-width).
First, we ask for the horizontal size hints with no constraints.
Then, we'll ask for the vertical size hints with constraints.
Since horizontal and vertical ultimately comes from the same function
(effectiveSizeHint) it will invalidate the cache each time.
The solution is to add another cache for the sizeHints with
constraints.
The most notable improvement is in the hfw, nested case. Result:
RESULT : tst_QGraphicsLinearLayout::heightForWidth():"hfw, nested":
546 msecs per iteration (total: 546, iterations: 1)
RESULT : tst_QGraphicsLinearLayout::heightForWidth():"hfw, nested":
0.000029 msecs per iteration (total: 62, iterations: 2097152)
Improvement: 18,827,586 times faster (!!)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
SSSE3 provides two tools to improve the blending speed over SSE2:
-palignr
-byte permutation
The alignement is enforced on src and dst with palignr to always make
aligned access.
The extraction of the alpha mask is done with a byte permutation in
order to save two instructions per cycle.
On Atom, this patch gives between 0% (aligned src) to 10% of
improvement (unaligned 4 and 12 bytes).
On Core 2, this patch gives consistently 8% to 10% of improvement
for every miss-alignment.
Reviewed-by: Samuel Rødal
|
|
|
|
|
|
| |
On Atom, comp_Source is 280% faster with the SSE2 implementation.
Reviewed-by: Andreas Kling
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Converting from RGB encoded on 24bits to RGB encoded on 32 bits is
quite inefficient.
This type of conversion is common for some image format.
The patch implement the conversion with SSSE3. This reduce by 3 the
number of instructions, pushing the bottleneck to memory bandwidth.
On Atom N450, the new benchmark is 40% faster for scanlines of
2000 pixels, 30% faster for scanlines of 32 pixels, and 15% slower
for small images (3 and 8px).
Reviewed-by: Olivier Goffart
|
|
|
|
| |
Task-number: QT-3613
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* '4.7' of scm.dev.nokia.troll.no:qt/qt-qml: (65 commits)
Fix QTextDocument::markContentsDirty()
Replace 4.6 in all .qdocconf files
Resetting bindings through debugger interface
Fix crash with invalid role indexes
Make test pass and fix docs following removal of SpringFollow
Remove autotests of depracted element SmoothedFollow
doc improvements
Clean up at the end of each test.
Improve test reliability.
Fix crash
Follow -> Behavior
Added some documentation to spring animation
Fix spring animation
Update QtDeclarative def files
Fix exponential behavior of QTextCursor::removeSelectedText
Optimization: change signal/slot to function call
Don't show warning for attempts to load pixmaps asynchronously
Remove Image::pixmap property. QML applications should use
Update QmlChanges.txt
Don't double delete cancelled pixmap cache requests
...
|
| | |
|
|/
|
|
|
|
|
|
| |
The commit beba018814b35c4bd032e6b9fa948e4bac34c59a introduce conversion
from ARGB32 to ARGB32_PM with SSE2.
This patch add a benchmark for this type of usage, and change the
name to use lowercase for SSE2 (style convention).
|
| |
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2: (33 commits)
Compile fix on Windows.
Remove an unnecessary assert.
Documentation for the Pad Navigator Example.
New Pad Nagivator example implementation.
Skip definition of wintab functions in case of QT_NO_TABLETEVENT.
Made curve tesselation be dynamically adjusted based on transform.
Modified QPainter and QPixmap benchmarks to use raster pixmaps.
Stabilize tst_QWidgetAction::visibilityUpdate
Fix compiler warning in QT_REQUIRE_VERSION
Stabilize tst_QColumnView::parentCurrentIndex
Really fix tst_QDockWidget::taskQTBUG_9758_undockedGeometry on Linux
Fix typos in Elastic Nodes example documentation.
Made paint engine texture drawing work in GL ES 2 and updated docs.
Opt out of visual-config size checks with extension
Fix off-by-one in text layouts and widget size hints on Mac
Stabilize tst_QDockWidget::taskQTBUG_9758_undockedGeometry
Mark QFileDialog::Options as a Q_FLAGS
fix tst_QDockWidget::taskQTBUG_9758_undockedGeometry on Linux
Fixed scrolling bugs in widget graphics effect backend.
Fixed source pixmap bug in widget graphics effect backend.
...
|
| |
| |
| |
| |
| |
| |
| | |
These benchmarks are not written in a way that supports robust
benchmarking of asynchronous pixmap backends.
Reviewed-by: Bjørn Erik Nilsen
|
|/
|
|
|
|
|
|
|
| |
These test cases are not considered reasonable for a small screen device
(625 widgets). Patching the QWidget code to use iteration rather than
recursion is considered too risky, as the code is performance critical.
Task-number: QTBUG-8512
Reviewed-by: Bjoern Erik Nilsen
|
|
|
|
|
|
|
| |
3cebc028 replaced QStaticText::setMaximumSize with
QStaticText::setTextWidth.
Reviewed-by: Eskil Abrahamsen Blomfeldt
|
|
|
|
|
|
|
| |
Further optimize for the common case where numRects == 1. Benchmarks
included.
Reviewed-by: Samuel
|
|\
| |
| |
| |
| | |
Conflicts:
src/gui/styles/qs60style_s60.cpp
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Many of the benchmarks generate executables with same names as
the autotests. This is a big problem for Symbian, where all binaries
are stored into single directory. Renamed benchmark targets to include
'bench' in their name to ensure no overlap in target names.
Part of QtP delta reduction effort.
Reviewed-by: Liang Qi
|
| | |
|
| |
| |
| |
| | |
Reviewed-by: Gunnar Sletta
|
|\ \
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
configure.exe
examples/multimedia/audioinput/audioinput.cpp
src/corelib/io/qfsfileengine.cpp
src/gui/egl/qegl_wince.cpp
src/gui/egl/qeglproperties.cpp
src/gui/egl/qeglproperties_p.h
src/gui/embedded/directfb.pri
src/gui/kernel/qapplication_win.cpp
src/gui/painting/qdrawutil.cpp
src/opengl/qgl_p.h
src/sql/drivers/odbc/qsql_odbc.cpp
src/sql/drivers/odbc/qsql_odbc.h
tests/auto/auto.pro
tests/auto/qgl/tst_qgl.cpp
translations/assistant_adp_ru.ts
|
| |
| |
| |
| |
| |
| | |
Test were changed to run in reasonable time on Windows Mobile.
Also some test were skipped for instance those using OpenGL.
OpenGL support for Windows Mobile is a forthcoming feature.
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
master-integration
* 'master' of scm.dev.nokia.troll.no:qt/qt-s60-public: (81 commits)
Added addMMPRules for adding conditional MMP_RULES
Allow overriding TARGET.EPOCHEAPSIZE with MMP_RULES
Build break fix for commit d8465414e6fd543cfc20e732030dedd8d2bc685f.
Fix for cetest.
Speed up compilation of this test with MSVC.
New benchmark for QDirIterator
Backporting auto-test utility header from master.
Fix a signed/unsigned comparison compiler warning
Removed an export that shouldn't be exported.
Reduced the code and memory footprint of the keymap.
Enabled Qt key events to work also when native key code is missing.
Cleaning of the patch to QTBUG-3168
Patch to QTBUG-3168
Crash in QGraphicsScenePrivate::setFocusItemHelper
Pass the right arguments to QApplication in GraphicsView benchmark.
Improvements to itemview keypad navigation in S60.
Revert changes made in scroll_sys().
Fix SymbianMakefileGenerator::absolutizePath for clean builds
Set the roleNames of proxy models to the roleNames of the source model.
Add benchmarks for accessing meta-object properties via QScriptValue
...
|
| |\ \
| | |/
| | |
| | |
| | |
| | | |
Conflicts:
qmake/generators/symbian/initprojectdeploy_symbian.cpp
qmake/generators/symbian/symmake_abld.h
|
| | |
| | |
| | |
| | |
| | | |
Failed to run the test with "-style" because wrong arguments were
passed to QApplication constructor.
|
| | |
| | |
| | |
| | |
| | | |
This commit also removes the complexToplevelResize test; it is not
suitable for automated testing as the output is too unstable.
|
| | | |
|
| | |
| | |
| | |
| | | |
These fixes mainly concern compiling issues.
|
|/ /
| |
| |
| | |
QDeclarativeXXX.
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
configure.exe
src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp
src/opengl/qgl.cpp
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
A couple of improvements have been made:
* Use single precision floats for the traces.
* Reduce the number of variant wrapped transforms by introducing a new
translate command.
* Reduce the number of bytes streamed per image / pixmap draw command.
* Add versioning info to qttrace files to be more future proof.
Reviewed-by: Gunnar Sletta
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Now we can easily add trace files generated with -graphicssystem
trace for
benchmarking on all relevant platforms.
Reviewed-by: Gunnar Sletta
|
|\ \ \
| | |/
| |/|
| | |
| | | |
Conflicts:
src/corelib/codecs/qtextcodec.h
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
First, it doesn't make much sense to have platform specific code like
this in a benchmark. Second, the Q_OS_SYMBIAN specific values makes more sense
anyways, so we can use them on all platforms.
|
| | | |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | | |
setRotation() is already covered by the rotate() test case.
|
| | |
| | |
| | |
| | |
| | |
| | | |
The item's transform is identity by default, so trying to set an
indentiy transform again does too little in order to measure it with
stable results.
|
| | |
| | |
| | |
| | |
| | |
| | | |
The benchmark must report stable numbers in order to be useful. E.g. we
can not accept instability of +-20% between each run (with the same
configuration in the same environment).
|
|\ \ \
| |/ /
| | /
| |/
|/|
| |
| | |
Conflicts:
mkspecs/common/symbian/symbian.conf
src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp
tools/assistant/tools/assistant/helpviewer.cpp
|
| |
| |
| |
| | |
We already run in fullscreen if Q_OS_SYMBIAN or Q_WS_MAEMO_5 is defined.
|
| |
| |
| |
| | |
Reviewed-by: Trust Me
|
| |
| |
| |
| |
| | |
Also add support for the command line options that were supported in the
old benchmark (see 2f389a95f5b9e4c7130aa333586d803b639bf259).
|
| |
| |
| |
| | |
Reviewed-by: Trust Me
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Widgets and use cases are externally developed and imported from:
git://gitorious.org/+qt-performance-test-developers/qt/qt-performance-test-developers-clone.git
(master branch, tests/benchmarks/uimodels/GraphicsViewBenchmark)
I couldn't simply import everything because the benchmarks were heavily
dependent on an internal measuring tool involving QtScripts and whatnot,
not suitable for inclusion in the Qt repository. Everything is now converted
into proper QTestLib compatible benchmark functions.
|