diff options
author | Paul Lemire <paul.lemire350@gmail.com> | 2017-03-08 15:59:49 +0100 |
---|---|---|
committer | Paul Lemire <paul.lemire@kdab.com> | 2017-08-07 13:50:27 +0000 |
commit | 8227e3c9f1d72e34fdf2c6427c6d278d0eeb32cd (patch) | |
tree | d4ea676d912505a4441da43a46fb8103cfd24499 /config_help.txt | |
parent | 3da85ccec3823f9f197720acb3965a8c79145479 (diff) |
Add -qt3d-simd option to enable SIMD instructions
The SSE2 SIMD option is enabled by default if the respective
qtbase feature is enabled. In this sense, this is an opt-out
feature. The SIMD instructions can also be extended to take
advantage of AVX2 instructions by passing -qt3d-simd avx2.
The use of SIMD instructions in Qt 3D can be disabled entirely
with -qt3d-simd no.
Note that these options *force* the use of SIMD instructions.
This differs in semantics from the qtbase configure options for
SIMD. In qtbase, there is also a runtime check on CPU capabilities
before using SIMD instructions (except SSE2 on x86 or x86_64).
Profiling in Qt 3D found that such function pointer indirection
totally negated any performance gains. Therefore, given the need
to choose this at compile time, this commit introduces a new
option with these semantics.
[ChangeLog][Qt3DCore][General] Added support for SIMD instructions
to accelerate matrix and vector operations within Qt 3D. At
present, SSE2 and AVX2 are supported. By default, SSE2
instructions are enabled. To additionally enable the use of AVX2
instructions, configure with the -qt3d-simd avx2 option. Passing
-no-sse2 disables SSE2 use in QtCore, QtGui and Qt3D. Configuring
with -no-qt3d-simd disables SIMD in Qt 3D only.
Change-Id: Ifcc05004f39a420aa578c3e09d1236dea1fb1990
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'config_help.txt')
-rw-r--r-- | config_help.txt | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/config_help.txt b/config_help.txt index 8f055023d..50fd93229 100644 --- a/config_help.txt +++ b/config_help.txt @@ -3,6 +3,7 @@ Qt3D options: -assimp .............. Select used assimp library [system/qt/no] -qt3d-profile-jobs ... Enable jobs profiling [no] -qt3d-profile-gl ..... Enable OpenGL profiling [no] + -qt3d-simd ........... Select level of SIMD support [no/sse2/avx2] -qt3d-render ......... Enable the Qt3D Render aspect [yes] -qt3d-input .......... Enable the Qt3D Input aspect [yes] -qt3d-logic .......... Enable the Qt3D Logic aspect [yes] |