C H A P T E R  14

Chip Multi-Threading Test (cmttest)

cmttest verifies the proper functioning of the multiprocessor hardware with multiple cores in one CPU. cmttest tests the path between the cores on the same CPU in addition to performing CPU specific testing. cmttest uses the Cache Coherence, Shared Memory, and RAM subtests. The Cache Coherence subtest is used to test the coherence among all of the Cores in a CMT (Chip Multiprocessor). The Shared Memory subtest is used to test the shared memory among all the cores in a CMT. The RAM subtest is used to test the memory. The RAM subtest covers TLB, MMU, and bus balancing.Only one cmttest is registered and cmttest is present under the logical name Processor(s). There is no physical name provided. The probe routine of cmttest probes all CMTs in which at least two cores are online.

cmttest was named cmptest in previous SunVTS releases.


cmttest Options

To reach the dialog box below, right-click on the test name in the System Map and select Test Parameter Options. If you do not see this test in the System Map, you might need to expand the collapsed groups, or your system may not include the device appropriate to this test. Refer to the SunVTS User's Guide for more details.

FIGURE 14-1 cmttest Test Parameter Options Dialog Box

Screenshot of the cmptest Test Parameter Options dialog box.

The processors that can be tested are listed in the Configuration area of the menu. You can enable or disable the multiprocessing test for individual processors on this menu.

The options listed in the following table can be run alone or concurrently with other options.

TABLE 14-1 cmttest Options

cmttest Options

Description

CMTS

You can test specific CMTs by clicking Select on the check boxes to enable or disable each CMT. A check mark indicates the CMT is enabled for testing. The default setting is all CMTs enabled.

Perf Counters

By default performance monitoring is "Disabled". When performance monitoring is "Enabled" tests print memory bandwidth achieved while testing. Right now only ram subtest has the counters built in. Bandwidth calculations assume that all banks corresponding to all cpus are present and had same number of reads and writes. (Note: Perfcounter monitoring can be done on SUNW,UltraSPARC-IV processors, If user tries to enable perfCounter, and perfcounters are not supported ,on cpus the appropriate warning message is displayed, with disabling the perfcounter.)

ECC Monitor

This option is used to Enable or Disable ECC error monitoring. The default option is Disabled.

ECC Threshold

Range is [0-255].This determines how many correctable ECC errors occurred in the elapsed time before cmttest reports a test failure. The default threshold value is 1.



cmttest Test Modes
TABLE 14-2 cmttest Supported Test Modes

Test Mode

Description

Functional

The Functional test mode is supported.

Exclusive

Performs the full test.



cmttest Command-Line Syntax

For 32-bit configurations:

/opt/SUNWvts/bin/cmttest standard_arguments
-o
cmts=0+1+2..., em=Enabled|Disabled, threshold=[0-255], perf=Enabled|Disabled

For 64-bit configurations:

/opt/SUNWvts/bin/sparcv9/cmttest standard_arguments
-o
cmts=0+1+2..., em=Enabled|Disabled, threshold=[0-255], perf=Enabled|Disabled

TABLE 14-3 cmttest Command-Line Syntax

Arguments Description

cmts=0+1+2...

0, 1, 2,... mentions the CPU ID of any one Core of the CMTs to be tested. To display on GUI, CPU ID of Core 0 will be taken as the identifier for a CMT. For displaying the Error/INFO/LOG messages, the CPU ID of the core 0 is used.

em=Enabled|Disabled

This option is used to Enable or Disable ECC error monitoring. The default value is Disabled.

threshold=[0-255]

The range is [0-255]. This determines how many correctable ECC errors can occur in the elapsed time before cmttest reports a test failure. The default value is 1.

perf=Enabled|Disabled

By default performance monitoring is Disabled. When performance monitoring is Enabled tests print memory bandwidth achieved while testing. Only the RAM subtest has the counters built in. Bandwidth calculations assume that all banks corresponding to all CPUs are present and have the same number of reads and writes.Note: Perfcounter monitoring can be done on SUNW, UltraSPARC IV processors. If you try to enable perfCounter, and the perfcounters are not supported on the CPUs, the appropriate warning message is displayed and the perfcounter is disabled.




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).