Cpu Class
The Cpu class contains information about one CPU on an instance of SQL Server.
Assembly: Microsoft.SqlServer.Smo (in Microsoft.SqlServer.Smo.dll)
| Name | Description | |
|---|---|---|
![]() | AffinityMask | Gets or sets the AffinityMask member of the Cpu class. |
![]() | GroupID | Gets the current value of the GroupID member. |
![]() | ID | Gets the ID of the CPU that is represented by this Cpu object. |
![]() | NumaNodeID | Gets the NumaNodeID of the NUMA node to which this Cpu object belongs. |
| Name | Description | |
|---|---|---|
![]() | Equals(Object^) | (Inherited from Object.) |
![]() | GetHashCode() | (Inherited from Object.) |
![]() | GetType() | (Inherited from Object.) |
![]() | ToString() | (Inherited from Object.) |
Access to the Cpu class is though the Cpus collection property.
To change the CPU settings on an instance of SQL Server, users must have ALTER permission on the database.
The following code example displays the total number of CPUs on the local instance of SQL Server.
C#
using System;
using Microsoft.SqlServer.Management.Smo;
namespace samples
{
class Program
{
static void Main(string[] args)
{
Server dbServer = new Server("(local)");
Console.WriteLine(
"Total number of CPUs for server {0} is {1}.",
dbServer.Name,
dbServer.AffinityInfo.Cpus.Count);
}
}
}
Powershell
$dbServer = new-Object Microsoft.SqlServer.Management.Smo.Server("(local)")
Write-Host "Total number of CPUs for server" $dbServer.Name "is" $dbServer.AffinityInfo.Cpus.Count
Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

