Linux-소프트웨어를 통해 메모리 속도를 식별 할 수있는 방법이 있습니까?


9

소프트웨어를 통해 메모리 속도를 식별 할 수있는 방법이 있습니까? 저는 Fedora 9를 사용 중이며 현재 가지고있는 DIMM의 속도를 확인하려고합니다.

'lshw'를 시도했지만 속도가 표시되지 않습니다. 나는 마더 보드가 3 가지 다른 속도를 지원한다는 것을 알고 있지만 거기에 무엇이 있는지 모르고 상자를 끄고 싶지 않습니다.

어떤 아이디어?

감사,

편집 : dmidecode에 따라 램이 '30ns'인 것으로 나타났습니다. 보드가 400, 533, 667Mhz RAM 만 지원한다면 어떻게 33MHz가 될 수 있습니까?

편집 2 : 다른 도구가 있습니까?



편집 3 : 실제로 항복하여 몇 분 동안 전원을 끄고 사건을 시작했습니다. 이 모델 - 그것은 667 메가 헤르츠 밝혀졌다 http://www.directron.com/rm12864aa667.html . 실제로 소프트웨어를 통해 667이라는 것을 알 수 없었지만 HD의 대답은 작업에 가장 적합한 도구 인 것처럼 올바른 것으로 표시했습니다.




다음은 demidecode --type 메모리의 출력입니다.

# dmidecode 2.7
SMBIOS 2.4 present.

Handle 0x0008, DMI type 5, 20 bytes.
Memory Controller Information
    Error Detecting Method: 64-bit ECC
    Error Correcting Capabilities:
        None
    Supported Interleave: One-way Interleave
    Current Interleave: One-way Interleave
    Maximum Memory Module Size: 1024 MB
    Maximum Total Memory Size: 2048 MB
    Supported Speeds:
        70 ns
        60 ns
        50 ns
    Supported Memory Types:
        DIMM
        SDRAM
    Memory Module Voltage: 3.3 V
    Associated Memory Slots: 2
        0x0009
        0x000A
    Enabled Error Correcting Capabilities:
        None

Handle 0x0009, DMI type 6, 12 bytes.
Memory Module Information
    Socket Designation: DIMM0
    Bank Connections: 9 11
    Current Speed: 30 ns
    Type: Unknown FPM Parity SDRAM
    Installed Size: 1024 MB (Single-bank Connection)
    Enabled Size: 1024 MB (Single-bank Connection)
    Error Status: OK

Handle 0x000A, DMI type 6, 12 bytes.
Memory Module Information
    Socket Designation: DIMM1
    Bank Connections: 9 11
    Current Speed: 30 ns
    Type: Unknown FPM Parity SDRAM
    Installed Size: 1024 MB (Single-bank Connection)
    Enabled Size: 1024 MB (Single-bank Connection)
    Error Status: OK

Handle 0x002F, DMI type 16, 15 bytes.
Physical Memory Array
    Location: System Board Or Motherboard
    Use: System Memory
    Error Correction Type: None
    Maximum Capacity: 4 GB
    Error Information Handle: Not Provided
    Number Of Devices: 2

Handle 0x0031, DMI type 17, 27 bytes.
Memory Device
    Array Handle: 0x002F
    Error Information Handle: Not Provided
    Total Width: 64 bits
    Data Width: 64 bits
    Size: 1024 MB
    Form Factor: DIMM
    Set: None
    Locator: DIMM0
    Bank Locator: BANK0
    Type: SDRAM
    Type Detail: Synchronous
    Speed: Unknown
    Manufacturer: Manufacturer0
    Serial Number: SerNum0
    Asset Tag: AssetTagNum0
    Part Number: PartNum0

Handle 0x0033, DMI type 17, 27 bytes.
Memory Device
    Array Handle: 0x002F
    Error Information Handle: Not Provided
    Total Width: 64 bits
    Data Width: 64 bits
    Size: 1024 MB
    Form Factor: DIMM
    Set: None
    Locator: DIMM1
    Bank Locator: BANK1
    Type: SDRAM
    Type Detail: Synchronous
    Speed: Unknown
    Manufacturer: Manufacturer1
    Serial Number: SerNum1
    Asset Tag: AssetTagNum1
    Part Number: PartNum1

