Quartus® Prime Pro Edition User Guide: Design Optimization

ID 683641
Date 4/17/2025
Public
Document Table of Contents

5.5.6.2.1. DSE II Setup Page Settings

DSE II provides the following options for configuring your DSE II setup:

Compilation Type Settings

Choose one of the following options for specifying the type of computing resources to use for DSE II compilation processing. DSE II supports parallel processing, allowing you to distribute the multi-compilation workload across distributed remote resources.

Table 27.  Compilation Type Settings
Compilation Type Description
Local Compile from the host machine.
Remote
The available options are:
Kubernetes (beta)
LSF
PBSPro
Slurm
SSH
SunGrid (Beta)
Torque

Kubernetes Remote Farm Settings

The following settings are available for this option.

Table 28.  Kubernetes Remote Farm Settings
Parameter Comments
Remote Cluster (Beta) Specify on if the machine is outside of the Kubernetes cluster and does not share a network. This option is a beta feature in the current release.1
Service Account Name Specifies the Kubernetes Service Account to use. This account needs to enable permissions verbs create, get, and delete on jobs, pods, pods/log and events. DSE II can create a new Service Account with required permissions if you do not specify one, but this requires that you already have rbac.authorization.k8s.io/v1 API access.2
Create Service Account Specify on to create a new Kubernetes Service Account with the name quartus-dse on the specified namespace or default namespace. Create quartus-dse role to allow verbs create, get, and delete on jobs, pods, pods/log and events. Bind this role to the quartus-dse service account.
Full path to kubectl Specifies the full path to the kubectl executable. The default value is kubectl and assumes is the PATH.
Kubeconfig File Specifies the kubeconfig file that you use to login to the Kubernetes cluster.
Namespace Specifies the Kubernetes cluster namespace that you are operating in.
CPU limit Specifies as decimal value a limit on the number of CPUs that you use. Default value is 2.
CPU Request Specifies as decimal value the number of CPUs that you require. Default value is 2. A lower number schedules a job. Once assigned to node, if more CPU resources are available, DSE II uses up to the CPU limit.
Set environment variables Accepts a comma separated list of name=value pairs.
Memory limit Specifies the memory limit as <value><unit>. Units can be Gi and Mi. Example is 32Gi.
Memory request Specifies the memory that you want to request as <value><unit>. Units can be Gi and Mi. Example is 32Gi. If more memory resources are available, DSE II uses up to the Memory limit.
Pull image before running Accepts string of Always, IfNotPresent, Never. Default value is ifNotPresent.
Container image Specifies the container image with the Quartus® Prime software installation. For example:
altera/quartuspro-v25.1
Only run on a specific node Specifies the node that you want to run DSE II exploration.
Select the nodes to run based on node label Specifies the node label to use the node. For example, mylabel = myteam
LM_LICENSE_FILE Specifies the LM_LICENSE_FILE environment setting. Default value is the current local setting.
Initial Work Directory Specifies the initial directory for the remote job. For example:
/data/user/my_project
Active Deadline Seconds Specifies in seconds a time limit the job is allowed to work. The job terminates unless it finishes in the time you specify. Default value is 86400 seconds (24 hours).
Time to live after finished Specifies in seconds the time job is allowed to remain in Kubernetes after the job finishes. The TTL control cleans up the job if you specify a time.
Do not delete pod Specify on to prevent deletion of the pod from the cluster after it terminates. You can use this option to diagnose problems.
Keep Manifest Files Specifies on to retain the Kubernetes manifest .json files that DSE II creates. You can use this option to diagnose problems.
Additional Remote Settings Optional field for other Kubernetes remote settings.

LSF Remote Settings

The following settings are available for this option:

Table 29.  LSF Remote Farm Settings
Parameter Comments
Resource Requirements

Specify memory requirements for the machines that run jobs. Example:

"rusage[mem=1000]" (including quotes) * Require 1000 MB RAM for submitted jobs.
Queues One or more comma-separated queues.
Quartus Root Directory Specifies the Quartus® Prime software installation location. For example:
/altera/25.1/quartus
LM_LICENSE_FILE Specifies the LM_LICENSE_FILE environment setting. Default value is the current local setting.
Initial Work Directory Specifies the initial directory for the remote job. For example:
/data/user/my_project
Environment Variables Specifies options to control environment propagation and specific environment variables. For example:
all, 
PATH=/acds/25.1/linux64/quartus/bin:%PATH%
Local to Remote Path Mapping Specifies the shared directory mapping between the local and remote host. Use format localpath;remote_path. Windows to Linux example:
[drive:\windows path];[linux path]
s:\designs\two_reg;/designs/two_reg
Priority Sets the job priority level from 0 (lowest priority) to 300 (highest priority). Default value is 150.
Standard Output File Specifies the file to store standard output. You can include Job ID using %J or Index ID using %I in the directory or filename.
Error Output File Specifies the file to store standard error output. You can include Job ID using %J or Index ID using %I in the directory or filename.
Processor Limits Specifies the minimum number of processors, and optionally the maximum number of processors for the job. For example, specifying 2 sets a minimum number of two processors. Specifying 3,5 sets a minimum of three and a maximum of five processors.
Additional remote settings Specify other settings

