Habilitación de la compatibilidad de Windows 7 con Intel AVX
Plataformas afectadas
clientes: Windows 7 SP1
Servers: Windows Server 2008 R2 SP1
Impacto en las características
de gravedad de: baja
frecuencia- Baja
Descripción
Intel?de extensiones vectoriales avanzadas (AVX)? es una extensión de vector de punto flotante SIMD de 256 bits de la arquitectura Intel. Incluye extensiones para conjuntos de instrucciones y registros.
Microsoft ha desarrollado algunas mejoras de API, como las funciones XState, que permiten que las aplicaciones accedan a la información y el estado extendidos de las características del procesador, incluido AVX.
Escenarios de uso
Hay tres niveles generales de impacto potencial.
nivel 1: Aplicaciones que no usan directamente Intel AVX no verán ningún impacto en su funcionalidad aunque llamen a bibliotecas o usen compiladores que usen o generen extensiones de Intel AVX indirectamente. Esto representa en gran medida la mayoría de las aplicaciones.
nivel 2: aplicaciones avanzadas que usan explícitamente el conjunto de instrucciones de Intel AVX podrán acceder y cambiar el contenido del registro de AVX cuando se produzca una excepción de hardware. Un número muy pequeño de aplicaciones caería en esta categoría, ya que implica un conocimiento íntimo de la secuencia de instrucciones que se ejecuta en el momento de la excepción, como las aplicaciones con secciones escritas en lenguaje de ensamblado o aquellas que generan código de máquina en tiempo de ejecución (por ejemplo, runtimes de código administrado con compilación Just-In-Time).
nivel 3: aplicaciones del depurador podrán acceder y manipular el estado de AVX en la aplicación que se está depurando.
Cómo aprovechar las funcionalidades de características
nivel 1: No es necesario realizar ninguna acción para que las aplicaciones usen Intel AVX.
nivel 2: Aplicaciones de esta categoría tienen la opción de acceder y manipular el estado avX en el momento de la excepción desde sus filtros de excepciones. Después de obtener el contexto del procesador base a través de GetExceptionInformation, los filtros deben:
1. Compruebe el valor de la marca de CONTEXT_XSTATE. Esta marca indica la presencia de al menos una característica XState en el contexto.
2. Si este es el caso, llame a GetXStateFeaturesMask y pruebe el valor de la marca XSTATE_AVX en la máscara devuelta. Esto indica la presencia del estado de AVX en el contexto.
3. llamada a LocalXStateFeature para recuperar la ubicación real donde se almacena el estado de AVX.
nivel 3: No es necesario actualizar las aplicaciones existentes del depurador a menos que deseen acceder a los registros de Intel AVX:
1. Para determinar si AVX está habilitado, el depurador debe usar:
- GetEnabledXStateFeatures para obtener una máscara de características XState habilitadas en procesadores x86 o x64 para determinar qué características están presentes y habilitadas en el sistema antes de usar una característica de procesador XState o intentar manipular contextos XState
2. Si AVX está presente y desea recuperar y manipular el estado de AVX de la aplicación que se está depurando (por ejemplo, GetThreadContext y SetThreadContext), el depurador debe usar:
- InitializeContext (Función) para inicializar una estructura de contexto dentro de un búfer con el tamaño y la alineación necesarios
- Función CopyContext para copiar una estructura de contexto de origen (incluido cualquier XState) en una estructura de contexto de destino inicializada
3. Para probar, establecer y buscar el estado de AVX en un contexto de procesador, el depurador debe usar:
- LocateXStateFeature para recuperar un puntero al estado del procesador para una característica XState individual dentro de una estructura de contexto
- GetXStateFeaturesMask para devolver la máscara de las características XState establecidas dentro de una estructura de contexto
- SetXStateFeaturesMask para establecer la máscara de las características XState establecidas dentro de una estructura de contexto
Vínculos a otros recursos
- Para obtener información sobre las funciones XState en Windows SDK, consulte Funciones de depuración.
- Para obtener información general sobre las instrucciones y funcionalidades de Intel AVX, consulte Intel AVX: Nuevas fronteras en mejoras de rendimiento y eficiencia energética.