Почему пляшут результаты теста Гилева на мощном сервере и как стабилизировать производительность 1С

Системный администратор 1С v8.3 (Управляемые формы) IT и автоматизация бизнеса
← На главную

Ситуация, когда мощный сервер на базе современного процессора Intel Core i9-13900K, оснащенный 128 Гб оперативной памяти и сверхбыстрыми NVMe-накопителями, показывает нестабильные результаты в тесте производительности Гилева, встречается довольно часто. Проблема проявляется в "скачках" показателей: от отличных 90 единиц до катастрофических 15–25, при этом в файловом варианте база работает стабильно быстро. Разберем по шагам, почему это происходит и как настроить систему для получения максимально высоких и, главное, стабильных результатов.

Анализ влияния гибридной архитектуры процессора (P-cores и E-cores)

Проанализируем архитектуру современных процессоров Intel 12-го, 13-го и 14-го поколений. Они используют гибридную технологию: P-cores (Performance cores — производительные ядра) и E-cores (Efficiency cores — энергоэффективные ядра). Тест Гилева является однопоточным, и основной причиной "пляшущих" результатов является то, что операционная система может назначить выполнение этого потока на медленное E-ядро.

Рассмотрим способы решения этой проблемы:

  1. Отключение E-cores в BIOS: Это самый радикальный и эффективный метод для сервера 1С. Если выключить энергоэффективные ядра, планировщик Windows будет вынужден использовать только производительные ядра, что сразу стабилизирует тест на высоких значениях.
  2. Использование Scroll Lock: На некоторых материнских платах реализована функция Legacy Game Compatibility Mode, которая позволяет временно "парковать" E-ядра нажатием клавиши Scroll Lock. Однако для серверного решения это не является надежным методом.
  3. Настройка Affinity Mask в SQL Server: Если вы не хотите отключать ядра целиком на уровне BIOS, мы можем ограничить использование ядер конкретно для SQL Server. В настройках SQL Server Management Studio (свойства сервера — Processor) следует снять галочку "Automatically set processor affinity mask for all processors" и вручную указать только первые потоки, которые соответствуют P-ядрам. Для i9-13900K это первые 16 потоков (8 ядер с Hyper-Threading).

Оптимизация настроек SQL Server под однопоточную нагрузку

Выясним причину, по которой SQL-версия работает медленнее файловой. Тест Гилева крайне чувствителен к задержкам обмена данными между сервером приложений 1С и СУБД. Разберем, какие параметры SQL Server влияют на результат:

Параметр MAXDOP (Max Degree of Parallelism): Многие ошибочно оставляют этот параметр в значении 0 (использовать все ядра). Для 1С рекомендуется устанавливать значение, равное 1, либо половине физических ядер одного сокета. Однако для прохождения теста Гилева значение 1 часто дает более стабильный результат, так как исключает накладные расходы на попытки распараллеливания запроса, который по своей сути однопоточный.

Протокол Shared Memory: Проанализируем способ подключения. Если 1С и SQL Server находятся на одном физическом сервере, использование протокола Shared Memory вместо TCP/IP может поднять результат в 1.5–2 раза. Чтобы форсировать использование общей памяти, в строке соединения с сервером баз данных вместо IP-адреса или имени сервера следует использовать точку . или (local).

Настройка дисковой подсистемы и TempDB

Даже при наличии быстрых NVMe-дисков со скоростью 7000+ Мб/с, неправильное распределение нагрузки может привести к очередям и задержкам. Рассмотрим правильную конфигурацию:

Разнесем данные по разным физическим дискам (если их 4, как в рассматриваемом случае):

  1. Диск 1: Операционная система и файлы подкачки.
  2. Диск 2: Файлы баз данных (mdf).
  3. Диск 3: Логи транзакций (ldf).
  4. Диск 4: Временная база TempDB и временные файлы сервера 1С.

Важно: Проверьте температуру NVMe-дисков во время тестов. При интенсивной записи (особенно в TempDB) диски могут уходить в троттлинг, сбрасывая скорость в несколько раз, что объясняет падение результатов через 10 минут после начала активной работы.

Тюнинг операционной системы Windows

Посмотрим на настройки электропитания. Стандартного режима "Высокая производительность" часто недостаточно для исключения задержек переключения частот процессора. Рекомендуем активировать схему "Максимальная производительность" (Ultimate Performance). Сделать это можно через командную строку:

powercfg -duplicatescheme e9a42b02-d5df-448d-aa00-03f14749eb61

Также проанализируем состояние функции Core Parking (парковка ядер). Используйте утилиты типа ParkControl, чтобы убедиться, что производительные ядра никогда не засыпают. В серверных задачах 1С время "просыпания" ядра (даже микросекунды) может существенно снижать итоговый балл в синтетических тестах.

Влияние антивирусов и журналов регистрации

Хотя автор темы отметил, что отключение антивируса дает небольшой прирост, проанализируем это подробнее. В Windows Defender необходимо добавить в исключения:

Отключение Журнала регистрации (или перевод его в режим "Регистрировать только ошибки") действительно помогает в файловом варианте, но в SQL-варианте его влияние меньше, так как запись идет в базу данных, а не в текстовые файлы (если используется новый формат .lgd).

Проблемы стабильности процессоров Intel 13-го и 14-го поколений

Нельзя игнорировать техническую особенность процессоров 13900K. Разберем ситуацию с лимитами потребления (Power Limits). По умолчанию многие BIOS устанавливают "Unlimited" лимиты, что ведет к мгновенному перегреву и троттлингу.

Для стабилизации производительности необходимо:

  1. Обновить BIOS до последней версии с актуальным микрокодом (например, 0x129 или выше).
  2. Установить профиль Intel Baseline Profile или вручную ограничить PL1/PL2 до рекомендуемых 253W. Это предотвратит резкие скачки частоты и сделает результаты теста стабильными на длительной дистанции.

Резюмируем: Основная причина "пляски" — попадание теста на E-ядра и агрессивное управление питанием процессора. Отключение E-cores в BIOS, настройка схемы "Ultimate Performance" и форсирование протокола Shared Memory для SQL Server — это три "кита", которые позволят вернуть результат к стабильным 80–90+ попугаям.

← На главную