기계는 어떤 공급 업체입니까? 그들의 사이트에서 찾을 수 없습니까?
MDMarra

아니요, 맞춤형 기계
barfoon

답변:


18

dmidecode는 당신이 찾고있는 도구입니다.


여기에 많은 정보가 있지만 속도는 ns입니다 .MHz로 속도를 원하십니까?
barfoon

dmidecode는 ns 및 MHz의 속도를 제공하지만 필요한 경우 몇 초의 산술 또는 실행 단위로 변환을 수행합니다.
womble


1
30ns 메모리 = 33MHz? 내 수학이 맞습니까? 1 / (30 / 100) = Hz에서의 속도
barfoon

3
@barfoon : 예, 30ns == 33MHz. 빠른 계산은 1000 / (ns) == 속도 (MHz)입니다.
womble

13

데비안에서는 lshw 가 그 정보를 알려줍니다.

# lshw -version
B.02.13
# lshw -short -C memory
H/W path             Device     Class       Description
=======================================================
/0/1                            memory      128KiB BIOS
/0/5/6                          memory      20KiB L1 cache
/0/5/7                          memory      1MiB L2 cache
/0/27                           memory      System Memory
/0/27/0                         memory      256MiB DIMM DDR Synchronous 400 MHz (2.5 ns)
/0/27/1                         memory      256MiB DIMM DDR Synchronous 400 MHz (2.5 ns)
/0/27/2                         memory      256MiB DIMM DDR Synchronous 266 MHz (3.8 ns)
/0/27/3                         memory      256MiB DIMM DDR Synchronous 400 MHz (2.5 ns)
/0/28                           memory      Flash Memory
/0/28/0                         memory      512KiB Chip FLASH Non-volatile
/0/0                            memory      
/0/2                            memory      

이것은 훌륭하지만 내 버전에서는 설명에 속도가 표시되지 않습니다. 어쨌든 감사합니다
barfoon

2

메모리 섹션에 대한 dmidecode 출력을 게시 할 수 있습니까? ( dmidecode-타입 메모리 )

이것을 읽고 싶을 수도 있습니다 : http://www.howtoforge.com/dmidecode-finding-out-hardware-details-without-opening-the-computer-case

"NS"는 메모리가 응답 할 수있는 속도 인 "나노초"를 나타냅니다. 숫자가 낮을수록 속도가 빠릅니다. 불행히도 이것은 정확한 Mhz 번호를 참조하지 않습니다. DMIDECODE는 Mhz도 출력해야합니다. 출력의 맨 아래 또는 dmidecode --type memory | grep Mhz


dmidecode의 버전을 2.8 이상으로 업그레이드하는 것이 좋습니다. 여기에서 rpm을 얻을 수 있습니다 : icewalkers.com/rpm/dmidecode/fedora-core-9/download/… rpm -i dmidecode * rpm Ver. 2.7은 메모리가 실행되는 Mhz 표시를 지원하지 않습니다.
David Rickman

1

메모리 속도를 실제로 벤치마킹하려면 페이지 오류와 페이지 테이블의 레이아웃이 결과에 많은 비중을두기 때문에 32 비트 프로세서 386 보호 모드에서는 사용할 수 없습니다.

가장 좋은 방법은 메모리 실제 주소에 직접 액세스 할 수있는 16 비트 "실제 모드"로 벤치 마크를 코딩하는 것입니다.

쉽게 사용자 정의 할 수있는 멋진 부팅 코드를 보려면 GRUB 부트 로더 stage1 소스를 확인하십시오. stage1은 하드 디스크의 첫 512 바이트에 상주하는 MBR입니다. 소스 디렉토리 stage1 / stage1.S 파일에서 찾을 수 있습니다. 많은 의견이 있고 쉽게 이해할 수 있습니다.

MBR이 필요에 맞게 사용자 정의되면 다음 방법을 사용하여 컴파일하십시오.

$ BOOT=mbr
$ gcc -O2 -fno-builtin -nostdinc -falign-jumps=1 -falign-loops=1 -falign-functions=1 -Wundef -g -c $BOOT.S
$ gcc  -g  -nostdlib -Wl,-N,-Ttext,7C00 -o $BOOT.exec  $BOOT.o  
$ objcopy -O binary $BOOT.exec $BOOT

