Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 SQL Server не использует все процессоры  [new]
Andraptor
Member

Откуда: Ukraine, Kharkiv
Сообщений: 291
Microsoft SQL Server 2012 (SP1) - 11.0.3000.0 (X64) 
Oct 19 2012 13:38:57
Copyright (c) Microsoft Corporation
Enterprise Edition (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1)


На сервере имеется 4 10-и ядерных процессора. Итого с гипертрейдингом имеем 80 логических:
SELECT cpu_count AS [Logical CPU Count], hyperthread_ratio AS Hyperthread_Ratio,
cpu_count/hyperthread_ratio AS Physical_CPU_Count,
physical_memory_kb/1024 AS Physical_Memory_in_MB,
sqlserver_start_time, affinity_type_desc 
FROM sys.dm_os_sys_info

Logical CPU Count Hyperthread_Ratio Physical_CPU_Count Physical_Memory_in_MB sqlserver_start_time    affinity_type_desc
----------------- ----------------- ------------------ --------------------- ----------------------- ------------------------------------------------------------
80 20 4 131008 2012-11-25 03:51:05.003 AUTO

Фактически SQL Server использует только 40:
select scheduler_id,cpu_id, status, is_online from sys.dm_os_schedulers 
where status='VISIBLE ONLINE' 

+ Результат запроса

scheduler_id cpu_id      status                                                       is_online
------------ ----------- ------------------------------------------------------------ ---------
0 0 VISIBLE ONLINE 1
1 1 VISIBLE ONLINE 1
2 2 VISIBLE ONLINE 1
3 3 VISIBLE ONLINE 1
4 4 VISIBLE ONLINE 1
5 5 VISIBLE ONLINE 1
6 6 VISIBLE ONLINE 1
7 7 VISIBLE ONLINE 1
8 8 VISIBLE ONLINE 1
9 9 VISIBLE ONLINE 1
10 10 VISIBLE ONLINE 1
11 11 VISIBLE ONLINE 1
12 12 VISIBLE ONLINE 1
13 13 VISIBLE ONLINE 1
14 14 VISIBLE ONLINE 1
15 15 VISIBLE ONLINE 1
16 16 VISIBLE ONLINE 1
17 17 VISIBLE ONLINE 1
18 18 VISIBLE ONLINE 1
19 19 VISIBLE ONLINE 1
40 20 VISIBLE ONLINE 1
41 21 VISIBLE ONLINE 1
42 22 VISIBLE ONLINE 1
43 23 VISIBLE ONLINE 1
44 24 VISIBLE ONLINE 1
45 25 VISIBLE ONLINE 1
46 26 VISIBLE ONLINE 1
47 27 VISIBLE ONLINE 1
48 28 VISIBLE ONLINE 1
49 29 VISIBLE ONLINE 1
50 30 VISIBLE ONLINE 1
51 31 VISIBLE ONLINE 1
52 32 VISIBLE ONLINE 1
53 33 VISIBLE ONLINE 1
54 34 VISIBLE ONLINE 1
55 35 VISIBLE ONLINE 1
56 36 VISIBLE ONLINE 1
57 37 VISIBLE ONLINE 1
58 38 VISIBLE ONLINE 1
59 39 VISIBLE ONLINE 1

Оставшиеся 40 находятся в состоянии VISIBLE OFFLINE. Как я понимаю, это значит, что SQL их видит, но не использует.

Как заставить SQL использовать все доступные процессоры?
26 ноя 12, 12:34    [13528669]     Ответить | Цитировать Сообщить модератору
 Re: SQL Server не использует все процессоры  [new]
Andraptor
Member

Откуда: Ukraine, Kharkiv
Сообщений: 291
ага!
Вот такое вот сообщение есть в Error Log:
Message
SQL Server detected 4 sockets with 10 cores per socket and 20 logical processors per socket, 80 total logical processors; using 40 logical processors based on SQL Server licensing. This is an informational message; no user action is required.

Что оно обозначает? При чем тут лицензирование, если у меня Enterprise Edition???
26 ноя 12, 13:02    [13528915]     Ответить | Цитировать Сообщить модератору
 Re: SQL Server не использует все процессоры  [new]
WarAnt
Member

Откуда: Питер
Сообщений: 2421
Andraptor,

а что интерпрайз купили с анлимом лицензий на ядра?
26 ноя 12, 13:09    [13528986]     Ответить | Цитировать Сообщить модератору
 Re: SQL Server не использует все процессоры  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74925
Что вернет?

select serverproperty('Edition')
26 ноя 12, 13:09    [13528990]     Ответить | Цитировать Сообщить модератору
 Re: SQL Server не использует все процессоры  [new]
Andraptor
Member

