2009-09-26 4 views
13

In Visual Studio 2005 Ich ging hinein:Wie aktiviere ich den SSE/SSE2-Befehlssatz in Visual Studio 2008 (mit CMake)?

Ansicht -> Property Pages -> C/C++ -> Code-Generierung -> Aktivieren erweiterter Instruction Set

Aber in Visual Studio 2008? in Project > Properties > Configuration Properties > C/C++ > Code Generation > Enable Enhanced Instruction Set oder anhängen /arch:SSE (oder /arch:SSE2):

Vielen Dank im Voraus

Antwort

31

Wenn Sie SSE/SSE2 freuen Command Line > Additional Options.

Sie benötigen ein natives Projekt und mindestens eine .cpp-Datei, um auf dieses zugreifen zu können.

+0

Vielen Dank! Es ist kein natives Projekt, aber ich erstelle es mit CMake. – Angelo

+1

Wenn Sie die Projektdateien mit CMake neu generieren, werden die Einstellungen bei diesem Ansatz nicht gespeichert. Siehe meine Antwort für Details zu einer permanenten Reparatur ... – larsmoa

+0

@CatPlusPlus: Unter "Projekt> Eigenschaften> Konfigurationseigenschaften'Ich habe nur" Konfiguration' – user2284570

1

Es ist Ausbau-> Eigenschaften ... (denselben Weg wie oben)

+0

Vielen Dank für Ihre Antwort. Ich habe versucht, aber im Projekt -> Eigenschaften Ich habe: - Allgemeine Eigenschaften + Startprojekt + Projektabhängigkeiten + Quelldateien debuggen - Konfigurationseigenschaften + Konfiguration ich für die keine Option finden Befehlssatz. – Angelo

0

Wenn Sie den Inline-Assembler __asm { .... } verwenden, müssen Sie ihn nicht aktivieren.

Aber wenn Sie SSE aktivieren, müssen Sie vorsichtig sein. Es kann sein, dass der Code langsamer als normaler FPU-Code ist.

11

mittels CMake Sie könnten Folgendes CMakeLists.txt hinzufügen:

IF(MSVC) 
    ADD_DEFINITIONS(/arch:SSE) 
ENDIF(MSVC) 

oder /arch:SSE2.

+2

'Warnung: D9002: ignoriere unbekannte Option '/ arch: SSE2'' – mchiasson

+0

@mchiasson : Diese Meldung wird angezeigt, wenn Sie versuchen, die Option '/ arch: SSE2' beim Erstellen von' x64'-Code zu aktivieren. Dies sagt Ihnen im Grunde, dass Sie es nicht brauchen. 'SSE' /' SSE2' wird von [default in 'x64' Builds] verwendet (https://stackoverflow.com/q/1067630/670017). – ahmd0

Verwandte Themen