Заставить sql работать на всех ядрах многоядерного процессора

Konstantin Dav
Дата: 01.02.2013 12:32:51
Господа.
У клиентов установлена бухгалтерская программа, которую время от времени заставляют генерировать отчеты. Она обращается с рядом запросов к машине, на которой установлен sql server express и у которой четырехядерный процессор. Я заметил,  что при этом на несколько минут на 100% загружается одно из ядер процессора. И даже если два клиента одновременно строят отчеты-все равно только одно ядро загружено. Просто время работы программы у клиента увеличивается.
Может, есть какой то параметр, который не дает sql express работать на всех ядрах?
Параметр affinity для назначения ядер процесам я проверил
Заранее спасибо за советы!
stavgreengo
Дата: 01.02.2013 12:34:56
переходить на другую редакцию ms sql only и погуглить по ограничениям в экспресс версии для общего просвещения.
Glory
Дата: 01.02.2013 12:41:41
Konstantin Dav
Может, есть какой то параметр, который не дает sql express работать на всех ядрах?

Да. Сам sql express не дает себе работать на всех ядрах.
Гость333
Дата: 01.02.2013 12:49:55
Konstantin Dav,

А что показывает запрос?
select scheduler_id,cpu_id, status, is_online from sys.dm_os_schedulers
pkarklin
Дата: 01.02.2013 13:34:57
Konstantin Dav
Дата: 01.02.2013 20:56:48
Гость333, спасибо за уточнение!
Запрос
select scheduler_id,cpu_id, status, is_online from sys.dm_os_schedulers

показывает

scheduler_id	cpu_id	status	is_online
0	0	VISIBLE ONLINE	1
1048578	0	HIDDEN ONLINE	1
1048579	0	HIDDEN ONLINE	1
1048580	0	HIDDEN ONLINE	1


счетчик
select COUNT(*) from sys.dm_os_schedulers where status = 'VISIBLE ONLINE'

показывает цифру 1
и попытки отредактировать это командой
ALTER SERVER CONFIGURATION SET PROCESS AFFINITY NUMANODE=0,1;

приводят к сообщению "The NUMANODE range that specifies NUMANODE 1 includes at least one NUMANODE that is not available to the current instance. The maximum NUMANODE number that is available to this instance is 0."
Видимо, придется перейти на другую версию сервера
:-)
Гость333
Дата: 04.02.2013 10:53:04
Konstantin Dav
и попытки отредактировать это командой
ALTER SERVER CONFIGURATION SET PROCESS AFFINITY NUMANODE=0,1;

приводят к сообщению

Обождите, какой NUMA? Попробуйте так:
ALTER SERVER CONFIGURATION SET PROCESS AFFINITY CPU=0,1;
pkarklin
Дата: 04.02.2013 11:05:08
Konstantin Dav,

Приведите результат SELECT @@version, ибо

SELECT @@VERSION

select scheduler_id,cpu_id, status, is_online from sys.dm_os_schedulers


Microsoft SQL Server 2008 (SP1) - 10.0.2531.0 (X64) 
Mar 29 2009 10:11:52
Copyright (c) 1988-2008 Microsoft Corporation
Express Edition (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1)


(1 row(s) affected)

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
257 0 HIDDEN ONLINE 1

(5 row(s) affected)