IScheduler::SetClusterParameter method
Sets a configuration parameter for the cluster.
Syntax
HRESULT SetClusterParameter(
[in] BSTR Name,
[in] BSTR Value
);
Parameters
Name [in]
The name of the parameter. The names are case-insensitive.Value [in]
The value of the parameter.
Return value
If the method succeeds, the return value is S_OK. Otherwise, the return value is an error code.
Remarks
Only a user with administrator privileges can set the cluster's configuration parameters.
You can only update HPC configuration parameters; you cannot delete them. The method fails if the HPC parameter value is not valid.
To retrieve the current configuration values, access the IScheduler::ClusterParameters scheduler property.
The following are the supported configuration parameters.
Parameter | Description |
---|---|
AffinityType |
Specifies a processor affinity setting that controls the association between tasks and cores. The following list describes the possible values for this parameter:
This parameter is supported only for Windows HPC Server 2008 with SP1, Windows HPC Server 2008 with SP2, and Windows HPC Server 2008 R2. |
AllowNewUserConnections |
Specifies whether the HPC Job Scheduler Service should allow users to connect to the HPC Job Scheduler Service to create and submit new jobs and tasks. A True value indicates that the HPC Job Scheduler Service should allow users to connect to the HPC Job Scheduler Service to create and submit new jobs and tasks. The HPC Job Scheduler Service places the jobs in a queue and runs them in the order that is defined by the scheduling policy for the HPC cluster. A False value indicates that the HPC Job Scheduler Service should allow only cluster administrators and system services that are running on the head node of the HPC cluster to connect to the HPC Job Scheduler Service, and it should not allow users without administrative credentials to connect to the HPC Job Scheduler Service. Use a setting of False when you are doing maintenance work for the cluster and you need to prevent users from accessing the HPC Job Scheduler Service and its database. For example, you would use a setting of False while you are backing up and restoring the database. This setting does not prevent cluster administrators from creating and submitting jobs and tasks. The default value of this parameter is True. When you upgrade an HPC cluster from HPC Pack 2008 to HPC Pack 2008 R2, the AllowNewUserConnections property for the cluster is initially set to False, and it automatically resets to True when the upgrade is complete. This parameter is supported only for HPC Pack 2008 R2. |
ActivationFilterProgram |
Specifies the path and file name of the activation filter program, if one exists. The activation filter program is called every time a job starts. You can use the activation filter program to delay the start of a job. This application returns 0 if the job should be started and a nonzero value otherwise. It must accept a single command-line argument, which is an absolute path to an XML file that specifies the terms of the job. The job terms are the attributes of the Job element. The CustomProperties element contains the name/value pairs for application-defined extended job terms. For more information, see Job Schema. This parameter has no default value. |
ActivationFilterTimeout |
Specifies the number of seconds that the activation filter program can run before the HPC Job Scheduler Service cancels the activation filter program and starts the job. The range of valid values is from 1 through 120. The default value is 15 seconds. |
AutomaticGrowthEnabled |
Specifies whether to automatically add free resources to running jobs that still have additional tasks to run. A value of True indicates that the HPC Job Scheduler Service should automatically add free resources to running jobs that still have additional tasks to run. A value of False indicates that the HPC Job Scheduler Service should not automatically add free resources to running jobs that still have additional tasks to run. The default value is True. |
AutomaticShrinkEnabled |
Specifies whether to automatically remove unneeded resources from running jobs that have no additional tasks to run. A value of True indicates that the HPC Job Scheduler Service should automatically remove unneeded resources from running jobs that have no additional tasks to run. The HPC Job Scheduler Service does not shrink the resources beyond the minimum requested. A value of False indicates that the HPC Job Scheduler Service should not automatically remove unneeded resources from running jobs that have no additional tasks to run. The default value is True. |
BackfillLookahead |
Specifies the number of jobs that the HPC Job Scheduler Service searches to find jobs that can backfill the jobs at the top of the job queue. A value of 0 indicates that the HPC Job Scheduler Service should not backfill the jobs at the top of the job queue. A negative value indicates that the HPC Job Scheduler Service should search though the entire job queue to find jobs that can backfill the jobs at the top of the job queue. The default value is 1000. |
BrokerTaskProgram |
Specifies the command that the HPC Job Scheduler Service runs to start a broker task. By changing this value, you can replace the Windows Communication Foundation (WCF) Broker that Windows HPC Server 2008 includes with a custom WCF Broker. The default value is %CCP_HOME%bin\HpcWcfBroker.exe. This configuration parameter is supported only for Windows HPC Server 2008. |
DefaultHoldDuration |
Specifies the default amount of time in seconds before the HPC Job Scheduler Service reevaluates jobs that are placed on hold by an activation filter program. The default value is 900 seconds, which equals 15 minutes. This parameter is supported only for HPC Pack 2008 R2. |
EmailFromAddress |
Specifies the email address to use on the From line for email notifications. This parameter has no default value. This parameter is supported only for HPC Pack 2008 R2. |
EmailNotificationEnabled |
Specifies whether the HPC Job Scheduler Service should send email notifications about jobs when job owners specify that they want to receive such notifications. A True value indicates that the HPC Job Scheduler Service should send email notifications about jobs. A False value indicates that the HPC Job Scheduler Service should not send email notifications about jobs. The default value is False. This parameter is supported only for HPC Pack 2008 R2. |
EmailSmtpServer |
Specifies the name or IP address of the Simple Mail Transfer Protocol (SMTP) server that the HPC Job Scheduler Service should use to send email notifications, if email notifications are enabled. This parameter has no default value. This parameter is supported only for HPC Pack 2008 R2 . |
EmailUseSsl |
Specifies whether the SMTP server that the HPC Job Scheduler Service uses to send email notifications requires a secure connection. A True value indicates that the SMTP server requires a secure connection. A False value indicates that the SMTP server does not require a secure connection. The default value is False. This parameter is supported only for HPC Pack 2008 R2. |
ExcludedNodesLimit |
Specifies the maximum number of nodes that you can add to the list of nodes on which a job should not run. For SOA jobs, the broker cancels sessions that try to exclude a greater number of nodes than are specified by this setting. For other types of jobs, an error occurs if you try to add a greater number of nodes than are specified by this setting to the list of nodes on which a job should not run. The default value is 10. This parameter is supported only for HPC Pack 2008 R2. |
HeartbeatInterval |
Specifies how often the HPC Job Scheduler Service sends health probes to the HPC Node Manager Service to confirm that the nodes in the HPC cluster are still reachable. This interval is specified in seconds. The default value is 30. |
InactivityCount |
Specifies the number of heartbeats a compute node can miss before the HPC Job Scheduler Service declares the node unreachable. A compute node misses a heartbeat if there is no reply from the health probes. The default value is 3. |
JobCleanupHour |
Specifies the hour of the day in 24-hour time at which the HPC Job Scheduler Service should delete old job records from the database. For example, a value of 23 causes the HPC Job Scheduler Service to delete job records that are older than the number of days that the TTLCompletedJobs property specifies at 11:00 PM each day. The possible values of this parameter are from 0 through 23. The default value is 2. |
JobRetryCount |
Specifies the maximum number of times that the HPC Job Scheduler Service automatically tries to rerun a job when a system error rather than a job error occurs before marking the job as Failed. The value range for this parameter is from 0 through 2,147,483,647. The default value is 3. |
NodeReleaseTaskTimeout |
Specifies the maximum run time in seconds for Node Release tasks. Node Release tasks run even when a job is canceled. A cluster administrator or the job owner can force a job that is being canceled to skip the Node Release task. The value for this parameter cannot be negative. The default value is 15. This parameter is supported only for HPC Pack 2008 R2. |
PreemptionType |
Specifies the type of preemption that the HPC Job Scheduler Service applies. The following list describes the possible values for this parameter.
To set the preemption policy for a job, use the ISchedulerJob::CanPreempt property. |
PriorityBias |
Specifies how additional resources are allocated to jobs when the SchedulingMode property is set to Balanced. In the Balanced scheduling mode, additional resources are the cluster resources that exceed the total minimum resources for all running jobs. In the Queued scheduling mode, the PriorityBias property has no effect. The following list describes the possible values for this parameter.
The default value is MediumBias. This parameter is supported only for HPC Pack 2008 R2. |
RebalancingInterval |
Specifies the amount time in seconds between successive operations that the HPC Job Scheduler Service performs to rebalance the allocation of resources in the Balanced scheduling mode. The HPC Job Scheduler Service adds or removes resources from job during these operations to start new jobs, fill available resources, and balance resource allocation based on the setting of the PriorityBias property. The default value is 10. This parameter is supported only for HPC Pack 2008 R2. |
SchedulingMode |
Specifies how to optimize resource allocation for large batch and Message Passing Interface (MPI) workloads or for service workloads. The following list describes the possible values for this parameter:
The default value is Queued. This parameter is supported only for HPC Pack 2008 R2. |
ServiceTaskProgram |
Specifies the command that the HPC Job Scheduler Service runs to start a Windows Communication Foundation (WCF) service task on the compute nodes. By changing this value, you can replace the WCF service host that the Windows HPC Server 2008 includes with a custom WCF service host. The default value is %CCP_HOME%bin\HpcWcfServiceHost.exe. This configuration parameter is supported only for Windows HPC Server 2008. |
SpoolDir |
The directory in which the clusrun command temporarily stored output for Microsoft Compute Cluster Pack. The clusrun command in Microsoft HPC Pack 2008 and Microsoft HPC Pack 2008 R2 no longer uses the SpoolDir parameter. The default value is \\<head_node>\CcpSpoolDir. |
SubmissionFilterProgram |
Specifies the file name and path for the submission filter program, if one exists. The submission filter program runs every time a job is submitted. You can use the submission filter program to reject or change jobs that users submit to the job scheduler. This application returns 0 if the job should be submitted and a nonzero value otherwise. It must accept a single command-line argument, which is an absolute path to an XML file that specifies the terms of the job. The job terms are an attribute of the Job element. The ExtendedTerms element contains the name/value pairs for application-defined extended job terms. For more information, see Job Schema. This parameter has no default value. |
SubmissionFilterTimeout |
Specifies the number of seconds that the submission filter program can run before the HPC Job Scheduler Service cancels the submission filter program and rejects the job. The range of valid values is from 1 through 120. The default value is 15. |
TaskCancelGracePeriod |
Specifies the amount of time in seconds that the HPC Node Manager Service should allow applications to use to exit gracefully. In HPC Pack 2008 R2, the HPC Node Manager Service stops a running task by sending a CTRL+BREAK signal to the application. To make use of the grace period for task cancelation, the application must include code to handle the CTRL+BREAK event. If the application does not respond to the CTRL+BREAK event, it exits immediately. For an SOA service to use the grace period, it must respond to the ServiceContext.OnExiting event. The default value is 15. This parameter is supported only for HPC Pack 2008 R2. |
TaskRetryCount |
Specifies the maximum number of times that the HPC Job Scheduler Service automatically tries to rerun a task when a system error rather than a task error occurs before marking the task as Failed. The default value is 3. |
TTLCompletedJobs |
Specifies the number of days that the records for completed jobs will remain in the SQL database before the HPC Job Scheduler Service deletes the records. A completed job is a job in the Finished, Failed, or Canceled state. The default value is 5. |
Requirements
Product |
HPC Pack 2008 R2 Client Utilities, HPC Pack 2008 Client Utilities |
Type library |
Microsoft.Hpc.Scheduler.tlb |