PBSPro Remote Farm Settings

The following settings are available for this option:

Table 30.  PBSPro Remote Farm Settings
Parameter Comments
Queues Specifies the name of the job you that you want to use.
Priority Sets the job priority level from -1024 (lowest priority) to 1024 (highest priority).
Resource, Architecture, Memory Requirement Specifies the architecture, license, or memory requirements for the job. For example:
select=mem=16gb:ncpus=4
Email Specifies a comma separated list of email addresses to receive status emails.
Additional Arguments to qsub Optional field for other qsub remote settings.
Quartus Root Directory Specifies the Quartus® Prime software installation location. For example:
/altera/25.1/quartus
LM_LICENSE_FILE Specifies the LM_LICENSE_FILE environment setting. Default value is the current local setting.
Environment Variables Specifies a comma separated list of environment variables to pass to the job. Enclose values with single or double quote if it includes a comma. For example:a=1, b='ab", c=3.
Initial Work Directory Specifies the initial directory for the remote job. For example:
/data/user/my_project

Slurm Remote Farm Settings

The following settings are available for this option:

Table 31.  Slurm Remote Farm Settings
Parameter Comments
Cluster Specifies a comma separate list of clusters to use for the job.
Partition Specifies a comma separate list of partitions to use for the job.
Memory per Node Specifies the architecture, license, or memory requirements for the job. For example:
select=mem=16gb:ncpus=4
CPUs per task Specifies the maximum number of CPUs to use for each task.
CPU Sockets per Node Specifies the maximum number of CPUs to use for each node.
CPU Cores per Sockets Specifies the maximum number of CPU cores to use for each socket.
Priority Specifies the job priority as numeric value or TOP to specify highest priority possible. Highest value numbers are highest priority.
Generic resources Specifies the architecture, license, or memory requirements for the job. For example:
select=mem=16gb:ncpus=4
Constraint Specifies node features as required by Slurm administrator.
Modules Specifies command separated list of modules. A module configures one or more environment settings. One of the modules must configure the QUARTUS_ROOTDIR and add the Quartus® Prime software to the PATH.
Email Specifies a comma separated list of email addresses to receive status emails.
Additional Arguments to sbatch Optional field for specifying additional options for Slurm.
Quartus Root Directory Specifies the Quartus® Prime software installation location. For example:
/altera/25.1/quartus
LM_LICENSE_FILE Specifies the LM_LICENSE_FILE environment setting. Default value is the current local setting.
Environment Variables Specifies a comma separated list of environment variables to pass to the job. Enclose values with single or double quote if it includes a comma. For example:a=1, b='ab", c=3.
Initial Work Directory Specifies the initial directory for the remote job. For example:
/data/user/my_project
Standard Output File Specifies the file to store standard output. You can include Job ID using %J or Index ID using %I in the directory or filename.
Licenses Specifies the path to any required licenses for the job.

SunGrid (Beta) Remote Farm Settings

The following settings are available for this option:

Table 32.  SunGrid Remote Farm Settings
Parameter Comments
Environment Variables Specifies a comma separated list of environment variables to pass to the job. For example, DEBUG=1, SIZE=LARGE.
Queues Specifies the name of the job you that you want to use.
Priority Sets the job priority level from -1024 (lowest priority) to 1024 (highest priority).
Resource, Architecture, Memory Requirement Specifies the architecture, license, or memory requirements for the job. For example:
h_vmem=750M, h_cpu=0:45:0
uses a machine with minimum of 750M and runs job no longer than 45 minutes.
Email Specifies a comma separated list of email addresses to receive status emails.
Parallel Processor Specifies the minimum number of processors, and optionally the maximum number of processors for the job. For example, specifying 4-16 sets a minimum number of four processors and a maximum of 16 processors.
Additional remote settings Specify other settings

Torque Remote Farm Settings

The following settings are available for this option:

Table 33.  Torque Remote Farm Settings
Parameter Comments
Environment Variables Specifies a comma separated list of environment variables to pass to the job. For example, DEBUG=1, SIZE=LARGE.
Queues Specifies the name of the job you that you want to use.
Priority Sets the job priority level from -1024 (lowest priority) to 1024 (highest priority).
Resource, Architecture, Memory Requirement Specifies the architecture, license, or memory requirements for the job. For example:
h_vmem=750M, h_cpu=0:45:0
uses a machine with minimum of 750M and runs job no longer than 45 minutes.
Email Specifies a comma separated list of email addresses to receive status emails.
Additional Arguments to qsub Specifies any additional arguments.
Additional remote settings Specify other settings
1 This is a beta feature in this version of the Quartus® Prime software.
2 The Quartus® Prime software includes a service account template at: /quartus/common/python/lib/site-packages/quartus/dse/plugins/farms/ kube_job_serviceaccount_template.json for cluster admin to review, copy, and revise with the actual namespace. You can then create it using: kubectl --namespace <namespace> apply -f <serviceaccount.json>. For Kubernetes service account information, refer to https://kubernetes.io/docs/concepts/security/service-accounts/.