Me gustaría identificar qué CPU está usando esta computadora portátil, en términos de nombres de código como "Ivy Bridge" y "Haswell". El pequeño logotipo de Apple en la esquina superior izquierda muestra información, pero no esta.
Me gustaría identificar qué CPU está usando esta computadora portátil, en términos de nombres de código como "Ivy Bridge" y "Haswell". El pequeño logotipo de Apple en la esquina superior izquierda muestra información, pero no esta.
Respuestas:
En primer lugar, no obtendrá el nombre de microarquitectura del procesador (Broadwell, Sandy Lake, Ivy Bridge, etc.) porque no es un esquema de marca prominente para los procesadores Intel. En contraste con Apple, el departamento de marketing elige comercializar activamente los nombres en clave de sus sistemas operativos (Mavericks, Yosemite, El Capitan). Es una convención de marketing, no técnica.
Para obtener una lista de todos los procesadores Intel y sus nombres de código, arquitecturas y especificaciones, la Lista de microprocesadores Intel de Wikipedia tiene una buena página.
Entonces, para responder a esta pregunta, voy a proporcionar tres métodos para averiguar qué CPU tiene, los dos primeros, que deberían ser buenos para la mayoría de los usuarios, y un tercer método en el que puede determinar el número de microarquitectura para que pueda ver en el sitio de soporte de Intel. Puede "saltar" a la sección que le corresponde.
Al hacer clic en el símbolo de Apple en la parte superior de la pantalla, seleccione Acerca de esta Mac
Obtendrá una pantalla que le ofrece una visión general de su sistema. Su procesador aparecerá en la lista aquí.
Al hacer clic en el botón marcado Informe del sistema ... (flecha verde) obtendrá un perfil completo de su sistema. En la primera página, le dará información más detallada sobre su máquina, incluida la información del procesador
Soy fanático de Terminal en general. Se puede acceder a casi todo lo que ve en la GUI en OS X de manera más rápida y precisa a través de la línea de comandos, en mi humilde opinión.
Para obtener el modelo de CPU exacto , incluido el número de microarquitectura, en Terminal, ejecute el siguiente comando:
sysctl -n machdep.cpu.brand_string
Obtendrá el procesador exacto que está utilizando. Por ejemplo, en mi iMac, el comando anterior responde con:
Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz
Luego puede hacer una búsqueda de i7-3770 y extraer el nombre del código y las especificaciones.
Solo como referencia, puede usar el comando Terminal:
system_profiler SPHardwareDataType
y obtenga un resultado que se parece a la pantalla que publiqué en la segunda sección, System Profiler :
Hardware Overview:
Model Name: iMac
Model Identifier: iMac13,2
Processor Name: Intel Core i7
Processor Speed: 3.4 GHz
Number of Processors: 1
Total Number of Cores: 4
L2 Cache (per Core): 256 KB
L3 Cache: 8 MB
Memory: 32 GB
Boot ROM Version: IM131.010A.B09
SMC Version (system): 2.11f14
Serial Number (system): XXXXXXXXXXXXXXXXXXX
Hardware UUID: XXXXXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX
(Crédito a dante12 a continuación)
Entonces, si necesitabas tu CPU o más comúnmente, tu Identificador de modelo , puedes usar el mismo comando junto con grep .
system_profiler SPHardwareDataType | grep Identifier
Responde de vuelta con
Model Identifier: iMac13,2
ark.intel.com
es capaz de decirme eso después de mirar hacia arriba i7-3770
)
Abra la Terminal y escriba o copie y pegue los siguientes comandos
system_profiler SPHardwareDataType | grep Processor
o
system_profiler SPHardwareDataType
o
sysctl -n machdep.cpu.brand_string
sysctl -a | grep cpu
Además, he encontrado un buen script en Github (Gracias a @ rbanffy ):
open http://www.google.com/?q=$(sysctl -n machdep.cpu.brand_string
| awk '{FS=" " ; print $2 "+" $3 "+" $4}')+site:ark.intel.com
$ sysctl -a | grep \.features\: | fmt -w 48
comando me ha ayudado para la salida de banderas de la CPU.
La CPU tiene su propia cadena de número de modelo incorporada. El software puede ejecutar la CPUID
instrucción con los parámetros correctos para copiar la cadena en los registros. La cadena será algo así como " Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz
". Puede obtenerlo desde la línea de comandos con
sysctl -n machdep.cpu.brand_string
En realidad, no conozco OS X. Respondo esto como alguien que a menudo se siente frustrado por los números de referencia en las respuestas SO que no mencionan el hardware. En Linux, algunas distribuciones se envían lscpu
y / o x86info
, pero ninguna de ellas decodifica el número de modelo en un nombre de código Intel tampoco. Los números siguen un patrón, por lo que es bastante fácil de decodificar (ver más abajo).
Ninguna de las respuestas existentes ha mencionado ningún método GUI que proporcione el número de modelo. Todos los métodos de la GUI solo le muestran "Core i7", que no es suficiente. Por favor, no le digas a la gente que tienes "un Core i7", porque eso solo hace perder el tiempo de todos .
"i7" podría ser cualquier cosa, desde Nehalem hasta Skylake. Hay grandes diferencias entre Nehalem y Sandybridge, y diferencias importantes de SnB a Haswell a Skylake.
Si alguien le pregunta en qué microarquitectura ejecutó su punto de referencia , la cadena del modelo de esa es una excelente respuesta que contiene más información que solo el nombre de la microarquitectura, así que simplemente cópielo y péguelo (por ejemplo, "CPU i7-3770 @ 3.40GHz").
La mayoría de las personas que le preguntan eso sabrán cómo decodificar números de modelo, así que no sienta que necesita resumirlo o buscarlo. Prefiero que alguien copie / pegue el número de modelo exacto, ya que puedo buscarlo en Google para conocer detalles como el tamaño de la memoria caché. ( http://ark.intel.com/ tiene una página para cada modelo, y generalmente aparecen en los resultados de búsqueda de Google. Sin embargo, no usan los nombres en clave).
Hay modelos "Pentium" y "Celeron" de cada microarquitectura, pero tienen AVX deshabilitado, por lo que las personas solo los usan para máquinas de ultra presupuesto.
Las CPU "i7 extreme" son una excepción a esto. Por ejemplo, i7-5960X sigue siendo Haswell, pero es de 8 núcleos (16 hyperthreads) con memoria de cuatro canales. IDK si Apple vende máquinas con tales CPU.
Wikipedia tiene excelentes tablas de números de modelo para cada microarquitectura. por ejemplo, puede buscar en la wikipedia x5690 de Google para encontrar rápidamente que un Xeon X5690 es un procesador de arquitectura Westmere .
Para obtener más información sobre las diferencias entre las tuberías de varias microarquitecturas , consulte artículos como este de Ars Technica sobre Haswell . Incluso los artículos de Wikipedia no son malos.
Para un punto de vista de arquitectura de CPU más técnico, vea los excelentes escritos de David Kanter en Sandybridge y Haswell .
El PDF de microarquitectura de Agner Fog es excelente si está analizando / ajustando el lenguaje ensamblador (o la salida del compilador), por ejemplo, tratando de dar sentido a los contadores de rendimiento.
Los manuales de optimización de Intel y AMD también tienen algunos detalles de microarquitectura, pero no siempre explican sus sugerencias de optimización de asm con el análisis de cómo funciona la microarquitectura. Por eso prefiero la guía de Agner Fog.
También vea el wiki de etiquetas Stackoverflow x86 , que he ampliado / mejorado mucho en el último año.
gcc o clang -march=native
pueden imprimir un nombre de código para usted , porque los nombres de las opciones de ajuste coinciden con los nombres de código uarch de Intel (por ejemplo -march=sandybridge
). Para AMD: -march=bdver2
= Piledriver = Bulldozer versión 2.
clang-3.5 -v -xc /dev/null -O3 -march=native -o- -E 2>&1 | grep -o 'target-cpu \w*'
En mis impresiones de sistemas Linux Core2: target-cpu core2
. Supongo que hará algo similar en OS X.
gcc -v -xc /dev/null -O3 -march=native -o- -E 2>&1 | grep -o 'arch=\w*'
en mi sistema Linux Core2 imprime:
arch=native
arch=core2 <----- This one
arch=native
Este comando se compila /dev/null
como C ( -xc
). gcc
/ clang
-v prints its internal commands as it runs them, with full command line args. Even with
-E (preprocessor-only), the
-xc option leads gcc to pass the full set of
-march = lo que sea -mmmx -msse2 ... `opciones.
grep -o
imprime solo la parte coincidente de las líneas que coinciden. \w*
coincide con 0 o más caracteres de palabras.
Necesita una versión suficientemente nueva de clang o gcc para reconocer la microarquitectura de su CPU y asignarla a un nombre en clave. Una versión antigua de gcc simplemente imprimirá algo como -march=core2
incluso para un Haswell, -mtune=intel
o algo así.
Otro enfoque similar es filtrar la salida asm de gcc's -fverbose-asm
, que incluye las opciones de optimización como comentarios. No sé un clang equivalente para esto.
gcc -xc /dev/null -O3 -fverbose-asm -march=native -o- -S | grep -o 'arch=\w*'
arch=core2
Esto funciona en un sistema Haswell: vea este ejemplo en Godbolt Compiler Explorer . Tenga -march=haswell
en cuenta el en la salida.
gcc
o clang
algo que uno esperaría encontrar en una Mac (no programadora)?
clang
solo está disponible después de instalar xcode. Besdies es suficiente para usar en clang
lugar declang-3.5
En el menú Apple (arriba a la izquierda de su pantalla) seleccione Acerca de esta Mac. Luego busque un botón que diga Más información, se abrirá una ventana con TODO acerca de la Mac, incluido su número de modelo (MacBook Pro 12.3 por ejemplo), luego use la aplicación MacTracker mencionada anteriormente o simplemente busque ese nombre y obtendrá esa información .
Vaya a uno de los sitios de actualización de Mac e ingrese su número de serie / número de modelo en Acerca de esta Mac.
Ejemplo http://www.everymac.com/ultimate-mac-lookup/
Ingrese el número de serie.
Ingrese la información de Catpcha.
Obtendrás las especificaciones de resumen
Haga clic en las especificaciones completas de Mac.
Y le dirá los detalles de los chips (22nm Haswell i5 4250U) además de las comparaciones con los modelos anteriores y posteriores.
La mejor manera que encontré para encontrar información sobre su CPU en una computadora Apple es ejecutar la utilidad MacCPUID de Intel. Lo puedes encontrar aquí .
Hay una aplicación para iOS y Mac llamada Mactracker . Muestra varias piezas de información sobre Mac.