CPU Pools
FAQs on CPU pools on Oracle Database Appliance.
What are the types of CPU pools supported?
There are three types of CPU pools available. BM type, VM type and DBS (DB system)
        type. The dbs type is available in Oracle Database appliance release 19.11
        and later. In general, CPU pool is used to limit CPU usage by the objects, but it is not
        designed to prevent other objects from using the CPUs within the CPU pool. 
                  
What is the BM CPU pool?
BM CPU pool is designed to limit the database on the Oracle Database Appliance to only run on the CPUs within the CPU pool. Once a CPU pool is assigned to a database, then the database can only run on the CPU set within the CPU pool. BM CPU pool can be attached to different databases. But one database cannot use more than one CPU pool.
What is VM CPU pool?
VM CPU pool is designed to limit the application VMs to only run on the CPUs within the CPU pool. Once a CPU pool is assigned to a VM, then the VM can only run on the CPU set within the CPU pool. VM CPU pool can be attached to different VMs.
What is DB system CPU pool?
With Oracle Database appliance release 19.11 and later, a new CPU pool type
        called DB system CPU pool, or dbs type is available. The
          dbs CPU pool cannot overlap with any other CPU pool (BM, or VM CPU pool).
        After it is created, it can be passed as a parameter to the command odacli
          create-dbsystem to limit the DB system CPU within the CPUs inside this CPU pool.
        Multiple DB systems can share one dbs CPU pool and can oversubscribe to the
          dbs CPU pool. When DB system is created without specifying the
          dbs CPU pool, an internal CPU pool is created and this CPU pool is
        exclusive to this DB system; it cannot be shared with any other DB system. The
          dbs CPU pool is the DB system CPU pool is manually created through ODACLI
        commands. The dbs CPU pool is assigned to DB systems at creation time or
        after creation using the command odacli modify-dbsystem. The
          dbs CPU pool can be shared by different DB systems, but the size of the
        CPU pool should be at least equal or greater than the largest DB system shape it is
        associated to.  
                  
What is shared DB system CPU pool?
With Oracle Database appliance release 19.11 and later, a new CPU pool type called DB system CPU pool, ordbs type is available. The
        dbs CPU pool cannot overlap with any other CPU pool (BM, or VM CPU pool).
      After it is created, it can be passed as a parameter to the command odacli
        create-dbsystem to limit the DB system CPU within the CPUs inside this CPU pool.
      Multiple DB systems can share one dbs CPU pool and can oversubscribe to the
        dbs CPU pool. 
               What happens if application VMs are not using CPU pool?
If a database or VM is not using a CPU pool, then the database or VM can run on any CPU. The operating system assigns the available CPUs at run time, including the CPUs within a CPU pool assigned to other VMs.
Can a CPU pool overlap with another CPU pool by sharing some CPUs?
No, two CPU pools cannot overlap.
Can I create the vm CPU
        pool on a single node on a high-availability environment? 
                  
Currently, this is not supported. If a VM uses a vm CPU pool,
        and wants to failover to the other node, the CPU pool is pre-created. 
                  
I have DB system and application VMs running on the same host, how do I prevent application VMs from using the CPUs of the DB system?
You should create a CPU pool for the application VMs. Attaching the
          vm CPU pool to the application VMs will limit VMs to only use the CPUs in
        the CPU pool, and not use the CPUs of the DB systems. 
                  
Can application VMs share the same CPU pool?
Yes, different application VMs can share the same CPU pool. Oversubscription to the CPU pool is allowed, although not recommended because of potential performance impact.
Can DB systems share the same CPU pool?
Yes, different DB systems can share the same dbs CPU pool.
        Oversubscription to the CPU pool is allowed, although not recommended because of potential
        performance impact. 
                  
Can DB systems share the same CPU pool with application VMs?
No.
Can I use all bare metal system CPU cores in the CPU pool?
In general, you must not use all CPU cores in the CPU pool. The bare metal
        system host needs CPU as well. Starting with Oracle Database Appliance release 19.12, by
        default, the first core of the socket is reserved for the bare metal system host and cannot
        be used by the VM or DB system CPU pools, and can be used by BM CPU pools. With Oracle
        Database Appliance release 19.13, you can use the --use-reserved-cpucores
        option to override this behavior in the odacli remap-cpupools command. For
        more information, see the Oracle Database Appliance Deployment and User's Guide
        for your hardware model. 
                  
Parent topic: Oracle Database Appliance Frequently Asked Questions