Конфигурация сервера: маска сходства ввода-вывода
Область применения: SQL Server
Для одновременного выполнения множества задач Windows иногда распределяет потоки процессов между разными процессорами. Хотя с точки зрения операционной системы эти действия эффективны, они могут снизить производительность SQL Server при больших системных нагрузках, так как данные кеша каждого процессора будут постоянно обновляться. В этих условиях назначение определенного потока задач процессору может улучшить производительность, поскольку количество перезагрузок процессора будет снижено; такая связь между определенным потоком задач и процессором называется соответствием процессоров.
SQL Server поддерживает сопоставление процессоров с двумя параметрами маски сходства: affinity mask
(также известная как маска сходства ЦП) и affinity I/O mask
. Дополнительные сведения о параметре affinity mask
см. в разделе "Настройка параметра конфигурации сервера сходства маски". Поддержка сходства ЦП и ввода-вывода для серверов с 33-64 процессорами требует, чтобы вы также использовали параметры конфигурации сервера сходства 64 маски и сходства 64.
Примечание.
Поддержка соответствия процессоров для серверов с числом процессоров от 33 до 64 доступна только в 64-разрядных версиях операционных систем.
Параметр affinity I/O mask
привязывает операции ввода-вывода диска SQL Server к указанному подмножество ЦП. В средах высокоскоростной обработки транзакций в реальном времени (OLTP) SQL Server это расширение может улучшать производительность потоков SQL Server, выдающих вводы-выводы. Это улучшение не поддерживает сопоставление оборудования для отдельных дисков или контроллеров дисков.
Значение для affinity I/O mask
указания того, какие ЦП в многопроцессорном компьютере могут обрабатывать операции ввода-вывода диска SQL Server. Маска — это битовая карта, в которой самый правый бит обозначает ЦП самого низкого уровня (0), второй бит справа обозначает ЦП второго снизу уровня (1) и т. д. Чтобы настроить более 32 процессоров, задайте и affinity I/O mask
те, и .affinity64 I/O mask
Возможны следующие значения affinity I/O mask
.
Байты в маске | Число процессоров |
---|---|
1-байт | До 8 ЦП |
2-байт | До 16 ЦП |
3-байт | До 24 ЦП |
4-байт | До 32 ЦП |
Чтобы покрыть более 32 ЦП, настройте 4-байт affinity I/O mask
для первых 32 ЦП и до 4-байтов affinity64 I/O mask
для оставшихся ЦП.
Немного 1
в шаблоне сходства ввода-вывода указывает, что соответствующий ЦП может выполнять операции ввода-вывода диска SQL Server. Бит 0
указывает, что операции ввода-вывода на диске SQL Server не должны быть запланированы для соответствующего ЦП. Если для всех битов задано 0
значение (или affinity I/O mask
не указано), диск SQL Server для ввода-вывода планируется для любого из ЦП, которые могут обрабатывать потоки SQL Server.
Так как параметр SQL Server affinity I/O mask
является специализированной операцией, используйте ее только при необходимости. В большинстве случаев сходство Windows по умолчанию обеспечивает лучшую производительность.
При указании 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 и не настраивайте его affinity mask
в SQL Server. Эти параметры пытаются достичь того же результата, и если конфигурации несогласованы, вы можете иметь непредсказуемые результаты. Сопоставление ЦП SQL Server лучше всего настроено с помощью sp_configure
системной хранимой процедуры в SQL Server.