Откуда: Ukraine, Kharkiv
Сообщений: 291
WarAnt,
Лицензия - это просто юридическая бумажка.
26 ноя 12, 13:12    [13529019]     Ответить | Цитировать Сообщить модератору
 Re: SQL Server не использует все процессоры  [new]
Andraptor
Member

Откуда: Ukraine, Kharkiv
Сообщений: 291
pkarklin
Что вернет?

select serverproperty('Edition')


Enterprise Edition (64-bit)
26 ноя 12, 13:12    [13529022]     Ответить | Цитировать Сообщить модератору
 Re: SQL Server не использует все процессоры  [new]
Glory
Member

Откуда:
Сообщений: 104760
select serverproperty('NumLicenses')
26 ноя 12, 13:14    [13529036]     Ответить | Цитировать Сообщить модератору
 Re: SQL Server не использует все процессоры  [new]
Гость333
Member

Откуда:
Сообщений: 3683
Andraptor,

Может, у вас лицензия не core-based? Вот по этой ссылке: Microsoft SQL Server 2012
Licensing Guide
в табличке на пятой странице написано, что в случае лицензирования Enterprise Server + CAL максимально используется 20 ядер. Умножаем на два (гипертрединг), получаем 40. Вот ещё статейка по теме: http://blogs.msdn.com/b/saponsqlserver/archive/2012/06/15/sql-server-2012-enterprise-editions.aspx
26 ноя 12, 13:18    [13529059]     Ответить | Цитировать Сообщить модератору
 Re: SQL Server не использует все процессоры  [new]
WarAnt
Member

Откуда: Питер
Сообщений: 2421
Andraptor,

только не в случае апгрейда с предыдущей версии при лицензировании на сервер + лицензии

Но об этом уже Гость333 написал.
26 ноя 12, 13:22    [13529102]     Ответить | Цитировать Сообщить модератору
 Re: SQL Server не использует все процессоры  [new]
Andraptor
Member

Откуда: Ukraine, Kharkiv
Сообщений: 291
Glory
select serverproperty('NumLicenses')

NULL
26 ноя 12, 13:26    [13529133]     Ответить | Цитировать Сообщить модератору
 Re: SQL Server не использует все процессоры  [new]
Kasper
Member

Откуда: Брянск
Сообщений: 124
Glory,

А при установки дополнительного Instance, будет возможность использовать эти процессоры?
26 ноя 12, 13:34    [13529188]     Ответить | Цитировать Сообщить модератору
 Re: SQL Server не использует все процессоры  [new]
Andraptor
Member

Откуда: Ukraine, Kharkiv
Сообщений: 291
WarAnt
Andraptor,

только не в случае апгрейда с предыдущей версии при лицензировании на сервер + лицензии

Но об этом уже Гость333 написал.

я перед установкой 2012, 2005 полностью сносил.
И все равно, я абсолютно не понимаю, какое отношение к этому имеет лицензирование.
Даже в BOL по serverproperty написано:

LicenseType

Не используется.
В продукте SQL Server не сохраняются сведения о лицензии.
Всегда возвращает DISABLED.


Базовый тип данных: nvarchar(128)
26 ноя 12, 13:35    [13529195]     Ответить | Цитировать Сообщить модератору
 Re: SQL Server не использует все процессоры  [new]
Andraptor
Member

Откуда: Ukraine, Kharkiv
Сообщений: 291
Или что, для CAL licensing и Core-based Licensing разные инсталяшки?
26 ноя 12, 13:42    [13529245]     Ответить | Цитировать Сообщить модератору
 Re: SQL Server не использует все процессоры  [new]
Jovanny
Member

Откуда:
Сообщений: 1195
Andraptor,

А что-то типа такого:

ALTER SERVER CONFIGURATION SET PROCESS AFFINITY NUMANODE = 0 TO 3


http://msdn.microsoft.com/ru-ru/library/ee210585%28v=SQL.105%29.aspx
26 ноя 12, 14:26    [13529616]     Ответить | Цитировать Сообщить модератору
 Re: SQL Server не использует все процессоры  [new]
Andraptor
Member

Откуда: Ukraine, Kharkiv
Сообщений: 291
Гость333
Andraptor,

Может, у вас лицензия не core-based? Вот по этой ссылке: Microsoft SQL Server 2012
Licensing Guide
в табличке на пятой странице написано, что в случае лицензирования Enterprise Server + CAL максимально используется 20 ядер. Умножаем на два (гипертрединг), получаем 40. Вот ещё статейка по теме: http://blogs.msdn.com/b/saponsqlserver/archive/2012/06/15/sql-server-2012-enterprise-editions.aspx


Спасибо за ссылку, проблема именно в этом!
26 ноя 12, 15:56    [13530572]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить