Comando para obter núcleos de cpu no LINUX IA64

1

Eu tentei cat /proc/cpuinfo , mas não há "núcleos cpu" que funcionam no LINUX, embora cat /proc/cpuinfo | grep "cpu cores"

Ajude-me a obter um comando para "núcleos cpu" no LINUX IA64

    
por Abhishek Simon 28.10.2011 / 06:59

4 respostas

3

lscpu exibe esta informação. Parte do código-fonte de lscpu é aqui .

Parece que o lscpu é exibido em /sys/devices/system/cpu e conta o número de diretórios cpu? . Portanto, se você não quiser confiar em um comando externo para determinar o número de CPUs, você poderá fazer isso sozinho em um script ou aplicativo.

Eu fiquei com preguiça e parei de ler antes de descobrir como determinar o número de núcleos, soquetes, núcleos por soquete, threads por core e todas essas coisas boas, mas se você ler o código nesse link você pode descobrir .

    
por 11.12.2011 / 19:18
0

A intel tem algum código de exemplo em seu site (o tarball está no topo da página) . Faça o download e compile-o, e ele deverá enumerar seus processadores. Eu não tenho nenhum sistema itanium, então eu não pude testá-lo, mas usei este código quando tive dúvidas sobre sistemas.

    
por 28.10.2011 / 19:31
0

Você tem o dmidecode instalado? Esse problema surgiu para mim e eu precisava da mesma informação que você está pedindo, e um de meus colegas de trabalho sugeriu dmidecode .

# dmidecode -t processor | grep "Core Count"
Core Count: 4
Core Count: 4

Isso indicaria que existem 2 processadores, com 4 núcleos cada.

A informação completa disponível para um processador é semelhante:

Handle 0x0005, DMI type 4, 40 bytes
Processor Information
Socket Designation: LGA771/CPU2
Type: Central Processor
Family: Xeon
Manufacturer: Intel
ID: 7A 06 01 00 FF FB EB BF
Signature: Type 0, Family 6, Model 23, Stepping 10
Flags:
    FPU (Floating-point unit on-chip)
    VME (Virtual mode extension)
    DE (Debugging extension)
    PSE (Page size extension)
    TSC (Time stamp counter)
    MSR (Model specific registers)
    PAE (Physical address extension)
    MCE (Machine check exception)
    CX8 (CMPXCHG8 instruction supported)
    APIC (On-chip APIC hardware supported)
    SEP (Fast system call)
    MTRR (Memory type range registers)
    PGE (Page global enable)
    MCA (Machine check architecture)
    CMOV (Conditional move instruction supported)
    PAT (Page attribute table)
    PSE-36 (36-bit page size extension)
    CLFSH (CLFLUSH instruction supported)
    DS (Debug store)
    ACPI (ACPI supported)
    MMX (MMX technology supported)
    FXSR (Fast floating-point save and restore)
    SSE (Streaming SIMD extensions)
    SSE2 (Streaming SIMD extensions 2)
    SS (Self-snoop)
    HTT (Hyper-threading technology)
    TM (Thermal monitor supported)
    PBE (Pending break enabled)
Version: Intel(R) Xeon(R) CPU           E5405  @ 2.00GHz
Voltage: 1.4 V
External Clock: 1333 MHz
Max Speed: 5000 MHz
Current Speed: 2000 MHz
Status: Populated, Enabled
Upgrade: Slot 1
L1 Cache Handle: 0x0008
L2 Cache Handle: 0x0009
L3 Cache Handle: Not Provided
Serial Number: Not Specified
Asset Tag: Not Specified
Part Number: Not Specified
Core Count: 4
Core Enabled: 4
Thread Count: 4
Characteristics: None

Portanto, há uma tonelada de informações que você pode tirar do dmidecode.

    
por 10.11.2011 / 18:36
0

Se você tem a estrutura /proc compatível com POSIX, você pode fazer isso:

$ num_cores=$(grep -c '^processor' /proc/cpuinfo)
    
por 11.11.2011 / 02:55

Tags