이제 x86 MBR이 준비되었습니다. 실제 머신에서 코드를 실행하기 전에 Qemu 또는 Bochs와 같은 가상 머신에서 코드를 테스트하는 것이 바람직합니다. 또한 컴파일 / 디버깅주기가 쉬워집니다.

그것이 도움이되기를 바랍니다.


1
기계를 열지 않고도 RAM의 주파수가 얼마인지 알고 싶어합니다.
MDMarra

1

운이 좋으면 찾고있는 도구가 손전등입니다. 일부 메모리는 케이스를 열고 라벨에 붙은 스티커를보고 볼 수 있습니다. 같은 생각이 그것에 얼마나 쉽게 귀하의 경우에 전적으로 의존, 당신은 당신이있는 한으로 컴퓨터 전원을 끌 필요가 없습니다 정말 정말 정말 조심. 나는 당신이 기계 내부에서 일하는 데 얼마나 경험이 있었는지 모르겠지만, 이것이 리눅스 소프트웨어 명령을 사용하여 그것을 알아낼 수 없을 때 시도하는 다음 것입니다.


1

편집 : dmidecode에 따라 램이 '30ns'인 것으로 나타났습니다. 보드가 400, 533, 667Mhz RAM 만 지원한다면 어떻게 33MHz가 될 수 있습니까?

나는 이것이 다음과 같은 것 같아요 :

SIMM / DIMM의 각 개별 칩은 30ns 또는 33MHz에서 실행됩니다. SIMM 당 8 개의 칩이 있으므로 8 x 33MHz = 266MHz; 또는 DIMM 당 16 개의 칩으로 533MHz를 제공합니다.

따라서 각 칩은 33MHz에서 실행되지만 전체 메모리 모듈은 533MHz에서 데이터를 전달할 수 있습니다.


나는이 답변이 가장 의미가 있다고 생각합니다. dmidecode의 출력을 위에 올렸습니다
barfoon

불행히도보고 된 속도가 30ns이고 실제 메모리 속도가 667MHz와 같은 것을 보았을 때 그렇게 간단하지 않습니다 ... 그래서 나는 그 둘 사이의 명확한 관계가 확실하지 않습니다.
olefebvre

@pgs-Synchronous Dram은 그렇게 작동하지 않습니다. 모든 칩은 병렬로 액세스됩니다. 이 30ns는 행 및 열 주소 대기 시간을 고려하여 첫 번째 단어에 액세스하는 총 시간 일 가능성이 큽니다. 첫 번째 단어에 액세스하는 데 총 30ns가 걸리더라도 후속 단어는 훨씬 빠릅니다. 최신 CPU는 캐시, 분기 예측 및 기타 최적화를 사용하여 이러한 대기 시간을 숨기려고 많은 노력을 기울입니다.
마크 부스

1

나는 이것이 조금 늦다는 것을 알고 있지만 :

지원되는 타이밍을 가져 와서 반으로 줄이면 주어진 비율 인 30에 맞습니다. 그런 다음 반으로 나누고 10000을 나누면 (800, 666, 571.4)가됩니다.

타이밍과 데이터 전송률 간의 연결이 복잡 할 수 있지만 왜 그런지 모르겠습니다. 또한이 중 하나는 데이터 속도 가 두 배일 수 있습니다 .


1

분명히 말하면, 마지막에 보이는 33mhz 메모리는 바이오스 메모리입니다. :)

    Type: Flash
    Type Detail: Non-Volatile
    Speed: 33 MHz
    Manufacturer: ATMEL

