Есть ли польза от многоядерных процессоров?
Безусловно, да. Одновременно компьютер занимается несколькими задачами — хотя бы работа Windows (кстати, это сотни разных задач) и, в тот же момент, проигрывание фильма. Проигрывание музыки и просмотр интернета. Работа текстового редактора и включённая музыка. Два процессорных ядра — а это, по сути, два процессора, справятся с разными задачами быстрее одного. Два ядра сделают это несколько быстрее. Четыре — ещё быстрее, чем два.
В первые годы существования технологии многоядерности далеко не все программы умели работать даже с двумя ядрами процессора. К 2014 году подавляющее большинство приложений отлично понимают и умеют пользоваться преимуществами нескольких ядер. Скорость обработки задач на двухядерном процессоре редко увеличивается в два раза, но прирост производительности есть почти всегда.
Поэтому укоренившийся миф о том, что, якобы, программы не могут использовать несколько ядер — устаревшая информация. Когда-то действительно было так, сегодня ситуация улучшилась кардинально. Преимущества от нескольких ядер неоспоримы, это факт.
Список версий файлов
Имя файла
acpi.sys
система
Windows 10
Размер файла
572312 bytes
Дата
2017-03-18
Скачать
Подробности файла | ||
---|---|---|
MD5 | 462ac31cfb3fd6daac417833eb82b695 | |
SHA1 | 9a40e2ae31ce9c15b32b41159bf76df999ca168c | |
SHA256 | aab25a06cab614a7ac54d3cc94156e2263a390ce476279aea2ca1034f4b639cd | |
CRC32 | 22286dff | |
Пример расположения файла | C:\Windows\System32\drivers\ |
Имя файла
acpi.sys
система
Windows 8.1
Размер файла
426304 bytes
Дата
2014-11-21
Скачать
Подробности файла | ||
---|---|---|
MD5 | eb7850e3a46f6ff48aecd77a016dab0b | |
SHA1 | ad0a743f28d667bfc375dd7e5f9b88c926c2c220 | |
SHA256 | 4d9086f1fa2969550dea74257d6a86d77d4ed581c65494c99abe956cf9da36ca | |
CRC32 | a9bd5ca5 | |
Пример расположения файла | C:\Windows\System32\drivers\ |
Имя файла
acpi.sys
система
Windows 8
Размер файла
337648 bytes
Дата
2012-07-26
Скачать
Подробности файла | ||
---|---|---|
MD5 | 682595b152aa55b2237d40eb9a3271fc | |
SHA1 | 9f6dd4f0c2e0a3f89487db1e5606b991244930b1 | |
SHA256 | 350b91f98e79a666e667a69d3d041951b7a07743653b0b571ae96179fc45dbcf | |
CRC32 | 3546df34 | |
Пример расположения файла | 1: C:\Windows\System32\drivers\ |
Имя файла
acpi.sys
система
Windows 7
Размер файла
334208 bytes
Дата
2010-11-21
Скачать
Подробности файла | ||
---|---|---|
MD5 | d81d9e70b8a6dd14d42d7b4efa65d5f2 | |
SHA1 | 54fb26c69829d3f1d0774d4e608327ffefa34d76 | |
SHA256 | fdaab7e23012b4d31537c5bdef245bb0a12fa060a072c250e21c68e18b22e002 | |
CRC32 | fd27adad | |
Пример расположения файла | — |
Имя файла
acpi.sys
система
Windows Vista
Размер файла
325608 bytes
Дата
-0001-11-30
Скачать
Подробности файла | ||
---|---|---|
MD5 | 1965aaffab07e3fb03c77f81beba3547 | |
SHA1 | 7a3b331a3ca1582222a03b63e99f56eac827128e | |
SHA256 | 351a1ebb1b95c8e03ed125c8f997dee810b4df36ad290e7685fc01963b522bfc | |
CRC32 | b8917cce | |
Пример расположения файла | — |
Имя файла
acpi.sys
система
Windows Vista
Размер файла
326712 bytes
Дата
2008-01-21
Скачать
Подробности файла | ||
---|---|---|
MD5 | 8c99ed256a889d647935a97c543b7b85 | |
SHA1 | 755bc0db51f5d0e0667919bd43387d48346d8444 | |
SHA256 | a11099d52528a398cc01c84eb2ad83120171b7b2e24c1aedda18596c921183e4 | |
CRC32 | a4e60d32 | |
Пример расположения файла | — |
Имя файла
acpi.sys
система
Windows Vista
Размер файла
313960 bytes
Дата
-0001-11-30
Скачать
Подробности файла | ||
---|---|---|
MD5 | b10c33bf685ac7d2a80daf585f993821 | |
SHA1 | c5f0cf5c63bf9b45358ba4e409bffef05b1d15e9 | |
SHA256 | ea63accbd8b55c9b12948ea11e002b98bb25823550fbe004bb571d4eb23c7a55 | |
CRC32 | 43fd23a9 | |
Пример расположения файла | — |
Имя файла
acpi.sys
система
Windows XP
Размер файла
187776 bytes
Дата
2008-04-14
Скачать
Подробности файла | ||
---|---|---|
MD5 | 8fd99680a539792a30e97944fdaecf17 | |
SHA1 | faf1ae66cc016dd7281a1fca53be841b6b611106 | |
SHA256 | 594f8e0c3695400b0c09a797af6bdfac6f750ecd67d0ee803914c572b1dcc43c | |
CRC32 | b5814113 | |
Пример расположения файла | — |
Виртуальная многоядерность, или Hyper-Threading
Существуют ещё и виртуальные процессорные ядра. Технология Hyper-Threading в процессорах производства Intel заставляет компьютер «думать», что внутри двухядерного процессора на самом деле 4 ядра. Очень похоже на то, как один-единственный жёсткий диск делится на несколько логических — локальные диски C, D, E и так далее.
Hyper-Threading — весьма полезная в ряде задач технология. Иногда бывает так, что ядро процессора задействовано лишь наполовину, а остальные транзисторы в его составе маются без дела. Инженеры придумали способ заставить работать и этих «бездельников», разделив каждое физическое процессорное ядро на две «виртуальные» части. Как если бы достаточно крупную комнату разделили перегородкой на две.
Имеет ли практический смысл такая уловка с виртуальными ядрами? Чаще всего — да, хотя всё зависит от конкретных задач. Вроде, и комнат стало больше (а главное — они используются рациональнее), но площадь помещения не изменилась. В офисах такие перегородки невероятно полезны, в некоторых жилых квартирах — тоже. В других случаях в перегораживании помещения (разделении ядра процессора на два виртуальных) смысла нет вообще.
Отметим, что наиболее дорогие и производительные процессоры класса Core i7 в обязательном порядке оснащены Hyper-Threading. В них 4 физических ядра и 8 виртуальных. Получается, что одновременно на одном процессоре работают 8 вычислительных потоков. Менее дорогие, но также мощные процессоры Intel класса Core i5 состоят из четырёх ядер, но Hyper Threading там не работает. Получается, что Core i5 работают с 4 потоками вычислений.
Частота многоядерных процессоров
Одна из характеристик компьютерных процессоров — их частота. Те самые мегагерцы (а чаще — гигагерцы). Частота — важная характеристика, но далеко не единственная. Да, пожалуй, ещё и не самая главная. К примеру, двухядерный процессор с частотой 2 гигагерца — более мощное предложение, чем его одноядерный собрат с частотой 3 гигагерца.
Совсем неверно считать, что частота процессора равна частоте его ядер, умноженной на количество ядер. Если проще, то у 2-ядерного процессора с частотой ядра 2 ГГц общая частота ни в коем случае не равна 4 гигагерцам! Даже понятия «общая частота» не существует. В данном случае, частота процессора равна именно 2 ГГц. Никаких умножений, сложений или других операций.
И вновь «превратим» процессоры в квартиры. Если высота потолков в каждой комнате — 3 метра, то общая высота квартиры останется такой же — всё те же три метра, и ни сантиметром выше. Сколько бы комнат не было в такой квартире, высота этих комнат не изменяется. Так же и тактовая частота процессорных ядер. Она не складывается и не умножается.
Способы решения ошибки ACPI BIOS ERROR с кодом 0x000000a5
Ошибка 0x000000a5 при установке или загрузке Windows появляется по следующим причинам:
- Старая прошивка BIOS, которая не соответствует ACPI;
- Установка несовместимых модулей ОЗУ;
- Обнаружение системой дополнительной виртуальной памяти при выходе из сна или режима гибернации;
- При активации Windows 7 и XP часто создается бинарный файл в корне системного диска. Он может быть причиной синего экрана смерти ACPI BIOS ERROR при загрузке системы;
- Повреждение драйвера ACPI.
Для того, чтобы исправить такую ошибку, нужно воспользоваться следующими советами.
Способ №1
Этот метод поможет исправить ошибку ACPI BIOS ERROR на Windows 10 и других более старых версиях операционной системы. Нужно скачать с официального сайта производителя материнской платы новую версию BIOS и обновить прошивку. Ошибка будет исправленной.
Способ №2
Избавиться от синего экрана смерти можно, отключив режим ACPI. Сделать это можно двумя способами.
- До начала установки Windows загружаемся в BIOS.
- Находим параметр, отвечающий за электропитание (Power Managmant. Может быть другое обозначение. Зависит от версии прошивки и материнской платы).
- Отключаем ACPI.
Нажимаем «F10», чтобы сохранить результат и перезагружаем ПК. Теперь можно устанавливать Windows.
Если ошибка ACPI BIOS ERROR возникает на этапе установки операционной системы, то отключить ACPI можно следующим образом:
- Начинаем установку операционной системы заново;
- Как только на экране появится текст «Нажмите F6 для установки драйверов SCSI или RAID» (в переводе на английский появится такой текст «Press F6 if you need to install third-party SCSI or RAID driver»), то нажать нужно клавишу F7.
- Она отменит установку драйвера ACPI и продолжит дальнейшую инсталляцию Windows.
Установка Windows продолжиться без BSODа.
Способ №3
Часто BSOD ACPI_BIOS_ERROR появляется по причине неисправной оперативной памяти, а также её разгона. Если вы выполняли последнее действие, то нужно сбросить все настройки к заводским.
Также не помешает проверить модули оперативной памяти на ошибки. Сделать это можно с помощью программы MemTest86. Или же можно по очереди доставать из слотов модули ОЗУ на некоторое время, запустив систему только с одной планкой. В данном случае вы либо услышите пост, либо система запустится корректно. Так можно исключить планку-виновницу.
Способ №4
Если синий экран смерти возник во время включения ноутбука после режима сна, значит, система обнаружила новую виртуальную память, обозначенную файлом Hiberfil.sys. Этот файл нужно удалить. Однако для начала нужно перезагрузить систему, возможно, ошибка исчезнет сама по себе. Если же BSOD не исчез, то нужно выполнить следующее:
- Вставляем установочный диск в дисковод. Нажимаем «R» на этапе «Добро пожаловать» в Setup.
- Выбираем «Командную строку» и прописываем команду «powercfg -h off».
Или удаляем данный файл вручную, используя встроенный поиск.
И еще один способ, как удалить hiberfil.sys – это внести изменения в редактор реестра Windows. Для этого выполняем следующее:
- Нажимаем «Win+R» и вводим «regedit».
- Откроется редактор реестра. Переходим по ветке «HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power». Здесь выбираем параметры «HiberFileSizePercent» и «HibernateEnabled» и задаем им значения, равные «0».
После редактирования реестра стоит перезагрузить систему.
Важно отметить, что если ошибка не исчезает, то нужно переустановить BIOS и провести полную диагностику аппаратной части ПК
Отличия 2‐ядерных чипов от 4‐ядерных
Рассмотрим основные моменты, которые отличают первую категорию чипов от второй. На аппаратном уровне можно заметить, что отличается только количество вычислительных блоков. В остальных случаях, ядра объединены высокоскоростной шиной обмена данными, общим контроллером памяти для плодотворной и оперативной работы с ОЗУ.
p, blockquote 5,0,1,0,0 –>
В теории 4‐ядерные решения должны быть быстрее и мощнее в 2 раза, поскольку выполняют на 100% больше операций за такт (возьмем за основу идентичную частоту, кэш, техпроцесс и все прочие параметры). Но на практике ситуация меняется совершенно нелинейно.
p, blockquote 7,0,0,0,0 –>
Но здесь стоит отдать должное: в многопотоке вся сущность 4 ядер раскрывается в полной мере.
p, blockquote 8,0,0,0,0 –>
На что влияет количество ядер процессора?
Многие путают понятие количества ядер и частоту процессора. Если это сравнивать с человеком, то мозг это процессор, нейроны — это ядра. Ядра работают не во всех играх и приложениях. Если в игре например выполняется 2 процесса, один вырисовывает лес, а другой город и в игре заложено многоядерность, то понадобиться всего 2 ядра, чтобы загрузить эту картинку. А если в игре заложено больше процессов, то задействуют все ядра.
И может быть наоборот, игра или приложение может быть написана так, одно действие может выполнять только одно ядро и в этой ситуации выиграет процессор, у которого выше частота и наиболее хорошо сложена архитектура (по этому обычно процессоры Интел чуть выигрывают Амд).
По этому грубо говоря, количество ядер процессора, влияет на производительность и быстродействие.
Информация о файле ACPI.sys
Описание: ACPI.sys важен для Windows. ACPI.sys находится в папке C:WindowsSystem32drivers. Известны следующие размеры файла для Windows 10/8/7/XP 274,304 байт (38% всех случаев), 187,776 байт, 188,288 байт или 265,688 байт. Драйвер может быть включен и выключен из Панели Инструментов – Сервисы или другими программами. У процесса нет видимого окна. У процесса нет детального описания. Это заслуживающий доверия файл от Microsoft. ACPI.sys представляется сжатым файлом. Поэтому технический рейтинг надежности 5% опасности.Если у вас возникли проблемы с ACPI.sys, Вы можете попросить разработчиков, www.microsoft.com, о помощи, или удалить программу Microsoft Windows в Панели управления Windows в разделе Программы и компоненты.
Важно: Некоторые вредоносные программы маскируют себя как ACPI.sys, особенно, если они расположены не в каталоге C:WindowsSystem32drivers. Таким образом, вы должны проверить файл ACPI.sys на вашем ПК, чтобы убедиться, что это угроза
Мы рекомендуем Security Task Manager для проверки безопасности вашего компьютера.
Лучшие практики для исправления проблем с ACPI
Аккуратный и опрятный компьютер – это главное требование для избежания проблем с ACPI. Для этого требуется регулярная проверка компьютера на вирусы, очистка жесткого диска, используя cleanmgr и sfc /scannow, удаление программ, которые больше не нужны, проверка программ, которые запускаются при старте Windows (используя msconfig) и активация Автоматическое обновление Windows. Всегда помните о создании периодических бэкапов, или в крайнем случае о создании точек восстановления.
Если у вас актуальные проблемы, попробуйте вспомнить, что вы делали в последнее время, или последнюю программу, которую вы устанавливали перед тем, как появилась впервые проблема. Используйте команду resmon, чтобы определить процесс, который вызывает проблемы. Даже если у вас серьезные проблемы с компьютером, прежде чем переустанавливать Windows, лучше попробуйте восстановить целостность установки ОС или для Windows 8 и более поздних версий Windows выполнить команду DISM.exe /Online /Cleanup-image /Restorehealth. Это позволит восстановить операционную систему без потери данных.
Следующие программы могут вам помочь для анализа процесса ACPI.sys на вашем компьютере: Security Task Manager отображает все запущенные задания Windows, включая встроенные скрытые процессы, такие как мониторинг клавиатуры и браузера или записей автозагрузки. Уникальная оценка рисков безопасности указывает на вероятность процесса быть потенциально опасным – шпионской программой, вирусом или трояном. Malwarebytes Anti-Malware определяет и удаляет бездействующие программы-шпионы, рекламное ПО, трояны, кейлоггеры, вредоносные программы и трекеры с вашего жесткого диска.
Как включить все ядра на компьютере — миф или реальность?
Сегодня существуют компьютеры, вычислительной мощностью которых уже мало кого удивишь. 4-х или 6-ти ядерные ПК и ноутбуки не удивляют людей, но находятся и новички в этой области, которым все интересно и хочется узнать, как можно больше информации. Сегодня мы разберем интересный вопрос: как включить все ядра на компьютере с Windows 10 для увеличения его производительности.
Если вы хотите узнать, сколько ядер процессора стоит на компьютере, то это можно узнать, например, с помощью программ, руководству к компьютеру или штатных возможностей Windows. Теперь разберем все возможные способы.
Руководство к ЦП
Если у вас есть документы к компьютеру, то сведения о ядрах можно посмотреть там, в разделе о ЦП. Тоже самое можно сделать и в интернете, вбив модель своего процессора, и посмотреть все необходимые характеристики.
Сведения о ЦП можно посмотреть, если перейти в соответствующее меню. Для этого нажимаем правой кнопкой мыши по меню Пуск, выбираем «Система», смотрим на блок «Система». Но там показывается только модель процессора, остальное придется искать где-то еще.
Средства Windows 10
Откроем диспетчер устройств. Это можно сделать, если ввести в поле поиска «диспетчер устройств».
Находим вкладку «Процессоры» и раскрываем ее. Сколько там пунктов находится, столько и ядер на вашем процессоре.
Специальные утилиты
Теперь разберем несколько сторонних программ, которые помогут нам определить количество ядер в процессоре.
CPU-Z
Полезная и бесплатная программа CPU-Z отображает множество характеристик компьютера, а точнее, его компонентов. Она легка и не требовательна.
Для того, чтобы посмотреть информацию о ядрах, переходим во вкладку ЦП и смотрим строчку «число активных ядер».
AIDA64
Эту программу я упоминал уже не раз в своих статьях. Она содержит полный комплект информации о всех компонентах компьютера.
Скачайте программу, запустите, потом переходите во вкладку «Системная плата», далее «ЦП». Блок «Multi CPU» отображает нам количество ядер.
В той же самой программе можно перейти во вкладку «Компьютер», потом «Суммарная информация» в блоке «Системная плата» нажимаем на названии процессора, где строка «Типа ЦП».
Сколько ядер используется процессором
Некоторые думают, что в многоядерном компьютере работают не все ядра, на самом деле это не так, работают они все и всегда, но на разной частоте.
Дело в том, что при большом количестве ядер, происходит лишь оптимизация работы, то есть, данные обрабатываются быстрее. Еще один момент. Если программа не оптимизирована под несколько ядер, то, сколько бы их не было в компьютере, программа все равно будет использовать только определенное количество.
Как включить все ядра компьютера или ноутбука
Никак. Ядра на всех современных компьютерах всегда работают без ограничений. Зачем разработчикам ограничивать работу процессора и памяти, особенно при запуске Windows.
Заметьте, что если галочки в утилите MSConfig, которая описана ниже выключены, это значит, что ограничений никаких нет. Но вы можете сами это сделать, поскольку эта утилита предназначена для тестирования программного обеспечения.
Даже если вы сейчас попробуете изменить настройки на максимальные, то ничего не изменится, можете убедиться в этом сами, используя нижеследующую инструкцию.
Включить все ядра с помощью Windows
Здесь все просто, следуем вот этой инструкции:
- Нажмите Win+R и введите в окне msconfig
- Перейдите во вкладку «Загрузка», потом перейдите в «Дополнительные параметры».
- Ставим галочку на «Число процессоров» и «Максимум памяти», остальные галочки снимаем.
- В пункте «Максимум памяти» указываем максимальное значение.
После того, как все сделаете, сохраните изменения и перезагрузите компьютер.
Включить все ядра с помощью BIOS
Тут все немного сложнее. В BIOS стоит лезть только в случае нестабильной работы компьютера. Если глюков и тормозов не замечается, то все нормально и ядра обычно включены автоматически.
- Если решили попробовать включить ядра через BIOS, то вам нужно перейти в раздел Advanced Clock Calibration и установите значение «All Cores», либо «Auto».
- Сложность тут заключается в том, что в разных версия материнских плат и ноутбуках разделы в BIOS называются по-разному, сказать куда точно заходить не могу.
- Таким образом, мы разобрали, как посмотреть ядра процессора, как задействовать все ядра для сокращения времени загрузки компьютера и бесполезность этого действа.))
Управление блоком питания ATX
Рассмотрим процессы, происходящие при выполнении вышеописанной программы, на уровне принципиальной электрической схемы. Разумеется, в каждой материнской плате, в зависимости от модели чипсета, микросхемы MIO (Multi Input/Output) и других факторов, рассматриваемый узел реализован по-своему.
Для определенности возьмем частный случай — материнские платы, использующие Южный мост Intel ICH6, описанный в (это платы на чипсетах Intel 915 и 925) и микросхему MIO Winbond W83627THF, описанную в .
Ядро Power Management контроллера, а именно, логика, принимающая решение о включении и выключении питания находится в составе Южного моста чипсета. Здесь же расположен программно-доступный регистр PM1_CNT_BLK, используемый в приведенном примере для выключения питания. Обеспечение интерфейса Power Management контроллера с внешним миром входит в обязанности микросхемы MIO. В ее составе находится схема опроса кнопки Power Switch, которая, получив сигнал от кнопки, транслирует его Power Management контроллеру (ICH6). Также в составе MIO находится формирователь сигнала PS_ON для блока питания ATX. При получении соответствующего приказа от ICH6, микросхема MIO выдает сигнал PS_ON=0, что приводит к включению блока питания.
Что происходит при выполнении нашей программы? Запись в регистр PM1_CNT_BLK 16-битного слова, у которого бит 13 (Sleep Enable) установлен в «1», а значение битового поля Sleep_Type соответствует ACPI-состоянию S5 (состояние Soft-Off) является приказом для ICH6 начать процедуру выключения питания. ICH6 выдает сигнал SLP_S3# (контакт с координатами T4). Он приходит на вход SLP_Sx (контакт 73) микросхемы MIO W83627THF. В результате микросхема W83627THF выдает логическую «1» на выход PWCTL# (контакт 72) и блок питания выключается. Этот выход подключен к линии PS_ON блока питания. В зависимости от схемотехники платы, подключение выполняется напрямую или через буферный повторитель.
Другие примеры реализаций микросхем Южных мостов и MIO приведены в , , , , .
При рассмотрении работы блока питания, не следует путать сигналы PS_ON и PWR_OK. Сигнал PS_ON (Power Supply On) используется для включения блока питания ATX. Это входной сигнал для блока питания и выходной сигнал для материнской платы. При логическом «1» на этой линии, блок питания выключен (работает только дежурный источник +5V Standby, необходимый для схемы управления питанием). При логическом «0» на этой линии блок питания включен, выдаются все выходные напряжения. Сигнал PWR_OK (Power OK, синоним Power Good) используется для запуска материнской платы при включении питания и блокировки работы ее устройств на время переходных процессов при включении и выключении питания. Это входной сигнал для материнской платы и выходной сигнал для блока питания. Логический «0» на этой линии равносилен нажатию кнопки RESET. При этом все устройства зафиксированы в состоянии сброса. При включении питания, в течение нескольких миллисекунд, сигнал PWR_OK=0, это обеспечивает запуск компьютера и препятствует выполнению каких-либо операций до стабилизации питания. При выключении питания, во время переходного процесса, сигнал PWR_OK также переходит в состояние логического «0». Во время рабочего сеанса на этой линии присутствует логическая «1». Подробности в , .
ACPI control methods
ACPI control methods are software objects that declare and define simple operations to query and configure ACPI devices. Control methods are stored in the ACPI BIOS and are encoded in a byte-code format called ACPI Machine Language (AML). The control methods for a device are loaded from the system firmware into the device’s ACPI namespace in memory, and interpreted by the Windows ACPI driver, Acpi.sys.
To invoke a control method, the kernel-mode driver for an ACPI device initiates an IRP_MJ_DEVICE_CONTROL request, which is handled by Acpi.sys. For drivers loaded on ACPI-enumerated devices, Acpi.sys always implements the physical device object (PDO) in the driver stack. For more information, see Evaluating ACPI Control Methods.
Как включить все ядра процессора
Большинство продвинутых пользователей персональных компьютеров знают, что в Windows 7 по умолчанию используется всего одно ядро процессора и для того чтобы задействовать все ядра нужно выполнить несколько не очень сложных действий. Выполнив их ваш компьютер начнет работать намного быстрее и улучшенную производительность вы сможете заметить не только при работе с программами, но и в играх.
Некоторые пользователи говорят, что ничего включать не нужно так как компьютер по умолчанию использует все имеющиеся в процессоре ядра, но я для того чтобы доказать обратное выполнил несколько тестов и удостоверился, что система загружается работает быстрее при включении всех ядер.
Перейдем к инструкции…
Переходим в меню «Пуск», жмем на «Все программы» и находим там пункт «Стандартные». Здесь в списке ищем «Выполнить».
Далее в небольшом открывшемся окошке пишем «msconfig» и жмем «Ок».
Откроется новое окно, переходим во вкладку «Загрузка» и нажимаем на «Дополнительные параметры».
После ставим галочку на «Число процессоров» и чуть ниже выбираем максимальное количество ядер. Их может быть два или четыре, все зависит от модели вашего процессора. После нажимаем внизу окна нажимаем на кнопку «Ок.
В этом окошке тоже нажимаем на «Ок».
Потом у откроется маленькое окошко, в котором вам будет предложено перезапустить систему, соглашаемся с этим.
После перезапуска вы заметите насколько увеличилась производительность системы. Кстати, не забудьте подписаться на обновления сайта :-).
Простое объяснение вопроса «что такое процессор»
Микропроцессор — одно из главных устройств в компьютере. Это сухое официальное название чаще сокращают до просто «процессор») . Процессор — микросхема, по площади сравнимая со спичечным коробком. Если угодно, процессор — это как мотор в автомобиле. Важнейшая часть, но совсем не единственная. Есть у машины ещё и колёса, и кузов, и проигрыватель с фарами. Но именно процессор (как и мотор автомобиля) определяет мощность «машины».
Многие называют процессором системный блок — «ящик», внутри которого находятся все компоненты ПК, но это в корне неверно. Системный блок — это корпус компьютера вместе со всеми составляющими частями — жёстким диском, оперативной памятью и многими другими деталями.
Размер процессора по сравнению с монеткой. Есть процессоры и крупнее, есть и гораздо мельче.
Функция процессора — вычисления
Не столь важно, какие именно. Дело в том, что вся работа компьютера завязана исключительно на арифметических вычислениях
Сложение, умножение, вычитание и прочая алгебра — этим всем занимается микросхема под названием «процессор». А результаты таких вычислений выводятся на экран в виде игры, вордовского файла или просто рабочего стола.
Главная часть компьютера, которая занимается вычислениями — вот, что такое процессор.
Оптимизируем «1С:Предприятие»
В первую очередь мы стали отслеживать поведение кластера, динамику нагрузки, ее распределения и условия, при которых проявлялась проблема снижения производительности.
Мы обратили внимание, что пик нагрузки и перекос по ней приходится на момент запуска новых процессов кластера — при подключении новых пользователей, при запуске новых процессов во время автоматической балансировки нагрузки и распределении соединений между новыми и старыми процессами. В этот момент приложение зависало на несколько минут и система была неработоспособной для тех пользователей, которые назначались на новый процесс
Стали разбирать инцидент совместно с фирмой «1С» в рамках ИТС КОРП. В результате была выявлена ошибка платформы 30158420, зафиксированная фирмой «1С» еще в ноябре 2017 года, но не исправленная на момент возникновения сложностей у нашего клиента. По итогам переговоров с корпоративной поддержкой «1С» информация об ошибке весной 2018 года была опубликована, а для нашего клиента выпустили внеочередную сборку платформы с исправлением. Вот суть ошибки:
В клиент-серверном варианте информационной базы при одновременном запуске нескольких клиентских сеансов с одинаковым набором расширений конфигурации наблюдается избыточная нагрузка на процессор и увеличенный расход оперативной памяти.
В текущий момент ошибка исправлена в актуальных релизах платформы «1С:Предприятие».
Мы внесли изменения в платформу у клиента и проверили результат. Пользователи почувствовали улучшение ситуации, но в глобальном плане проблема сохранилась. Нагрузка все еще распределялась между двумя процессорами неравномерно:
Проверили еще несколько вариантов, приводящих к снижению производительности, в том числе давно известные — про ограничения, описанные в 2015 году о работе платформы «1С» с многопроцессорными системами:
Поддержка NUMA в кластере серверов 1С полноценно пока не реализована. Сервер «1С» не управляет распределением ресурсов по NUMA узлам, полностью полагаясь в этом на операционную систему, что не всегда даёт оптимальный результат. Поэтому при работе на современных многопроцессорных системах Intel и AMD, в зависимости от характера нагрузки, может наблюдаться неравномерная загрузка процессоров/ядер.
Выполнили все рекомендации по оптимизации «1С» для многопроцессорных систем. Однако, к улучшению ситуации это не привело.
Настраиваем серверное окружение
Перешли к проверке системного ПО и аппаратной части вместе с ИТ-отделом заказчика. Система построена на базе двухпроцессорной системы с 32 ядрами, по 16 на процессор.
Поиск и исследование информации о схожих с нашей задачей сложностях, материалов от поставщиков оборудования и серверной ОС дало нам три направления работы:
- Механизмы работы операционной системы на многоядерном/многопроцессорном сервере.
- Настройка аппаратной части — BIOS сервера.
- Ограничение на выполнение приложения одной группой процессоров.
Серверные операционные системы семейства Windows начиная с WinServer2008R2 64bit поддерживают работу с более чем 64 логическими процессорами на одном компьютере. Для того, чтобы это реализовать в ОС используется механизм группировки процессоров (processor group, kernel group, kgroup). Каждая из групп может содержать до 64 логических процессоров и если на сервере менее 64 логических процессоров, то должна создаваться только одна группа с порядковым номером 0. Следуя этой логике на испытуемом сервере должна быть только одна группа (Group 0), что подразумевает более-менее равномерное распределение нагрузки между ядрами наших двух физических CPU.
Проверка аппаратной части дала пищу для размышлений. Во-первых, нашлись кейсы, где наблюдалось падение производительности, похожее на наше, для различных приложений. В этих кейсах проводилось тестирование аналогичных серверов двух вендоров. У вендора, которого использует наш клиент, проблема была. А у иного — нет. Проблему на момент размещения кейса частично решали использованием неофициальной (unpublished) версии BIOS с добавленным в настройки параметром NUMA Group Size Optimizations.
Во-вторых, на сервере клиента использовалась устаревшая версия BIOS, для которого вендором была уже зафиксирована и исправлена ошибка, из-за которой серверные ОС Windows могли использовать только половину или менее логических процессоров определенной линейки Intel Xeon. BIOS был обновлен до актуальной версии. В этой версии BIOS уже штатно присутствует параметр NUMA Group Size Optimization.
В-третьих, по умолчанию BIOS настроен таким образом, чтобы обеспечивать работу максимального количества логических процессоров в системе. У сервера два процессорных сокета и параметр NUMA Group Size Optimization выставлен в значение Clustered, обеспечивающее работу максимального количества ядер/процессоров. Получается, что настройка BIOS (напомним, что у сервера клиента всего 32 ядра) разбивала имеющиеся ядра/процессоры на 2 kgroup.
Получается, что в платформе «1С:Предприятие» поддержка NUMA пока не реализована и отдается на откуп ОС. ОС объединяет по умолчанию все ядра в количестве менее или равно 64 в одну группу процессоров. А на уровне оборудования выставлена настройка разбивать на несколько групп имеющиеся ядра. Явная нестыковка.
Протоколы дизассемблирования таблиц ACPI
В прилагаемом каталоге DISASM содержатся протоколы ручного дизассемблирования некоторых таблиц ACPI и их фрагментов с детальными комментариями (текстовые файлы в кодировке DOS). Разумеется, существует возможность для автоматизированного выполнения этой задачи, например, дизассемблер фирмы Phoenix Technologies — AD.EXE (ACPI Dump). Вместе с тем, для получения некоторых сведений, необходимых для написания собственной виртуальной машины ACPI и других исследовательских работ, автор посчитал уместным «копнуть глубже», несмотря на очевидную трудоемкость данного подхода.
Выводы и предупреждение
Итак, у клиента меньше 64 ядер, но BIOS сервера всё равно использовал две процессорные группы и таким образом ограничивал каждый процесс в системе лишь половиной мощностей.
При запуске нескольких процессов кластера «1С» можно было бы ожидать, что они равномерно распределятся между двумя группами, но это не всегда происходило. ОС заточенная под механизмы работы NUMA-архитектуры могла принять решение, что работать с одним процессором быстрее, чтобы использовать память адресованную для этого процессора. Получается, что несколько процессов «1С:Предприятия» оказывалось в одной группе, создавая загрузку на 100%, а вторая группа процессоров в этот момент простаивала. Очередь заданий росла, пользователи чувствовали замедление работы «1С» и выказывали недовольство.
Переключение в BIOS параметра NUMA Group Size Optimization с Clustered на Flat в данном конкретном случае вернуло производительность кластера «1С:Предприятия» на должный уровень. Для пользователей пропали нестерпимые периоды ожидания и работа стала комфортной.
Но не всё так радужно. Платформа «1С:Предприятие» не умеет на момент написания статьи работать с несколькими группами процессоров. Значит, если в сервере будет установлено больше 64 ядер мы окажемся в ловушке — необходимо будет переключить в BIOS параметр NUMA Group Size Optimization в значение Clustered. А это снова вернет нас в исходную ситуацию, когда часть ядер простаивает. Фирма «1С» знает об этой проблеме и прорабатывает необходимые решения.
Отдельно стоит отметить особенности измерения общей загрузки процессора с помощью утилиты perfmon в случае использования групп процессоров, то есть на любом крупном сервере с более чем 64 ядрами.
Мы будем дальше работать над вопросами производительности информационных систем и готовы поделиться знаниями и опытом.
Обращайтесь! Высокой вам производительности и консистентности данных!