Skip to main content

How to Create a Custom Core

Create a custom Signaloid C0 core tuned to your application.

Your Signaloid Cloud Developer Platform account starts with a set of default C0 cores, and these are suitable for most tasks. For workloads with specific demands on speed, accuracy, or memory, you can also create custom C0 cores tuned to your application. Every application that runs on the Signaloid Cloud Compute Engine, from the Code Playground or from a connected repository, can pick any of these cores.

This guide covers how to:

Create a new Core

Open the Cores page (Figure 1). The page lists Signaloid Cores. Click Add New Core () to open the Add Execution Core dialog. Once you create a core, a Custom Cores group appears listing the cores you have made.

Figure 1. Landing on the Cores page and scrolling through the Signaloid Cores.

In the Add Execution Core dialog (Figure 2):

  • Choose a Core Name. This is how the core is listed in every Core selector.
  • Choose a Core Class. C0Pro is the only class you can create.
  • Choose a Microarchitecture. The dropdown lists every microarchitecture available to your account, including options like Athens, Reference, and Bypass. Microarchitectures that your account tier cannot use show Upgrade. Microarchitectures still in alpha show an Alpha release chip. For more information on microarchitectures, see Microarchitectures.
  • Choose a Signaloid Representation Size. Higher values give more precise distributional results. Reference cores replace this control with a Reference Quality Level slider instead.
  • Choose the Memory Allocation, from 256 kB to 2 GB in fixed steps. Your account tier caps how high you can go.
  • Choose Correlation Tracking. Autocorrelation detects values derived from a common ancestor and accounts for the correlation in arithmetic on them, at a performance cost. Disabled turns the tracking off. Not every microarchitecture supports it.

For what each of these fields controls and the values available on your tier, see Properties of C0 cores.

Figure 2 walks through creating the example used throughout this guide and seeing it appear in the Custom Cores group. The example is a custom C0 core called QuickStartCore with the Athens microarchitecture, a Signaloid Representation Size of 64, 32 MB of Memory Allocation, and Correlation Tracking Disabled. To change any setting later, click Edit on the core card to open the Edit Core dialog. The dialog uses the same fields as the create flow, plus a read-only Core ID with a copy-to-clipboard button so you can reference the core from the Compute Engine API.

To remove a custom core, click Delete on the card.

Figure 2. Creating a custom C0 core called QuickStartCore on the Signaloid Cloud Developer Platform: clicking Add New Core, filling the Core Name, Class, Microarchitecture, Representation Size, Memory Allocation, and Correlation Tracking fields, clicking Create Core, and seeing the new core appear in the Custom Cores group.

Use a custom Core in an application

The Code Playground and new connected repositories start with the Default Execution Core preset. You can change which core is the default on the Settings General page. To override the default for a single run, click the Core selector () in the Code Playground (Figure 3) or in the Repositories card (Figure 4). Pick your custom core from the list and run the application as usual.

Figure 3. Picking the new custom core from the Core selector in the Code Playground toolbar.
Figure 4. Picking the new custom core from the Active Core selector on a connected Repository card.