Ver Mensaje Individual
  #22 (permalink)  
Antiguo 11/07/2005, 23:40
Avatar de Eternal Idol
Eternal Idol
 
Fecha de Ingreso: mayo-2004
Ubicación: Lucentum
Mensajes: 6.192
Antigüedad: 21 años, 9 meses
Puntos: 74
El primero era mas que nada una enumeracion de las extensiones.

The expected behavior for an application compiled to use the SSE2 or SSE3 extensions is that the compiler would insert a library that can analyze processor capabilities. On application launch, that library would call CPUID with EAX containing a 1, and then check the appropriate bits to make sure the required extensions are supported. Only then would it allow execution to continue. That's the behavior for most compilers when using those types of optimizations.

You should know, by the way, that this isn't what the Intel compiler's little bit of runtime code does. With the -xN/-QxN and -xP/-QxP flags set, it checks the processor vendor string—and if it's not "GenuineIntel," it stops execution without even checking the feature flags. Ouch!


Esto es lo mas importante segun mi parecer, aca se describe la accion que podria ser punible. En vez de utilizar los bits definidos (creo que en su amplia mayoria por ellos mismos) para determinar las capacidades del microprocesador simplemente la determinan con la cadena que devuelve cpuid.

Fortunately, there are workarounds. There are other compiler switches that you can use to tell the Intel compiler to use hardware extensions without checking the processor vendor string. However, it's unclear if those other switches perform the same level of optimization.

Aca esta la controversia, porque si se le permite ejecutar sin hacer las comprobaciones en teoria deberia funcionar con la misma velocidad, excepto en las maquinas que no tengan esas capacidades donde se da el otro tema el programa produce una excepcion.

VEREDICTO FINAL DE UN SERVIDOR:

Culpables sin lugar a dudas, no pueden usar su cadena de GenuineIntel para determinar las capacidades del microprocesador para eso existen los flags correspondientes.
__________________
¡Peron cumple, Evita dignifica! VIVA PERON CARAJO