Extra Specs for Advanced CPU Topologies & Aggregates

Extra Specs for Advanced CPU Topologies

By default, the system creates each virtual CPU (vCPU) as a single-core, single-socket device. For most Linux distributions this does not represent a problem; however, administrators of Windows-based images may quickly run into limitations of the Windows licensing model, which limit versions to different numbers of physical sockets.

To avoid this limitation and to provide our customers greater flexibility with vCPU configurations, We now support several options when configuring flavors to allow for multi-core single-socket vCPUs. These options are represented as Extra Specs to OpenStack flavors.

To modify these extra specs,

  1. Go to the Flavors.

  2. Select View Extra Specs from the actions dropdown.

  3. Add new values by clicking  the Create button.

  4. The options available for controlling the number of virtual sockets presented are:


Topology: Number of CPU Sockets:

This hard-sets the number of sockets presented and evenly divides the number of vCPUs assigned to the flavor between these sockets.

Please be aware that errors will be generated if the number of vCPUs is not evenly divisible by the setting for this extra spec.

Topology: Number of cores per socket:

This provides a variable number of sockets based on how many vCPUs are assigned to the flavor.

As with the above spec, the vCPUs' value and the value of this extra spec must be evenly divisible.

Topology: Number of threads per core:

This setting is meant to emulate hyper-threading behavior in vCPUs. We recommend not using this extra spec at this time.

There are some additional rules to consider when defining a variable CPU topology. Please see the vCPU knowledge base article on our support site to read through more details.

Extra Specs for Aggregates

Admins can target instances to be scheduled to an aggregate by defining flavor extra specs.  When launching the instance the hypervisor placement algorithm will look for these extra specs and if a matching aggregate is found will attempt to launch the instances on a hypervisor in that aggregate.

To create extra specs for aggregates do the following:

  1. Go to the Flavors.

  2. Select View Extra Specs from the actions dropdown.

  3. Add new values by clicking  the Create button.

  4. Select Other Key and click Create.


This is the key for the extra spec. Typically this is an integer.


The value should be the name of the aggregate to target when launching an instance.  

The data set will be visible in the Flavor Extra Specs Dialog box.  Once created Admins can target an aggregate to this flavor.  See the Create and Manage Aggregate section for more details.


Have more questions? Submit a request
Powered by Zendesk