Articles of cpu architecture

¿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 […]

Desoptimizar un progtwig para la tubería en las CPU de la familia Intel Sandybridge

He estado trabajando en mi cerebro durante una semana tratando de completar esta tarea y espero que alguien aquí pueda guiarme hacia el camino correcto. Déjame comenzar con las instrucciones del instructor: Su tarea es lo opuesto a nuestra primera tarea de laboratorio, que era optimizar un progtwig de números primos. Su propósito en esta […]

¿Por qué Skylake es mucho mejor que Broadwell-E para el rendimiento de la memoria de un único subproceso?

Tenemos un punto de referencia de rendimiento de memoria simple. Todo lo que hace es memcpy repetidamente para un gran bloque de memoria. Mirando los resultados (comstackdos para 64 bits) en algunas máquinas diferentes, las máquinas Skylake son significativamente mejores que Broadwell-E, manteniendo el sistema operativo (Win10-64), la velocidad del procesador y la velocidad de […]

FLOPS por ciclo para sandy-bridge y haswell SSE2 / AVX / AVX2

Estoy confundido sobre cuántos fracasos por ciclo por núcleo se pueden hacer con Sandy-Bridge y Haswell. Como lo entiendo con SSE, debería ser 4 flops por ciclo por núcleo para SSE y 8 flops por ciclo por núcleo para AVX / AVX2. Esto parece verificarse aquí. ¿Cómo logro el máximo teórico de 4 FLOP por […]

¿Por qué el tamaño de la memoria caché L1 es más pequeño que el de la caché L2 en la mayoría de los procesadores?

¿Por qué el tamaño de la memoria caché L1 es más pequeño que el de la caché L2 en la mayoría de los procesadores?