SET MULTITHREAD
Authorization
Privilege Class: A
Purpose
Use SET MULTITHREAD to change the multithreading (MT) characteristics of the system. The command allows the activated thread count per CPU type to be changed if multithreading is enabled.
When the result of the command changes the number of activated threads of a CPU type, then logical processors might be activated or deactivated to match the new setting.
Operands
- INITIAL
- This operand requests that the configuration be restored to the values specified on the MULTITHREADING statement in the system configuration file at the time the system was IPLed. If it is specified, no other operands are allowed.
- TYPE ALL {nn/MAX}
- specifies the CPU type and the requested number of threads for that type. If ALL is specified,
no individual CPU types may be specified. The value specified by this operand tells z/VM® the number of threads to activate on each CPU type. The
value nn must be a decimal number 1 - 32 and cannot be greater than the
effective maximum threads value. If MAX is specified the activated thread count will be set to the
effective maximum threads value. Refer to usage note 2 for an
explanation of the effective maximum threads value, and usage note 4 for an explanation of how it influences the activated thread count.
When ALL is not specified and some of the individual CPU types are not specified, then the unspecified CPU types retain their prior values.
Usage Notes
- The activated thread count per CPU type can be changed only if multithreading is enabled.
- The effective maximum threads value is the maximum number of threads any CPU type can use given the MAX_THREADS setting requested on the MULTITHREADING statement, hardware limits and software limits. This value is displayed in the Activated Threads column of the MAX_THREADS row of the QUERY MULTITHREAD command output. For an explanation of the MAX_THREADS setting, see the QUERY MULTITHREAD command.
- The number of online logical processors per core is determined by the activated thread count for the corresponding CPU type.
- The actual activated thread count for a CPU type might be less than what was requested if the hardware or z/VM has a limit less than the effective maximum threads value. This level of z/VM supports up to 2 threads for IFL and 1 thread for all other CPU types.
- For each CPU type, the resulting activated threads number will be the least of the following:
- The effective maximum threads value
- The requested threads value for that CPU type as specified on this command
- The number of threads per core supported for that CPU type on the hardware or the configuration where z/VM is running
- The number of threads for that CPU type supported by z/VM
- The SET MULTITHREAD command is an asynchronous command. The initial synchronous stage of processing parses the command and determines whether or not it is valid. If valid, and it is not necessary to activate or deactivate processors, a "Command complete" response is issued. If it is necessary to activate or deactivate processors then a "Command accepted" response will be issued and control will be returned to the caller after scheduling the asynchronous processing to process the requested transition.
- During the asynchronous processing step informational messages are displayed:
- HCP6514I and HCP6517I which indicate the beginning and end of the asynchronous processing are sent to the command issuer and the primary system operator if not the issuer of the SET MULTITHREAD command.
- HCP6515I and HCP6516I identify each of the processors that have been activated or deactivated as a result of the SET MULTITHREAD command. The primary system operator is also notified if not the issuer of the SET MULTITHREAD command.
- Any additional SET MULTITHREAD commands will be rejected until the asynchronous processing has completed. The QUERY MULTITHREAD command can be used to determine when the asynchronous portion of the SET MULTITHREAD command processing has completed. The rejection will be indicated by message HCP6513I and corresponding return code.
- The QUERY MULTITHREAD INITIAL command can be used to determine what the initial multithreading configuration settings were which would be restored by SET MULTITHREAD INITIAL.
Responses
Response 1:
Command completeResponse 2:
Command acceptedAfter this response, asynchronous processing
will complete the request. During that processing the following informational messages will be issued:- HCP6514I Processor reconfiguration for a multithreading configuration change has started.
- HCP6517I Processor reconfiguration for a multithreading configuration change has completed.
- HCP6515I Processor nnnn online due to thread activation
- HCP6516I Processor nnnn offline due to thread deactivation
Examples
- To change the system to run single-threaded, use the following
command:
SET MULTITHREAD TYPE ALL 1
Messages
- HCP002E Invalid operand - operand
- HCP003E Invalid option - {option|command contains extra option(s) starting with option}
- HCP013E Conflicting option - option
- HCP1001E An operand is missing for option
- HCP1321E SET MULTITHREAD is not valid because multithreading is not enabled.
- HCP6509I The requested number nn of the operand {ALL|CP|IFL|ICF|ZIIP} in the SET MULTITHREAD command is larger than the hardware-supported number hh or the CP-supported number cc, and has been changed to mm.
- HCP6512E The requested number nn of the operand {ALL|CP|IFL|ICF|ZIIP} is larger than the effective maximum threads value cc
- HCP6513E command1 not allowed when a multithreading configuration change is already in progress.
- HCP6514I Processor reconfiguration for a multithreading configuration change has started.
- HCP6515I Processor nnnn online due to thread activation
- HCP6516I Processor nnnn offline due to thread deactivation
- HCP6517I Processor reconfiguration for a multithreading configuration change has completed.
- HCP6704E Missing token at end of line
- HCP6706E Invalid number - number
- HCP9152E Core mmmm is being varied offline because processor nn is not responsive during thread activation.
- HCP9152E Core mmmm is being varied offline because processor nn is not responsive during thread deactivation.