더 나은 도구를 사용하려면 lm_sensors ( https://wiki.archlinux.org/index.php/Lm_sensors ) 및 i2c-tools ( https://www.archlinux.org/packages/?name=i2c- 도구 )

그런 다음 dimm-decode를 사용하여 메모리에 대한 자세한 내용을 얻을 수 있습니다 (출력 샘플).

Decoding EEPROM: /sys/bus/i2c/drivers/eeprom/0-0055
Guessing DIMM is in                             bank 6

---=== SPD EEPROM Information ===---
EEPROM CRC of bytes 0-116                       OK (0x4422)
# of bytes written to SDRAM EEPROM              176
Total number of bytes in EEPROM                 256
Fundamental Memory type                         DDR3 SDRAM
Module Type                                     RDIMM

---=== Memory Characteristics ===---
Fine time base                                  2.500 ps
Medium time base                                0.125 ns
Maximum module speed                            1066MHz (PC3-8533)
Size                                            16384 MB
Banks x Rows x Columns x Bits                   8 x 15 x 11 x 64
Ranks                                           4
SDRAM Device Width                              4 bits
tCL-tRCD-tRP-tRAS                               7-7-7-20
Supported CAS Latencies (tCL)                   8T, 7T, 6T

---=== Timing Parameters ===---
Minimum Write Recovery time (tWR)               15.000 ns
Minimum Row Active to Row Active Delay (tRRD)   7.500 ns
Minimum Active to Auto-Refresh Delay (tRC)      50.625 ns
Minimum Recovery Delay (tRFC)                   160.000 ns
Minimum Write to Read CMD Delay (tWTR)          7.500 ns
Minimum Read to Pre-charge CMD Delay (tRTP)     7.500 ns
Minimum Four Activate Window Delay (tFAW)       37.500 ns

---=== Optional Features ===---
Operable voltages                               1.5V, 1.35V
RZQ/6 supported?                                Yes
RZQ/7 supported?                                Yes
DLL-Off Mode supported?                         Yes
Operating temperature range                     0-95C
Refresh Rate in extended temp range             1X
Auto Self-Refresh?                              No
On-Die Thermal Sensor readout?                  No
Partial Array Self-Refresh?                     No
Thermal Sensor Accuracy                         0
SDRAM Device Type                               0

---=== Physical Characteristics ===---
Module Height (mm)                              30
Module Thickness (mm)                           4 front, 4 back
Module Width (mm)                               133.5
Module Reference Card                           F

---=== Registered DIMM ===---
# DRAM Rows                                     2
# Registers                                     2
Register manufacturer                           IDT
Register device type                            SSTE32882
Register revision                               0x61
Heat spreader characteristics                   00
SSTE32882 RC0/RC1                               00
SSTE32882 RC2/RC3                               50
SSTE32882 RC4/RC5                               50
SSTE32882 RC6/RC7                               00
SSTE32882 RC8/RC9                               00
SSTE32882 RC10/RC11                             00
SSTE32882 RC12/RC13                             00
SSTE32882 RC14/RC15                             00

---=== Manufacturer Data ===---
Module Manufacturer                             Samsung
DRAM Manufacturer                               Samsung
Manufacturing Location Code                     0x02
Manufacturing Date                              2011-W39
Assembly Serial Number                          xxx
Part Number                                     M393B2K70CM0-YF8

1
dimm-decode? 나는 당신이 의미하는 것 같아요 decode-dimms. 어쨌든, 그것은 나를 위해 작동하지 않습니다 : 0 SDRAM DIMM이 감지되었습니다.
underscore_d

0

가능하면 IIRC Memtest를 실행 해보십시오. 왼쪽 상단에 메모리 속도뿐만 아니라 최저값 (예 : 667MHz에서 20000MB / s)이 표시됩니다.


0

DDR sdram의 타이밍은 8과 2의 배수입니다. 내가 기억하는 것에서 DDR은 Double Data Rate를 의미합니다 (다시 확인할 정보를 찾을 수 없으므로 이것을 확인하십시오). 그 메모리는 그 동안 양방향으로 (in & out) 전송할 수 있습니다.

이유는 쉽다. DDR은 주어진 버스 주파수보다 두 배 빠릅니다. 버스의 버스 주파수와 전송 속도 용량을 혼동하지 마십시오. 버스는 버스 주파수에서 32, 64, 128 또는 256 비트를 전송합니다. CYCLE 당 128 비트의 데이터 세트는 막대한 양의 데이터입니다.

예를 들어 : DDR400은 200MHz에서 버스에서 발견되었습니다. 다른 이름은 PC3200입니다. 400에서 3200까지 얻으려면 요인 8이 있습니다.이 요인은 DDR (1/2/3/4 ...)에 관계없이 항상 검증됩니다.

다음 링크는 기본 사항을 얻을만큼 충분합니다 (그리고 아마도 내 설명보다 더 좋고 완벽합니다 :))

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.