This article explains how to create a new Generalized Compute code objects using the FCP user interface (UI).
Note: If you want to create a new Generalized Compute Code Object using the SDK, see Creating a Generalized Compute Code Object Using the Rhino SDK.
Note: If your dataset contains sensitive data, then by default, all output datasets are considered to be sensitive. For more information on this, including how to mark which data is sensitive and which is not, please see Sensitive Datasets.
Using the User Interface to Create a New Generalized Compute Code Object
Follow these steps to use the UI to create a new Generalized Compute Code Object.
- Go to the main project's page and select your project.
- Select Code from the menu on the left to open the Code Objects page.
- Select the Create New Code Object button to open the Create New Code Object page.
- Select Generalized Compute as the Code Object Type. The page changes to show the fields needed for this object type.
- Enter information in the following fields.
| Field/Button | Description |
| Name | Indicates the name you want to provide for the code object. |
| Description | Provides a brief summary of what the code object does. |
| Input (including three-dot menu items) |
Indicates the file(s) needed for the code object to run properly. Your selection here will affect which Dataset(s) can be selected as input when triggering a Code Run with this Code Object You can enter one or more input files, such as schemas, configuration files, or others. File(s) can be in DICOM, JSON, and or text formats.
|
| Output |
Indicates the output file(s) produced when the code object run. You can enter one or more output files. Files can be in DICOM, JSON, and or text formats.
|
| Container | Specifies the name of the Docker container you would like to execute when running this Code Object. This will either be a container image created by someone from your workgroup that is available on your ECR or an image provided by Rhino. If you need a refresher on pushing containers to your ECR, please refer to Pushing Containers to the ECR. |
- After you've completed your details, you can choose to set required compute resources. If you want to do this, go to the Setting Required Compute Resources (Auto-scaling) section on this page.
- When complete, select the Create New Code button to create the new Code Object.
- The code object appears on the Code Object page.
Setting Required Compute Resources (Auto-Scaling)
NOTE: This feature is only available if you are running on the Google Cloud Platform (GCP). For NVFlare code objects and code runs, you can adjust autoscaling methods for both the NVFlare Server and the NVFlare Client. For the NVFlare Server, you can only specify the CPU and RAM.
Autoscaling allows Rhino to run Code Runs on additional compute resources when the default Rhino Client capacity is not sufficient. This capability is designed to support resource‑intensive, "bursty"(processing tasks occur in short, intense or irregular spurts), or GPU‑based workloads while improving isolation, reliability, and cost efficiency. With autoscaling enabled, Rhino provisions temporary cloud VMs on demand, executes workloads on those VMs, and automatically terminates them when execution completes. This can help you make more efficient use of your computing resources and save on costs.
In this section of the screen there are three options: Use Client Resources, Set Minimum, and Use VM Pool.
- Use Client Resources - Uses the available client settings and resources.
- Set Minimum - Allows you to set the minimum number of resources that must be available. If you choose the Set Minimum option, you can indicate the minimum number of CPUs, amount of RAM, the disk size (VRAM), as well as the type and number of GPUs. You can adjust these settings when you create a code object and also when you run your code. Note that adjustments do not persist and will need to be reset with each run.
- Use VM Pool - Allows you to select a Pre-allocated Virtual Machine Pool. Select a VM pool to indicate which dedicated compute resource you want to use for your code run, ensuring guaranteed availability for high-demand workloads such as GPU-intensive AI training and inference. This feature provides faster job startup times by using pre-warmed VMs and offers predictable costs through fixed capacity reservations.
Each option is detailed below.
Use Client Resources
To use client resources, complete the following steps.
- Select the Use Client Resources button. It should be selected by default.
- When complete, select Create New Code Object or start a Code Run.
Set Minimum
To set the minimum required compute resources, complete the following steps.
- In the Required Compute Resources section, select Set Minimum.
- Next, make changes to the settings as needed. Note that these setting changes do not persist the next time you run the code object or code run. The settings are explained below.
| Setting | Description | Usage Notes |
| CPU MIN | The minimum number of CPU cores on which your code will be run. | If the CPU MIN is too low, you might see slow code execution or throttling. |
| RAM MIN | The minimum amount of RAM (main memory) that you want to allocate to running your code. | If this is too low, you might see an out-of-memory crash or slowness in execution due to disk swapping. |
| DISK SIZE | Amount of storage allocated to the instance. | Increasing this setting increases capacity (not necessarily speed) |
| GPU TYPE | The model of GPU hardware. The number of GPUs indicate the number of GPUs attached to the instance. | If your code isn’t written to use multiple GPUs, extra GPUs might not be used. Note that GPU availability depends on the selected cloud region, Project‑level GPU quotas, and the current capacity at the cloud provider. |
- Select Run without GPU if no GPU instance is available if your code supports CPU fallback, or if your GPU capacity is limited, but you are fine with slower results. This option can be good if you are debugging or testing, running small datasets, or running inference for small batches.
- Select Always create a new virtual machine allows GCP. By default a new virtual machine is always created at runtime.
- When complete, click Create New Code Object or start a Code Run.
Selecting a VM Pool
To select a VM Pool, complete the following steps.
- If you choose Use VM Pool, available pools are shown. For each pool you will see a name, as well as the current resources available. For each pool you will see the following information.
- Number of VMs (if any)
- Number of vCPUs per VM
- Amount of RAM per VM
- Disk size per VM
- Whether there are GPUs available, and how many
- Select the pool of your choice.
- When complete, select Create New Code Object or start a Code Run.
Creating a New Generalized Compute Code Object Version
To create a new version, complete the following steps.
- Go to the page that has the original object you want to create a new version of.
- In the upper right corner of the box where your original object is, select the + New Version button.
- A new window appears that allows you to create a new version of your object.
Getting Help
If you have received an error or run into any issues throughout the process, please reach out to support@rhinohealth.com for more assistance.