Quantes CPU té un Mac?
Navegació principal
En processadors multicore convencionals, com les CPU d'Intel·ligència emprades en models anteriors de Mac, tots els nuclis són iguals. Tots els fils que s' aparellen als nuclis és, per tant, una qüestió d'equilibris de la seva càrrega, en el que Porslàngües terme multiprocessat simètric (SMP).
A la finestra de la CPU del monitor d' activitat, la càrrega principal (com la CPU%) es mostra en contra del temps, amb els valors més antics de l' esquerra. Els nuclis estranys de la meitat esquerra són reals, i mostren els vuit nuclis de l'Intel·ligència de 8cre Xeon W sota una càrrega pesada. Fins i tot els nuclis de la meitat dreta són els nuclis virtuals d'hiperepant, emesos per fer front a la càrrega més forta.
Les CPU a Apple Silicon fitxes són diferents, ja que contenen dos tipus de nucli diferents, un dissenyat per a un alt rendiment (performància, bases de tempesta de foc), l'altre per a l'eficiència de l'energia (eficàcia, E o nuclis de l' Icelandia). Per a aquests que funcionen bé, els fils han de ser assignats pel tipus de nucli, una tasca que es pot deixar a les aplicacions i processos, ja que està en Astahi Linux, o gestionat pel sistema operatiu, ja que està en macOS. Aquest article explica com les macOS gestiona l'assignació de cor en tots els xips M1 de sèries M1, en els termes Multiprocessat asimètrica (Gímit, encara que altres prefereixen anomenar això Ordinador heterogènia).
Arquitectura
Hi ha dos tipus de nucli de la CPU en fitxes de M1:
- Els nuclis contenen aproximadament la meitat de les unitats de processament intern de nuclis, i tenen una freqüència màxima de 2064 MHz.
- Els nuclis tenen una freqüència màxima més alta, de 3204 M1, o 3228 M1 Pro/Max/Ultra.
Hi ha tres configuracions dels nuclis de la CPU disponibles en fitxes de M1:
- L'original M1, amb 4 E i 4 P nuclis, a l'Aire MacBook, MacBook Pro 13 polzades, iMac i Mac mini;
- M1 Pro i Max, amb 2 E i 8 nuclis, al MacBook Pro- 14 i 16 centímetres, i Mac Studio Max;
- M1 Ultra, amb 4 E i 16 P nuclis, a la Mac Studio Ultra.
Alguns llibres MacBook Pro 14 polzades tenen un xip reduït M1 Pro amb només 6 nuclis en comptes de 8.
Per simplificar la gestió de nuclis, el macOS els divideix en grups de 2-4 nuclis del mateix tipus. Malauradament, el nombre de nuclis a un nivell del sistema, com es mostra per eines com ara cmetricsunit synonyms for matching user input , i com es mostra en el monitor d'activitats és diferent. Per a la consistència amb l'últim, aquí segueixo el seu nombre central, però els grups de números segons el sistema. Les tres fitxes tenen els següents cúmuls funcionals funcionals com a de macOS Monter 123.1:
- L'original M1 té un seguit de cada tipus de nucli, E0 i P0, cadascun contenint 4 nuclis del mateix tipus;
- M1 Pro i Max tenen un grup de 2 nuclis EE (E0), i dos grups que contenen 4 nuclis P (P0, P1);
Tots els nuclis en qualsevol grup donat s'executen a la mateixa freqüència, i generalment (però no sempre) tenen la seva càrrega equilibrat dins del clúster. Hi ha ocasions en què es distribueix la càrrega de forma més desigual, i en casos excepcionals, certs fils es poden assignar a només un nucli dins d'un grup.
Control de fils
A diferència d'Asahi Linux, el macOS no proporciona accés directe als nuclis, tipus de nucli o clústers, almenys no en API públiques. En comptes d'això, aquests són generalment gestionats per la central de la central usant els arranjaments del servei (QoS), que s'utilitza per determinar les polítiques de gestió de fils.
Els fils amb el QoS més baix només s' executaran al clúster E, mentre que els amb més alt QoS es poden assignar a E o grups P. L' últim comportament es pot modificar dinàmicament per la política de tasques Eina d' ordres o per setpority() Funció en codi. Aquests poden limitar els fils més alts QoS a l'execució tan sols en els nuclis, o en E o P nuclis. No obstant això, ells no s' ha pogut alterar la regla que els fils més baixos de QoS només s' executen al clúster E.
Les macOS adoptaven una estratègia en la qual la majoria, si no tot, de les seves tasques de fons s'executen a baix QoS. Inclou còpies de seguretat automàtica de la màquina del temps i manteniment de l' índex Spotlight. Això també s' aplica a la compressió i la descompressió realitzada per l' eina d' arxiu: per exemple, si descarregueu una còpia del codi X en format Xip, decompressió que triga molt de temps al codi està consternat amb els nuclis dels E, i no hi ha manera de canviar això.
Fils de fons
Els fils més baixos es carreguen i s' executen de manera diferent en M1 i M1 Pro/Max xips, ja que tenen diferents mides de clúster.
En el xip M1 original, amb 4 nuclis, QoS 9 fils s' executen amb la freqüència central establerta a 1000 MHz (1 GHz). El que passa en el M1 Pro/Max amb el seu nucli 2 E és diferent: si hi hahotel només hi ha un fil, els astrònoms s'executen en el grup amb una freqüència de 1000 MHz, però si hi ha dos o més fils, la freqüència s'eleva a 2064 MHz. Això assegura que el clúster E en el M1 Pro/Max proporciona almenys el rendiment de les tasques de fons com que en el consum original M1,, malgrat la diferència en la mida dels cúmuls.
Les excepcions comuns a això són fils de processos més baixos com còpia de seguretat , que també s'està endarrerint i s'estan executant amb una freqüència de prop de 1000 M1 MHz en el M1 Pro/Max.
Fils d' usuari
Tots els fils amb un QoS superior a 9 són manejats de forma similar, amb les diferències resultants de la prioritat donada a les cues.
Com a màxim els fils QoS són escollits per a ser executats en qualsevol dels tipus principals i en qualsevol clúster central, la seva gestió diferencia entre M1 i M1 Pro/Max variants. A l'original M1, amb el seu únic clúster, es poden distribuir vuit fils als dos grups de grups disponibles, amb 4 fils disponibles a cada lloc. Quan hi hagi 4 o menys fils, s' executaran en el clúster cada vegada que sigui possible, i el clúster E només serà reclutat quan hi hagi fils més alts de QoS a la cua. Els nuclis s'executen a una freqüència de 3 GHz, i els nuclis de 2 GHz, dues vegades la freqüència usada normalment per QoS 9 fils.
M1 Pro i Max xips tenen un total de tres clústers, dos de 4 polones cada un, més la meitat de dos grups E. Amb els 4 fils a la cua, seran assignats al primer clúster P (P0); els fils 5- 8 aniran al segon grup P (P1), que d' altra manera restaran descarregats i inactius per a l'economia. Si hi ha dos fils més a la cua, s' executaran en els nuclis d' E. Les Frequeències establertes són el màxim per al tipus de nucli, a 3228 MHz a P0 i P1, i el 2064 MHz a E0.
Les fitxes M1 Ultra tenen un total de cinc grups, cadascun amb 4 nuclis. Segueixen la mateixa política que les fitxes M1 Pro/Max, però amb els 4 grups P que s'utilitzen abans que s' usi E0.
Hi ha dues situacions en les que el codi aparenta executar exclusivament sobre un únic nucli, encara que: durant el procés d' arrencada, abans que el nucli inicial i executa les altres nuclis, el codi s' executa en un únic nucli actiu. L'altra situació és quan s' està descarregant l'actualització de l'Ablioprepartor mcOS abans d' iniciar el procés d' instal· lació. En les fitxes M1 Pro/Max, els 5 fils es donen un nucli de residència activa, indicat com a 100% CPU, però es limita a un únic nucli P, el primer en el primer dels dos cúmuls P (P0, etiquetat per sota de Core 3).
Aquesta distribució inusual de residència activa es manté durant els 30 minuts de preparació per instal·lar l'actualització.
Patrons sota càrrega
Els efectes de les polítiques macOS es mostren en els següents exemples més típics preses des de la finestra del monitor d'activitats de la CPU.
Aquest xip original M1 és subjectet a una sèrie de carregats des de l' increment de números d'infusions intensives de la CPU. Els seus dos grups, E0 i P0, són distingits per les caixes blaves. Amb 1- 4 fils a alta QoS (des de l' esquerra), la càrrega es realitza totalment en el clúster P0, després amb 5- 8 fils al clúster E0 pren la seva part.
Aquest xip M1 Pro està sota pes i canviant la càrrega de molts fils, alguns dels quals estan en segon pla QoS, mentre que altres estan en més alt QoS. Mentre que la major part de la càrrega està suportat pels 2 nuclis del clúster E0, P0 també està carregada per molt de temps, i P1 és reclutat per prendre una mica del cim.
He reordenat els nuclis mostrats en aquest exemple des d'un M1 Ultra per separar-los en els seus grups, amb E0 a dalt, i P0 a P3 en dues columnes de sota. Els carregadors es mostren aquí típics durant els primers minuts després d' iniciar l' accés, amb càrrega pesada a E0 i P0, que ve al P1-3 durant el primer pic.
Una part important d' informació sobre el nucli M1 no (encara) proporcionat pel monitor d' activitats és freqüència de clúster. Un clúster executant- se a la CPU 100% (equivalal a residència activa) amb una freqüència de menys de 1000 MHz completa les instruccions a menys de la meitat del mateix cúmul a la CPU 100% i una freqüència de 2064 MHz. Malauradament, l' únic mitjà accessible d' obtenir informació de freqüència en aquest moment és l' eina d' ordres cmetricsunit synonyms for matching user input .
Un resum de la gestió de nuclis de la CPU en el M1, M1 Pro i Max s'aconsegueix en el diagrama de sota. Mentre completi la informació sobre la M1 Ultra, l'incorporaré a la revisió següent. Si teniu un M1 Ultra, us familiaritzeu cmetricsunit synonyms for matching user input I m'agradaria ajudar, m'alegro de treballar amb tu.
Amb Apple esperava anunciar la successora de la seva sèrie M1 al pròxim juny de juny, serà interessant veure la seva arquitectura principal i les estratègies ofertes per maculOS per gestionar-la.
Li estic molt agraït a en Walt per proporcionar informació i la captura de pantalla de l'Y Ultra sota càrrega.
25 Comentaris
Gràcies. Reiteritzo la meva gratitud per a tu Manveen IIll explica més per correu electrònic, però estaria encantat de poder col·laborar amb les mesures de freqüència en uns dies quan tingui més temps. Howard.
Gràcies. No sabia si Apple anava a optar per un o dos grups. Com que això és una qüestió de com el macOS assigna fils i controla la freqüència, no crec que hi hagi Amplia qualsevol problema amb el clúsmestre de tots dos xips d'aquesta manera. No obstant això, ja que no hi havia una manera anterior de gestionar dos grups E, que haurien posat nous problemes, de manera que el clúster sol té sentit. Howard.
Una cosa interessant que he notat és que el codi executant-se a P-cores que dóna al planificador (p. ex. L'ús de l'Yzptread_yeld_np() o pstd: aquesta_thread:yeld(), que es demociona a l'E-cos. Això pot resultar en un rendiment inesperat, per exemple, en mesurar el rendiment de les barreres OpenMP (hi ha, establir KMP_USE_ YIELD=0 per a l' hora d' execució de l'OpenMP).
Interessant mirant la CPU Història del meu i9 sota Catalina. Es veu clarament que funciona esbiaixant-se als nuclis, i minimitzar la seva feina en els hiperfils. També sembla que prefereix el COre i altres nuclis. Puc enviar-te una pel·lícula del que veig si vols.
Gràcies. L' Hyper-reading només s'hi prometreà quan es carreguin els nuclis de l'Alliberal, tal com es mostra. La planificació normalment pretén produir més o menys una càrrega igual, però a vegades sembla afavorir certs nuclis. A mesura que ells són molt iguals, no fa cap diferència, a diferència d'una M1 amb E i P nuclis. Howard.
Gràcies pels seus esforços continuats. produeixs més en jubilar-te que molts autors de temps complet. Observar els nuclis del meu M1 Ultra és interessant. A menys que la càrrega vagi amb Xcode o lògic, el nucli 8 a través de 10 mostra una petita càrrega i el segon conjunt de 8 nuclis de rendiment mostra NO carregar. Com podeu dir, això és molt diferent del comportament Intel Mac.
Gràcies per un article interessant sobre l'ús del nucli. Saps si Apple donarà suport a multiprocessat simètric sota el control del programa? Per exemple, en un programa de traçat de raigs u pot usar el motor de neó per obtenir una velocitat de quatre vegades més alta amb un punt flotant de precisió. Es pot obtenir una altra millora de 8 bits usant els 8 nuclis d'un M1 Pro en paral·lel?
Buscant altres blocaires tecnològics amb un estil d'escriptura en profunditat i va trobar aquest post. Ben escrit excel·lentment! És agradable poder llegir més endavant com està dissenyat el xip M1. L'eficiència i el poder és increïble, i ho vas explicar de la mateixa manera. - M'alegra seguir-te. Esperant més aquests tipus d'articles.
Un amic té un dels llibres de M1 Pro xips amb només 6 bases P en comptes de 8 dígits, i la seva gràfica d'història de la CPU no mostra el tipus, suggereix que en lloc d'això no s'aixen els E-cres en comptes de 2 P?
Les dues variants disponibles són 6P+2E, o 8P+2E. Bàsicament són essencialment el mateix xip, crec, però en la versió més barata, dos dels vuit nuclis de P no va passar l'examen, així que estan deshabilitats. Això hauria de donar un total de 8 nuclis. Aquest monitor d'activitats és possible, però podeu comprovar fàcilment la informació del sistema, o usar l' eina d'ordres dinàmics. Howard.
Artículos Relacionados:
- Quantes CPU té el meu ordinador Mac?
- Quants nuclis té una CPU?
- Quantes CPU té una pissarra?
- Quin ordinador només té una CPU?
- Processador -