System.TestSSE
Delphi
TestSSE: Cardinal; { 0: no SSE, 1st bit: SSE available, 2nd bit: SSE2 available }
C++
extern DELPHI_PACKAGE unsigned TestSSE;
Propriétés
Type | Visibilité | Source | Unité | Parent |
---|---|---|---|---|
variable | public | System.pas System.hpp |
System | System |
Description
TestSSE représente la fonctionnalité SSE (Streaming SIMD Extensions) sur l'ordinateur utilisé.
TestSSE peut comporter une combinaison des valeurs suivantes :
- 0 - pas de SSE. La CPU n'a pas de fonctionnalité SSE.
- 1 - seule la fonctionnalité SSE est disponible.
- 2 - SSE2 est disponible.
Conseil : L'unité System vérifie uniquement la disponibilité de SSE et SSE2. Pour détecter les fonctionnalités SSE3 et les dernières fonctionnalités SSE, ajoutez l'unité System.Math à la section uses de votre code source.
L'unité System.Math réinitialise la variable TestSSE conformément à la combinaison d'indicateurs ci-dessous. L'unité System.Math définit les constantes CPU suivantes :
seSSE = $0001; { SSE instruction set is available }
seSSE2 = $0002; { SSE2 instruction set is available }
seSSE3 = $0004; { SSE3 instruction set is available }
seSSSE3 = $0008; { Supplemental SSE3 instruction set is available }
seSSE41 = $0010; { SSE4.1 instruction set is available }
seSSE42 = $0020; { SSE4.2 instruction set is available }
sePOPCNT = $0040; { POPCNT instruction is available }
seAESNI = $0080; { AES instruction set is available }
sePCLMULQDQ = $0100; { PCLMULQDQ instruction is available }
Remarque : Toutes les CPU d'architecture X64 disposent au moins des fonctionnalités SSE et SSE2.