Параметр конфигурации сервера «affinity I/O mask»

Для одновременного выполнения множества задач операционные системы Microsoft Windows 2000 и Windows Server 2003 иногда распределяют потоки обработки задач по различным процессорам. Хотя с точки зрения операционной системы эти действия эффективны, они могут снизить производительность Microsoft SQL Server при больших системных нагрузках, так как данные кэша каждого процессора будут постоянно обновляться. В этих условиях назначение определенного потока задач процессору может улучшить производительность, поскольку количество перезагрузок процессора будет снижено; такая связь между определенным потоком задач и процессором называется соответствием процессоров.

SQL Server поддерживает соответствие процессоров с помощью двух параметров affinity mask: affinity mask (известная также как CPU affinity mask) и affinity I/O mask. Дополнительные сведения о параметре affinity mask см. в разделе Параметр конфигурации сервера «affinity mask». Поддержка соответствия процессоров и ввода-вывода для серверов с числом процессоров от 33 до 64 требует также использования параметров Параметр конфигурации сервера «affinity64 mask» и Параметр конфигурации сервера «affinity64 I/O mask» соответственно.

ПримечаниеПримечание

Поддержка соответствия процессоров для серверов с числом процессоров от 33 до 64 доступна только в 64-разрядных версиях операционных систем.

Параметр affinity I/O mask привязывает операцию дискового ввода-вывода SQL Server к определенному подмножеству ЦП. В средах SQL Server высокоскоростной обработки транзакций (OLTP) данное расширение может улучшать производительность потоков SQL Server, выдающих вводы-выводы. Это улучшение не поддерживает привязку оборудования для отдельных дисков или контроллеров дисков.

Значение параметра affinity I/O mask указывает, какие ЦП в многопроцессорном компьютере подходят для обработки операций ввода-вывода на диске SQL Server. Маска — это битовая карта, в которой самый правый бит обозначает ЦП самого низкого уровня (0), второй бит справа обозначает ЦП второго снизу уровня (1) и т. д. Чтобы настроить более 32 процессоров, нужно настроить и параметр affinity I/O mask, и параметр affinity64 I/O mask.

Ниже приведены возможные значения параметра affinity I/O mask.

  • Однобайтовая affinity I/O mask обеспечивает управление компьютерами, содержащими до 8 ЦП.

  • Двухбайтовая affinity I/O mask обеспечивает управление компьютерами, содержащими до 16 ЦП.

  • Трехбайтовая affinity I/O mask обеспечивает управление компьютерами, содержащими до 24 ЦП.

  • Четырехбайтовая affinity I/O mask обеспечивает управление компьютерами, содержащими до 32 ЦП.

  • Для работы более чем с 32 ЦП настройте четырехбайтовую affinity I/O mask для первых 32 ЦП и включающую до 4 байт affinity64 I/O mask для оставшихся ЦП.

1 бит в шаблоне привязки ввода-вывода показывает, что соответствующий ЦП может выполнять операции ввода-вывода с диском SQL Server; 0 бит указывает, что для соответствующего ЦП не следует планировать никаких операций ввода-вывода с диском SQL Server. Когда все биты установлены на ноль или affinity I/O mask не указана, ввод-вывод диска SQL Server планируется для любого ЦП, способного обрабатывать потоки SQL Server.

Поскольку настройка параметра SQL Server маска привязки ввода-вывода является специализированной операцией, она должна использоваться только при необходимости. В большинстве случаев привязка по умолчанию в системах Windows 2000 или Windows Server 2003 обеспечивает самую высокую производительность.

При указании параметра affinity I/O mask его следует использовать вместе с параметром конфигурации affinity mask. Не следует включать один и тот же процессор и в переключателе affinity I/O mask, и в параметре affinity mask. Биты, относящиеся к каждому процессору, могут находиться в одном из трех состояний:

  • 0 в параметре affinity I/O mask и в параметре affinity mask;

  • 1 в параметре affinity I/O mask и 0 в параметре affinity mask;

  • 0 в параметре affinity I/O mask и 1 в параметре affinity mask.

Параметр affinity I/O mask является расширенным параметром. С помощью системной хранимой процедуры sp_configure изменить значение параметра affinity I/O mask можно только при условии, если параметр show advanced options имеет значение 1. В SQL Server для изменения параметра affinity I/O mask требуется перезапуск экземпляра SQL Server.

ПредупреждениеВнимание!

Не используйте маску привязки процессоров в операционной системе Windows и маску привязки в SQL Server одновременно. Эти настройки предназначены для достижения одного результата, и если их значения будут несогласованными, результат может быть непредсказуем. Привязка ЦП SQL Server лучше всего настраивается с использованием параметра sp_configure в SQL Server.

См. также

Справочник

RECONFIGURE (Transact-SQL)

sp_configure (Transact-SQL)

Основные понятия

Наблюдение за использованием ресурсов (системный монитор)

Параметры конфигурации сервера