Articles of cpu architecture

¿Cuál es el motor de stack en la microarchitecture Sandybridge?

Estoy leyendo http://www.realworldtech.com/sandy-bridge/ y tengo algunos problemas para comprender algunos problemas: El rastreador de puntero de stack dedicado también está presente en Sandy Bridge y cambia el nombre del puntero de la stack, eliminando las dependencias en serie y eliminando una cantidad de uops. ¿Qué es realmente un dedicated stack pointer tracker ? Para Sandy […]

En las CPU de 32 bits, ¿es un tipo ‘entero’ más eficiente que un tipo ‘corto’?

En una CPU de 32 bits, un entero es de 4 bytes y un entero corto de 2 bytes. Si estoy escribiendo una aplicación C / C ++ que usa muchos valores numéricos que siempre se ajustarán dentro del rango provisto de un entero corto, ¿es más eficiente usar enteros de 4 bytes o enteros […]

Lost Cycles en Intel? Una incoherencia entre rdtsc y CPU_CLK_UNHALTED.REF_TSC

En las CPU recientes (al menos en la última década más o menos), Intel ha ofrecido tres contadores de rendimiento de hardware de función fija, además de varios contadores de rendimiento configurables. Los tres contadores fijos son: INST_RETIRED.ANY CPU_CLK_UNHALTED.THREAD CPU_CLK_UNHALTED.REF_TSC El primero cuenta las instrucciones retiradas, el segundo número de ciclos reales, y el último […]

Diferencia entre el núcleo y el procesador?

¿Cuál es la diferencia entre un núcleo y un procesador? Ya lo busqué en Google, pero solo tengo una definición de múltiples núcleos y procesadores múltiples, pero no coincide con lo que estoy buscando.

¿Por qué un booleano de 1 byte y no 1 bit de tamaño?

En C ++, ¿Por qué un booleano de 1 byte y no 1 bit de tamaño? ¿Por qué no hay tipos como enteros de 4 o 2 bits? Me estoy perdiendo las cosas de arriba cuando escribo un emulador para una CPU

Cómo usar las instrucciones Fused Multiply-Add (FMA) con SSE / AVX

Aprendí que algunas CPU Intel / AMD pueden multiplicarse simultáneamente y agregarse con SSE / AVX: FLOPS por ciclo para sandy-bridge y haswell SSE2 / AVX / AVX2 . Me gusta saber cómo hacer esto mejor en el código y también quiero saber cómo se hace internamente en la CPU. Me refiero a la architecture […]

¿Qué técnica de mapeo de caché se usa en el procesador intel core i7?

Aprendí sobre diferentes técnicas de mapeo de caché, como el mapeo directo, el mapeo asociado y la técnica de mapeo asociativo de conjuntos, y también aprendí las ventajas y desventajas. Pero tengo curiosidad por saber qué se usa en el procesador intel core i7 o AMD hoy en día. Y cómo se evolucionan las técnicas. […]

¿Cómo puedo determinar para qué plataforma se comstack un ejecutable?

Tengo la necesidad de trabajar con ejecutables de Windows que están hechos para x86, x64 e IA64. Me gustaría descubrir la plataforma mediante progtwigción examinando los archivos ellos mismos. Mi idioma de destino es PowerShell, pero un ejemplo de C # servirá. Si falla alguno de ellos, si conoce la lógica requerida, sería genial.

Símbolos indefinidos para la architecture x86_64 en Xcode 6.1

De repente, Xcode me lanzó este error en el momento de la comstackción: Undefined symbols for architecture x86_64: “_OBJC_CLASS_$_Format”, referenced from: objc-class-ref in WOExerciseListViewController.o ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation) Después de investigar un poco, puedo entender que una biblioteca […]

¿Cómo se progtwign x86 uops, exactamente?

Las CPU x86 modernas descomponen la secuencia de instrucciones entrantes en microoperaciones (uops 1 ) y luego progtwign estos uops fuera de orden a medida que sus entradas están listas. Si bien la idea básica es clara, me gustaría saber los detalles específicos de cómo están progtwigdas las instrucciones, ya que afecta las decisiones de […]