Utilizzare il terminale OSX per scoprire il set di istruzioni della CPU (AVX, SSE e simili)

4

Ho diverse macchine con OSX 10.12 e 10.13, che usano processori diversi. Sto cercando di ottenere da terminale, una stringa che può mostrarmi quali istruzioni della CPU sono supportate da quella macchina; quindi posso usare il software appropriato (alcuni software richiedono istruzioni specifiche per essere presenti sulla CPU, e se tale CPU non li supporta, il software funzionerà in modo errato o crash).

Ho controllato l'interrogazione del profiler del sistema tramite terminale, ma posso ottenere solo il tipo e il modello della CPU, non il set di istruzioni della CPU che supporta; e se dovessi farlo a mano, ottenendo ogni modello di CPU e verificando online, ci vorrebbero ore.

  • le istruzioni della CPU sono queste istruzioni come MMX, AVX, SSE; che permettono alla tua CPU di funzionare in un certo modo. Con anni, vengono aggiunti al set di istruzioni della CPU di base, in modo che la CPU moderna in questi giorni supporti più di 15 diversi tipi di istruzione.
posta heyjude 02.11.2018 - 21:53
fonte

1 risposta

4

Invio

sysctl -a | grep cpu.feat

ottieni una lista come

machdep.cpu.features: FPU VME DE PSE TSC MSR PAE MCE CX8 APIC SEP MTRR PGE MCA CMOV PAT PSE36 CLFSH DS ACPI MMX FXSR SSE SSE2 SS HTT TM PBE SSE3 PCLMULQDQ DTES64 MON DSCPL VMX EST TM2 SSSE3 CX16 TPR PDCM SSE4.1 SSE4.2 x2APIC POPCNT AES PCID XSAVE OSXSAVE TSCTMR AVX1.0
machdep.cpu.feature_bits: 2286390173542120447

In alternativa (evitando grep ed essendo molto più veloce, il che potrebbe aiutarti a eseguirlo spesso all'interno di uno script)

sysctl machdep.cpu.features
sysctl machdep.cpu.features machdep.cpu.feature_bits

ti dà direttamente la lista (o entrambi).

    
risposta data 03.11.2018 - 10:19
fonte

Leggi altre domande sui tag