Resource Queues

Resource Queues are used to limit the available compute resources that can be utilized concurrently. Examples of compute resources include virtual CPUs (vCPUs) and virtual GPUs (vGPUs).

Overview of Resource Queues

  • Enrollment: An enrollment is the primary identity of your Organization and establishes your company's identity with Foundry services and the Foundry platform.
  • Resource: A Resource Queue resource is a compute resource, such as a virtual CPU (vCPU) or virtual GPU (vGPU), that is needed to run a workload in a Project.
  • Resource Queue: A Resource Queue is a first in, first out (FIFO) queue for requesting service-level resources (such as vCPUs or vGPUs). See Resource Queue Details below for more information.
  • Compute group: A compute group is a group of machines (compute hardware of a specific type) on which Foundry workloads can be run. These machines provide the resources that are used by workloads.
  • Project: A Project is a collaborative space that brings together users, files, and folders for a particular purpose. Projects are the primary security boundary in Foundry and can be thought of as buckets of shared work. Workloads that require resources run in Projects.

Resource Queues for streaming resources may not be available in your enrollment. Contact Palantir Support for more information.

Enrollment details

Resource Queues belong to an enrollment, and an enrollment has a vCPU and a vGPU limit, which limits the total amount of vCPUs and vGPUs allowed through Resource Queues. In other words, the sum of all vCPU limits of all Resource Queues in an enrollment must be less than or equal to the enrollment vCPU limit; the same rule applies to the Queue vGPU limit and enrollment vGPU limit.

An enrollment also has a default queue to which all Projects are automatically assigned unless otherwise specified. This default queue cannot be deleted.

Projects in a space are automatically assigned to the space's default Resource Queue. The space's default Resource Queue is the same as the enrollment default Resource Queue unless otherwise configured. Learn more about Organizations and spaces and how they relate to Organizations and enrollments.

Set enrollment limits

Enrollment limits can be set through Control Panel. Open Control Panel, select the cog next to your enrollment, then select Set resource limits. Contact your Palantir representative if you do not have permission to set enrollment limits.

Setting enrollment Limits

Resource Queue details

Resource Queue Details

A Resource Queue is a first in, first out (FIFO) queue used to limit the number of compute resources that can be used concurrently. A Resource Queue limits the use of service-level resources like virtual CPUs (vCPUs) and virtual GPUs (vGPUs) that are available in compute groups.

Resources are requested by workloads running in Projects, and those requests are then queued in a Resource Queue. When a Resource Queue is full, requests must wait until space is available again in the queue. The queue is first in, first out; requests are processed in the order in which the requests were created.

Workloads are then sent to run in the compute group specified by the Resource Queue, and resources are released once the workload completes or is terminated.

Create Resource Queues

To create a Resource Queue, navigate to the Resource Management application, select Queues on the left, then select New.

Create new Queue

Resource Queue types

There are currently two Resource Queue types: vCPU Resource Queues and vGPU Resource Queues. Most workloads will only need CPUs, and so most Projects will be backed by a vCPU Resource Queue. Workloads requiring GPUs must be sent to a vGPU Resource Queue, and so can only run in Projects backed by a vGPU Resource Queue. The type of GPUs (for example, V100, T4) used by the workload in a Project is determined by the compute group to which the workload will be routed. This compute group is associated with the Resource Queue that backs the Project. Learn more about compute groups.

Use GPUs

If you want to use a GPU in your Project, you must create a GPU Resource Queue and assign your Project to that queue. It may be useful to use a GPU when running workloads for training machine learning models, for example. Learn more about model integration.

New GPU Queue

Be sure your enrollment level GPU limits are set to allow the creation of GPU Resource Queues.

Once the Resource Queue is created and your Project is assigned, import a GPU profile (such as DRIVER_GPU_ENABLED) into your Project and use it in your code repository. Learn more about importing spark profiles.

If a Project assigned to a GPU queue wants to run a workload without GPUs, the workload that does not require GPUs will use the default queue of the enrollment.

Compute group details

Compute groups are auto scaling groups of hardware resources of homogenous type. For example, a compute group might have machines with 16GB of memory and 4 compute cores (CPUs) available; another compute group may have machines with a V100 GPU with 16 compute cores and 32GB of memory. Compute groups are available to Foundry users and limited by Resource Queues.