C H A P T E R  23

Physical Memory Test (pmemtest)

The pmemtest checks the physical memory of the system and reports hard and soft error correction code (ECC) errors, memory read errors, and addressing problems. The pseudo driver mem is used to read the physical memory.

This test reads through all the available physical memory. It does not write to any physical memory location.


pmemtest Options

pmemtest is supported both in physical mapping and logical mapping displays in the UI. In physical mapping, pmemtest provides support to test the memory on a per-board basis; users can select the pmemtest which is displayed under the physical memory board, which is to be tested and test only that board. In logical mapping, the pmemtest options apply to the complete memory across the boards.

FIGURE 23-1 pmemtest Test Parameter Options Dialog Box

Screenshot of the pmemtest Test Parameter Options dialog box.

TABLE 23-1 pmemtest Options

pmemtest Options

Description

Configuration

Shows the total amount of physical memory, rounded up to the nearest megabyte, probed by the SunVTS kernel.

Amount of Memory

Specifies the percentage of the physical memory to be tested. The default 0% ensures dividing the total memory equally among instances which results in 100% coverage at the completion of every test pass. Note that one test pass includes one pass each by all instances.

ECC Error Monitor

This option is used to enable or disable ECC error monitoring.

ECC Report Threshold

Determines how many correctable ECC errors occurred in the elapsed time before pmemtest reports a test failure. A value of zero results in no report of any correctable ECC errors. The default is 2. This option is only available on UltraSPARC systems.

Section ID

When set to -1, pmemtest will test one memory section in each pass, automatically testing each subsequent memory section as testing progresses. When set to a number other than -1, only the section specified will be tested. A section is defined by the pass and instance number settings. This option is only available on UltraSPARC systems.

Instance

Instances are the number of copies of pmemtest to run simultaneously on the memory being tested.




Note - The amount of memory option is specified on a "per instance" basis. The real memory coverage for one test pass depends on the amount of memory option and the number of instances. For example, if there are four instances, and each instance specifies "50%" for the amount of memory option, then this will result in "200%" (4 times 50%) coverage on each test pass. For guaranteed 100% memory coverage for each test pass, choose default percentage size option as 0% for all instances.




pmemtest Test Modes
TABLE 23-2 pmemtest Supported Test Modes

Test Mode

Description

Connection Test

In this mode, one percent of the memory is read. pmemtest also informs the user how much physical memory is available. For sun4m, sun4u, and UltraSPARC servers, the test reports the ECC errors that have occurred since it was last invoked. The test reports ECC errors for a particular CPU or memory board when physical mapping is selected, otherwise it provides the SIMM number of the ECC memory error.

Functional

(Offline)

In Functional test mode, the amount of memory to be read can vary. By default 100% of the memory is tested. Also for UltraSPARC servers, this test mode reports the ECC errors that have occurred since it was last invoked. The test reports ECC errors for a particular memory board when physical mapping is selected, otherwise it provides the SIMM number of the ECC memory error.

Online

In this mode too, the amount of memory to be read can vary. By default 100% of the memory is tested. Also for UltraSPARC servers, this test mode reports the ECC errors that have occurred since it was last invoked. The test reports ECC errors for a particular memory board when physical mapping is selected, otherwise it provides the SIMM number of the ECC memory error.



pmemtest Command-Line Syntax

For 32-bit configurations:

/opt/SUNWvts/bin/pmemtest standard_arguments -o size=[0-100], dev=device_name, eccmon=Enabled|Disabled, threshold=report_threshold, bdinfo=number, section=section_id

For 64-bit configurations:

/opt/SUNWvts/bin/sparcv9/pmemtest standard_arguments -o size=[0-100], dev=device_name, eccmon=Enabled|Disabled, threshold=report_threshold, bdinfo=number, section=section_id

TABLE 23-3 pmemtest Command-Line Syntax

Argument

Description

size=[0-100]

Specifies the percentage of memory to be tested. The default is 0% (for 100% memory coverage).

dev=device_name

Specifies the device to test, for example, mem.

eccmon=Enabled|Disabled

ECC error monitoring is enabled or disabled.

threshold=report_threshold

Determines how many correctable ECC errors occur before they are reported as an error causing pmemtest to report a failure. A value of zero results in no report of any correctable ECC errors. The default is 2. This option is only available on UltraSPARC systems.

bdinfo=number

For UltraSPARC servers, this argument indicates board number information. For example, if board 0 and board 5 have memory and you want the test to read the memory on both boards, then this argument should read bdinfo=33 (2**5+2**0). The bdinfo value can be specified as 0 to test the memory present on all boards.

section=section_id

When set to -1, pmemtest will test one memory section in each pass, automatically testing each subsequent memory section as testing progresses. When set to a number other than -1, only the section specified will be tested. A section is defined by the pass and instance number settings. This option is only available on UltraSPARC systems.




Note - 64-bit tests are located in the sparcv9 subdirectory: /opt/SUNWvts/bin/sparcv9/testname, or the relative path to which you installed SunVTS. If a test is not present in this directory, then it may only be available as a 32-bit test. For more information refer to the "32-Bit and 64-Bit Tests" section of the SunVTS 5.1 Test Reference Manual (816-5145-10).