Разное

Гипертрейдинг процессора что это: Что такое Hyper-Threading? — Intel

27.11.1981

Содержание

Hyper-Threading технология, что это такое? Принцип работы HT, плюсы и минусы от использования технологии.

Hyper-Threading (hyper threading, ‘хайпер тридинг’, гипер поточность — рус.) — технология разработанная компанией Intel, позволяющая ядру процессора исполнять больше потоков данных чем один (обычно два). Так как было выяснено, что обычный процессор в большинстве задач использует не более 70% всей вычислительной мощности, было решено использовать технологию, позволяющую при простое определённых вычислительных блоков — нагрузить их работой с другим потоком. Это позволяет увеличить производительность ядра от 10 до 80% в зависимости от задачи.

 

Представление, как Hyper-Threading работает.

Допустим процессор выполняет простые вычисления и при этом простаивает блок инструкций и SIMD расширения.

Модуль адресации это обнаруживает и посылает туда данные для последующего вычисления. Если данные специфичные, то данные блоки будут выполнять их медленней, однако простаивать данные не будут. Либо они предварительно их обработают, для дальнейшей быстрой обработки соответствующим блоком. Это и даёт дополнительный выигрыш в производительности.

Естественно, виртуальный поток никак не дотягивает до полноценного ядра, но это позволяет добиться практически 100% эффективности вычислительной мощности, загрузив практически весь процессор работой, не давая ему простаивать. При всём при этом, для реализации технологии HT

требуется всего около 5% дополнительного места на кристалле, а производительность иногда может добавиться на 50%. В эту дополнительную область входят дополнительные блоки регистров и предсказания ветвлений, которые потоково вычисляют, где можно использоваться вычислительные мощности в данный момент и отправляют туда данные из дополнительного блока адресации.

Впервые, технология появилась на процессорах Pentium 4, но большого прироста производительности не получилось, так как сам процессор не обладал высокой вычислительной мощностью. Прирост составлял в лучшем случае

15-20%, да и во многих задачах процессор работал значительно медленнее чем без HT.

Замедление работы процессора из-за технологии Hyper Threading, происходит если:

  • Недостаточно кэша для всех данный и он циклически перезагружается, тормозя работу процессора.
  • Данные не могут быть правильно обработаны блоком предсказания ветвления. Происходит в основном из-за отсутствия оптимизации под определённое ПО или поддержки со стороны операционной системы.
  • Также может происходить из-за зависимости данных, когда к примеру, первый поток требует немедленных данных со второго, а они ещё не готовы, либо стоят на очереди в другой поток.
    Либо циклическим данным требуются определённые блоки для быстрой обработки, а они нагружаются другими данными. Вариаций зависимости данных может быть много.
  • Если ядро и так сильно нагружено, а «недостаточно умный» модуль предсказания ветвлений всё равно посылает данные, которые тормозят работу процессора (актуально для Pentium 4).

 

После Pentium 4, Intel начала использовать технологию только начиная с Core i7 первого поколения, пропустив серию

Core 2.

Вычислительной мощности процессоров стало достаточно для полноценной реализации гиперпоточности без особого вреда, даже для не оптимизированных приложений. Позже, Hyper-Threading появилась на процессорах среднего класса и даже бюджетного и портативного. Используется на всех сериях Core i (i3; i5; i7) и на мобильных процессорах Atom (не на всех). Что интересно, двухъядерные процессоры с HT, получают больший выигрыш в производительности, чем четырёх ядерные от использования

Hyper-Threading, становясь на 75% полноценными четырёх ядерными.

 

Где полезна технология HyperThreading?

Полезна она будет для использования вкупе с профессиональными, графическими, аналитическими, математическими и научными программами, видео и аудио редакторами, архиваторами (Photoshop, Corel Draw, Maya, 3D’s Max, WinRar, Sony Vegas & etc). Всем программам в которых используется большое количество вычислений, HT будет однозначно полезна полезна. Благо, в 90% случаев, такие программы неплохо оптимизированы для её использования.

HyperThreading незаменим для серверных систем. Собственно для этой ниши он частично и разрабатывался. Благодаря

HT, можно значительно увеличить отдачу от работы процессора при наличии большого числа задач. Каждый поток, будет разгружен вполовину, что благотворно сказывается на адресации данных и предсказании ветвлений.

Многие компьютерные игры, отрицательно относятся к наличию Hyper-Threading, из за чего снижается количество кадров в секунду. Связано это с отсутствием оптимизации под Hyper-Threading со стороны игры. Одной оптимизации со стороны операционной системы не всегда бывает достаточно, особенно при работе с необычными, разнотипными и сложными данными.

На материнских платах, которые поддерживают HT, в BIOS всегда можно отключить технологию гиперпоточности.

Hyper-threading — что это и как влияет на производительность компьютера

Допустим, вы рассматриваете возможность покупки нового процессора, и вдруг вам приходится выбирать между двумя продуктами, которые практически одинаковы на бумаге, но один из них имеет функцию гиперпоточности, а другой — нет.

Очевидно, что hyper-threading — это хорошо, потому что за это нужно доплачивать, но что она делает? Самое главное, это то, что вы должны заботиться? Чтобы ответить на эти острые вопросы, мы должны кратко остановиться на том, как процессоры делают свое дело.

Неограниченная сила!

Даже если вас не очень интересуют тонкие технические детали компьютерной технологии, вы наверняка слышали о Законе Мура раньше. Это не совсем естественный закон, но наблюдение, что основные компоненты интегральных микросхем удваиваются в плотности каждые два года или около того.

Фактически это означало, что производительность процессора удваивалась каждые два года, что является экспоненциальным показателем улучшения. Если бы самая быстрая машина в мире была в два раза быстрее той, которая появилась два года назад, и эта тенденция сохранялась в течение десятилетий, у нас были бы машины со скоростями научно-фантастических звездолетов. Так что это на самом деле одна из самых революционных вещей в компьютерных технологиях.

Проблема в том, что производительность процессора определяется не только плотностью его компонентов. Очевидно, важна тактовая частота, то есть сколько полных циклов вычислений он может выполнить за секунду. Если вы берете процессор и удваиваете его тактовую частоту, он также будет работать вдвое быстрее. По крайней мере, в теории.

Проблема в том, что независимо от того, насколько быстро работает этот процессор, он может выполнять только одну операцию за раз. То, что мы воспринимаем как «многозадачность», на самом деле — процессор, быстро перепрыгивающий между тысячами разных заданий. Несколько лет назад мы начали наносить удары по нескольким кирпичным стенам, когда речь шла о том, чтобы сделать один процессор быстрее и быстрее.

Таким образом, одним из решений было установить более одного процессора в каждом процессоре, чтобы различные задания могли быть распределены между ними. Сегодня четырехъядерные процессоры в значительной степени являются основной конфигурацией.

Hyperthreading (HT) — это имя Intel для одновременной многопоточности . По сути, это означает, что одно ядро ​​ЦП может работать одновременно над двумя проблемами. Это не значит, что процессор может выполнять вдвое больше работы. Только то, что он может обеспечить использование всей своей емкости, решая сразу несколько простых задач.

Для вашей операционной системы каждое реальное кремниевое ядро ​​ЦП выглядит как два, поэтому оно подает каждую работу так, как если бы они были отдельными. Поскольку многое из того, что делает процессор, недостаточно для его максимальной работы, HT гарантирует, что вы получаете свои деньги от этого чипа.

Кто должен заботиться о гиперпоточности?

Это еще один вопрос, который может быть немного сложным, но на самом деле довольно прост, когда вы разбираете его. Во-первых, давайте выпишем одну вещь о гиперпоточности, которая почти всегда верна. Если вам нужно выбрать один из двух процессоров, которые могут обрабатывать одинаковое количество потоков, но не имеют одинакового количества ядер, используйте процессор с большим количеством физических ядер.

Например, если у вас двухъядерный, гиперпоточный процессор и четырехъядерный процессор без HT, лучше выбрать четырехъядерный вариант. Учитывая, что они близки друг к другу в однопоточном, одноядерном исполнении. Зачем? Потому что четырехъядерный процессор имеет больше физической обработки.

Настоящая проблема возникает, когда у вас есть два процессора с одинаковыми физическими характеристиками, но у одного есть HT, а у другого нет. Теперь наш вопрос действительно касается программного обеспечения, которое вы хотите запустить. Если у вас есть программное обеспечение, которое может порождать достаточное количество потоков, чтобы использовать потоки HT, вы заметите значительный прирост в выборе процессора с гиперпоточностью. Просто потому, что ни одна из производственных мощностей не тратится впустую, и компонент работает почти на полную мощность, насколько это возможно.

Если программное обеспечение, которое вы хотите запустить, не порождает достаточно потоков, чтобы также использовать виртуальные ядра HT, вы не увидите буквально никакой разницы в производительности.

Традиционно такие операции, как 3D-рендеринг ЦП, кодирование видео и обработка фотографий, создают столько потоков, сколько может выдержать ваш плохой ЦП. Другими словами, многие современные профессиональные приложения требуют много потоков. Вот почему Hyperthreading был ограничен процессорами профессионального уровня, такими как i7 и выше .

Основные приложения, такие как текстовые процессоры и веб-браузеры, не будут работать лучше с гиперпоточностью, даже если они могут порождать больше потоков. Просто потому, что потребности этих приложений, которыми пользуется большинство людей, даже не создают проблем для процессоров начального уровня.

Большой игровой вопрос

Видеоигры — еще одно основное приложение, которое довольно апатично к Hyperthreading. На момент написания статьи, в 2019 году, новейшие движки видеоигр стали становиться все более насыщенными. Это означает, что процессоры с поддержкой HT будут работать лучше. Старые игры вообще не увидят никакого преимущества, за исключением нескольких игр типа моделирования, в которых интенсивно используются ИИ или другие процессы, ориентированные на ЦП.

Означает ли это, что ваш следующий игровой компьютер должен иметь Hyperthreading? Дело в том, что сейчас мы движемся к рынку массовых процессоров, где 6-, 8- и 12-ядерные процессоры являются нормой. Поэтому гораздо лучше иметь больше физических ядер, где это возможно.

Простой ответ

Надеюсь, приведенное выше объяснение было достаточно ясным, но давайте разберем его суть дела:

  • Если вы делаете профессиональную, многопоточную работу, Hyperthreading имеет значение.
  • Если вы обычный пользователь, не беспокойтесь об этом.
  • Если вы геймер, расставьте приоритеты, чтобы в следующей сборке было больше ядер, чем по HT, но дополнительно получите HT, если цена приемлимая.

Гиперпоточность — это отличная технология, но она не представляет необходимости для всех. Теперь вы должны знать, является ли этот «кто-то» вами или нет!

Статьи по теме:

Что такое Hyper-Threading и как это работает? | Наука для чайников

Решаете купить новый процессор Intel? Хотели купить новый компьютер с установленным процессором Intel — тогда вы, возможно, слышали термин Hyper-Threading . Возможно, вы не знакомы с этим термином, если вы не технарь. Понимание Hyper-Threading очень важно, так как это одна из основных функций в линейках процессоров Intel.

Часто продавцы используют этот термин в магазине, который вы посещаете, чтобы продать товары. Недавно я посетил электронный магазин рядом со мной, продавец сказал мне, что технология Hyper-Threading удваивает количество ядер на процессоре. Именно после этого я решил ознакомить вас с технологиет HTT. На самом деле ни о каком удваивании речи не идет.

Технология Hyper-Threading присутствует на процессорах Intel уже почти 10 лет, но многие люди не знают, что это значит! Многие думают, что Hyper-Threading фактически удваивает количество ядер процессора, имеющихся на процессоре.

Что такое Hyper-Threading?

Технология Hyper-Threading (также называемая технологией HTT или HT ) — это реализация Intel технологии одновременной многопоточности ( SMT ), которая более эффективно использует ресурсы процессора, позволяя нескольким потокам работать на каждом ядре. Независимо от того, сколько лет исследований мы провели в процессорной промышленности, есть одна конечная проблема. Одно ядро ​​процессора может одновременно обрабатывать только один поток.

Например, вы используете Chrome, MS Word и Photoshop одновременно, вы можете чувствовать себя многозадачным. Но с точки зрения процессора — нет. Процессор выполняет только один поток за раз отдельной программы, но поскольку современные процессоры настолько быстры, мы не заметим никакой задержки. Но есть небольшая задержка времени после выполнения одного потока до следующего потока начинает свое выполнение. Эта задержка в основном вызвана планированием того, как потоки из каждой отдельной программы должны быть поданы в процессор. Итак, как мы можем минимизировать эту задержку — ответ « Hyper-Threading ».

Как работает Hyper-Threading?

Мы знаем, что Hyper-Threading является формой технологии одновременной многопоточности (SMT). Концепция Hyper-Threading довольно проста. Процессор с включенной технологией Hyper-Threading состоит из двух логических процессоров на ядро. Каждый логический процессор может работать независимо — может быть остановлен, прерван и направлен на выполнение определенного потока. Это позволяет назначать ресурсы процессора одновременно двум отдельным потокам.

Как известно, традиционная многоядерная система состоит из отдельных физических процессоров и имеет отдельные ресурсы. Но, в случае логических процессоров, он разделяет ресурсы одного ядра. Эти ресурсы включают интерфейс системной шины, кэши и механизм выполнения. Такое совместное использование позволяет логическому процессору более эффективно взаимодействовать друг с другом. Логические процессоры также могут заимствовать системные ресурсы у другого логического процессора (когда он не используется), но оба логических процессора должны быть на одном физическом ядре.

Все еще не поняли? Не волнуйтесь! Давайте возьмем пример, предположим, что я — процессор — я обрабатываю пищу своим ртом. Итак, я могу есть столько, сколько мой рот может жевать. Я могу добавить дополнительный рот на тот случай, если мне понадобится обработать больше еды (на что похожи многоядерные системы). Но из-за некоторых ограничений у меня может быть только один рот для обработки пищи. Я использую свою руку, чтобы перекусить и поднести ко рту для обработки. Таким образом, я могу обрабатывать только то количество пищи, которое может принести моя рука. Если я смогу закончить жевать до того, как моя рука принесет мне еще один укус, мой рот будет сидеть без дела — ничего не делая (именно так выглядят системы без многопоточности). Что я должен сделать, чтобы эффективно использовать мой рот? Я могу использовать обе руки, чтобы принести еду в рот! Итак, мой рот не будет сидеть сложа руки. Вот как выглядит система с Hyper-Threading — одноядерное, но с интеллектуальным планированием, чтобы убедиться, что процессор всегда работает.

Hyper-Threading не удваивает процессорные ядра.

Неважно, что вам скажет диспетчер задач Windows, но Hyper-Threading — это не то же самое, что удвоение ядер вашего процессора. Если вы загрузите свой четырехъядерный процессор с поддержкой Hyper-Threading и откроете свой диспетчер задач, вы увидите восемь графиков, плавающих вокруг окна. Это где большинство людей запутывается.

Мы видим восемь графиков в диспетчере задач Windows, поскольку Windows обнаруживает восемь логических процессоров — по два на ядро, но логический процессор не имеет физической оболочки. Windows может отправлять потоки на каждый отдельный логический процессор, но, наконец, все еще есть только одно физическое ядро, которое выполняет задачи. Таким образом, Hyper-Threading отличается от добавления отдельного физического ядра.

Преимущества Hyper-Threading:

Если вы используете компьютер для таких вещей, как просмотр веб-страниц, просмотр фильмов, редактирование документов. Вы не заметите никакого влияния Hyper-Threading. Hyper-Threading также не может улучшить производительность в однопоточной рабочей нагрузке (по одному потоку за раз). Но вы можете наблюдать значительное улучшение производительности по сравнению с многопоточной рабочей нагрузкой. Примеры многопоточной рабочей нагрузки:

  • Тяжелая многозадачность
  • Редактирование видео
  • 3D рендеринг
  • Научные приложения

Согласно заявлению Intel, Hyper-Threading может повысить производительность до 30%, хотя это зависит от вида выполняемой работы. В некоторых случаях Hyper-Threading не обеспечивает никакого повышения или даже в некоторых случаях немного снижает производительность (в зависимости от программного обеспечения).

Вывод

Как мы видели ранее, Hyper-Threading может обеспечить повышение производительности до 30%. Но у него есть и недостаток: он немного увеличивает тепловыделение и энергопотребление. Но об этом не нужно беспокоиться, преимущества обычно перевешивают этот недостаток.

« Hyper-Threading — это не то же самое, что удвоение ядер вашего процессора ».

Поделитесь этой статьей с друзьями, если у вас есть какие-либо вопросы, не стесняйтесь комментировать ниже. Кроме того, предложите темы для будущих сообщений. Следите за обновлениями.

Что важнее для процессора? Количество ядер или потоков?

Процессорные ядра против потоков — это вопрос, который до сих пор грызет энтузиастов и любителей ПК. Что важнее для хорошего процессора, количество ядер или потоков? Что ж, как и следовало ожидать, на этот вопрос нельзя дать прямой ответ. Потоки в основном помогают ядрам обрабатывать информацию более эффективным образом. При этом потоки ЦП приносят реальную видимую производительность в очень специфических задачах, поэтому гиперпоточный ЦП не всегда может помочь вам достичь лучших результатов.

Что такое центральный процессор?

Процессор (центральный процессор) является ядром каждого смартфона, планшета, компьютера и сервера. Это критически важный компонент, который определяет, как ваш компьютер будет работать, и определяет, насколько хорошо он может выполнять свою работу.

Процессор принимает основные инструкции, которые вы вводите на своем компьютере, и распределяет эти задания по другим чипам в вашей системе. Перераспределяя сложные задачи на микросхемы, лучше всего оборудованные для их обработки, он позволяет вашему компьютеру работать на пиковом уровне.

Процессор иногда называют мозгом компьютера. Он расположен на материнской плате (также называемой основной платой) и является отдельным компонентом от компонента памяти.

Он действует на компонент памяти, который хранит все данные и информацию в вашей системе. Компонент памяти и процессор отделены от вашей видеокарты. Единственная функция видеокарты состоит в том, чтобы получать данные и преобразовывать их в изображения, которые вы видите на мониторе.

С развитием технологий из года в год, мы видим, что процессоры становятся все меньше и меньше.

И они работают быстрее, чем когда-либо прежде. Вы поймете что значит быстрее, если узнаете кое-что о законе Мура, который получил свое название от соучредителя Intel Гордона Мура. Мур считает, что число транзисторов в интегральной схеме удваивается каждые два года.

Что делает процессор?

Как мы уже говорили ранее, процессор — это мозг вашего компьютера. Он берет данные из определенной программы или приложения, выполняет серию вычислений и выполняет команду. Он выполняет цикл из трех частей, иначе называемый повторяющимся циклом извлечения, декодирования и выполнения. На первом этапе процессор выбирает инструкции из памяти вашей системы. Как только он получает инструкции из памяти, он переходит ко второму этапу. Именно на этом втором этапе он декодирует эти инструкции.

Как только машина расшифровывает инструкции, она переходит к третьему этапу выполнения. Декодированная информация проходит через ЦП, чтобы достичь блоков, которые фактически должны выполнять требуемую функцию. В процессе декодирования он выполняет математические уравнения для отправки требуемого сигнала в вашу систему.

Этот цикл повторяется снова и снова для каждого действия и команды, которые вы выполняете. Процессор является важной частью любой системы, и он тесно работает с потоками. Различные процессоры имеют различное количество потоков, чтобы ограничить или увеличить производительность вашего компьютера.

Что же такое многопоточность?

Поток — это небольшая последовательность запрограммированных инструкций. Потоки относятся к наивысшему уровню кода, который может выполнять ваш процессор. Они обычно управляются планировщиком, который является стандартной частью любой операционной системы.

Чтобы создать поток, сначала должен быть запущен процесс. Затем, процесс создает поток, который выполняется, это может длится короткий или длительный период времени, в зависимости от процесса. Независимо от того, сколько времени будет выполнятся та или иная задача, создается впечатление, что ваш компьютер делает много вещей одновременно.

Каждый процесс имеет по крайней мере один поток, но нет максимального количества потоков, которое процесс может использовать. Для специализированных задач, чем больше у вас потоков, тем выше производительность вашего компьютера. С несколькими потоками один процесс может одновременно обрабатывать различные задачи.

Вы также услышите, как люди используют такие термины, как «многопоточность» и «гиперпоточность». Технология Hyper-Threading позволяет одному ядру ЦП выступать в качестве двух ядер, ускоряя выполнение конкретной программы или приложения.

Даже с одним ядром он может имитировать производительность, как если бы у вас было два ядра. Чем больше в процессоре ядер, тем больше  потоков. Чем больше у вас потоков, тем выше будет производительность вашей системы.

Что такое Hyper-Threading

Гиперпоточность дебютировала в 2002 году и была попыткой Intel донести до пользователей параллельные вычисления. Это немного уловка, так как ОС распознает потоки как отдельные ядра процессора. Когда вы используете Intel Chip, ваш диспетчер задач покажет вам удвоенное количество ядер и обработает их как таковые. Это позволяет им обмениваться информацией и ускорять процесс декодирования, разделяя ресурсы между ядрами. Intel утверждает, что эта технология может повысить производительность до 30%.

Как работают процессорные ядра и потоки?

Ядра процессора являются аппаратными. Они делают всю тяжелую работу. Потоки используются, чтобы помочь процессору более эффективно выполнять множество паралельных задач одновременно. Если у ЦП нет гиперпоточности или многопоточности, задачи будут планироваться менее эффективно, что заставит его больше работать, чтобы получить доступ к информации, которая важна для запуска определенных приложений.

Одно ядро может работать над одной задачей за раз. Множество ядер помогут вам запускать различные приложения более плавно. Например, если вы планируете запускать видеоигру, для ее запуска потребуется несколько ядер, в то время как другие ядра могут запускать фоновые приложения, такие как Skype, Spotify, Chrome или что-то еще. Многопоточность только делает обработку более эффективной. Это, конечно, приведет к повышению производительности, но также заставит процессор потреблять больше энергии, но так как, многопоточность уже включена в микросхемах, так что это не повод для беспокойства. Хотя процессор потребляет больше энергии, это редко вызывает повышение температуры.

Короче говоря, когда вы рассматриваете возможность обновления, большее количество потоков означает большую производительность или лучшую многозадачность, в зависимости от того, какие приложения вы используете. Если вы используете несколько программ одновременно, это определенно приведет к повышению производительности. 

Многоядерность

Первоначально процессоры имели одно ядро. Это означало, что на физическом процессоре был один центральный процессор. Для повышения производительности, процессоры заменяют на модели с большим количеством «ядер», или добавляют дополнительные центральные процессоры, если такая возможность предусмотренна производителем. Двухъядерный процессор имеет два центральных процессора, поэтому он представляется операционной системе как два процессора. Например, процессор с двумя ядрами может запускать два разных процесса одновременно. Это ускоряет вашу систему, потому что ваш компьютер может делать несколько вещей одновременно.

В отличие от многопоточности, здесь нет хитростей — двухъядерный ЦП буквально имеет два центральных процессора на чипе ЦП. Четырехъядерный процессор имеет четыре центральных процессора, восьмиъядерный процессор имеет восемь центральных процессоров и так далее.

Это помогает значительно повысить производительность, сохраняя при этом небольшой размер физического ЦП, чтобы он умещался в одном разъеме. Должен быть только один разъем ЦП с одним модулем ЦП, а не четыре различных разъема ЦП с четырьмя различными ЦП, каждый из которых требует собственного питания, охлаждения и другого аппаратного обеспечения. Время задержки меньше, потому что ядра могут обмениваться данными быстрее, поскольку все они находятся на одном чипе.

Диспетчер задач Windows показывает это наглядно. Здесь, например, вы можете видеть, что эта система имеет один фактический процессор (сокет) и четыре ядра. Многопоточность делает каждое ядро похожим на два ЦП для операционной системы, поэтому оно показывает 8 логических процессоров.

Выводы

В основном, больше ядер и больше потоков всегда будут означать лучшую производительность. Некоторые ориентированные на производительность программы, такие как редактирование видео, получат больше преимуществ от нескольких потоков. 

Если ваша рабочая нагрузка включает в себя интенсивные задачи, такие как: работа с нагруженными базами данных, аналитическик задачами, редактированием видео, то многопоточные процессоры являются обязательными для вас. И Intel, и AMD предоставляют множество многоядерных, многопоточных процессоров, как для рабочих станций, так и для серверов малых и больших предприятий. 

threading — это.

.. Что такое Hyper-threading?

Буквы HT в логотипе Pentium 4

Hyper-threading (англ. Hyper-threading — Гиперпоточность, официальное название Hyper-Threading Technology (HTT)) — торговая марка компании Intel для разработанной ею реализации технологии «одновременной мультипоточности» (англ. Simultaneous multithreading) в процессорах на микроархитектуре NetBurst. Расширенная форма суперпоточности (англ. Super-threading), впервые появившаяся в процессорах Intel Xeon и позднее добавленная в процессоры Pentium 4.

Эта технология увеличивает производительность процессора при определённых рабочих нагрузках путём предоставления «полезной работы» (англ. useful work) исполнительным устройствам (англ. execution units), которые иначе будут бездействовать; к примеру, в случаях кэш-промаха. Процессоры Pentium 4 (с одним физическим ядром) с включённым Hyper-threading операционная система определяет как два разных процессора вместо одного.

В процессорах Core 2 Duo поддержка технологии Hyper-threading не была реализована. В процессорах Core i3 и Core i7 снова используется Hyper-threading, при этом каждое физическое ядро процессора определяется операционной системой как два логических. Также эта технология присутствует в некоторых процессорах серии Atom.

Принцип работы

В процессорах с использованием этой технологии каждый физический процессор может хранить состояние сразу двух потоков, что для операционной системы выглядит как наличие двух логических процессоров (англ. Logical processor). Физически у каждого из логических процессоров есть свой набор регистров и контроллер прерываний (APIC), а остальные элементы процессора являются общими. Когда при исполнении потока одним из логических процессоров возникает пауза (в результате кэш-промаха, ошибки предсказания ветвлений, ожидания результата предыдущей инструкции), то управление передаётся потоку в другом логическом процессоре. Таким образом, пока один процесс ждёт, например, данные из памяти, вычислительные ресурсы физического процессора используются для обработки другого процесса. [1]

Производительность

Были представлены следующие преимущества Hyper-threading: улучшенная поддержка многопоточного кода, позволяющая запускать потоки одновременно; улучшенная реакция и время отклика; увеличенное количество пользователей, которое может поддерживать сервер.

По словам Intel, первая реализация потребовала всего 5-процентного увеличения площади кристалла, но позволяла увеличить производительность на 15—30 %.

Intel утверждает, что прибавка к скорости составляет 30 % по сравнению с идентичным процессорами Pentium 4 без технологии «Simultaneous multithreading». Однако прибавка к производительности изменяется от приложения к приложению: некоторые программы вообще несколько замедляются при включённой технологии Hyper-threading. Это, в первую очередь, связано с «системой повторения» (англ. replay) процессоров Pentium 4, занимающей необходимые вычислительные ресурсы, отчего и начинают «голодать» другие потоки[2][3].

См. также

Ссылки

Источники

  1. Техническое описание технологии Hyper-threading на сайте Intel (англ.)
  2. Керученько Я., Малич Ю., Левченко В. Replay: неизвестные особенности функционирования ядра Netburst
  3. http://evatutin.narod.ru/evatutin_opt_05_httdepindep.pdf

Поддержка KB322385-SQL Server в среде с технологией Hyper-Threading

ВВЕДЕНИЕ

В этой статье рассказывается о поддержке SQL Server в среде Hyper-Threading.

Дополнительная информация

Основной дизайн SQL Server полностью функциональн в среде Hyper-Threading. Однако при использовании среды с технологией Hyper-Threading мы рекомендуем сделать следующее:

  • Запустите Microsoft SQL Server 2000 с пакетом обновления 3 (SP3) или более поздней версии пакета обновления.

  • Установите Последнее обновление для системы безопасности.

Операционная система Microsoft Windows обеспечивает отображение логических ЦП (например, физических ЦП) для потоков Hyper-Thread. Поскольку SQL Server уже масштабируется, дополнительные процессоры предоставляют SQL Server возможность использовать больше процессоров. Дополнительные сведения о поддержке Hyper-Threading в Microsoft Windows можно найти на веб-сайте корпорации Майкрософт по следующему адресу:

http://www.microsoft.com/whdc/system/sysinternals/ht-windows.mspxПри рассмотрении технологии Hyper-Threading необходимо учитывать следующие моменты:

  • Лицензирования

  • Сопоставление процессоров

  • Эффективности

  • Утилита Intel для подсчета ПРОЦЕССОРов

Дополнительные сведения о каждом элементе:

Лицензирования

Если включена технология Hyper-Threading, базовая система вывода ввода (BIOS) использует логическую и физическую степень физического ЦП. В текущих реализациях используется отношение 2:1. Это означает, что для каждого физического ЦП имеется два (2) логических процессора. Эти отношения могут меняться в будущем; Однако в Microsoft SQL Server 2000 с пакетом обновления 3 (SP3) и более поздних версий есть дополнительный код лицензирования, истечение которого настраиваются ограничения на лицензирование для обработки этого отношения. Например, если установленный программный код продукта SQL Server разрешает лицензию на использование 4 процессора на уровне 2:1, сборка и более поздние версии SQL Server 2000 выстраиваются и позволяют использовать 8 ЦП. при установке SQL Server вы будете использовать физический счетчик ЦП, и вы разрешите SQL Server обработать преобразование. Напротив, при установке параметра маска схожести вы будете использовать логические значения ЦП, так как SQL Server использует все ЦП, как если бы они были физическими процессорами. Дополнительные сведения о лицензировании и поддерживаемых конфигурации можно найти на веб-сайте Майкрософт по следующему адресу:

http://www. microsoft.com/sql/howtobuy/default.mspx

Сопоставление процессоров

По умолчанию SQL Server создает планировщик планирования логических пользователей (UMS) для каждого процессора в соответствии с порядковым номером процессора. В средах с поддержкой технологии Hyper-Threading Microsoft Windows делает все процессоры доступными для процесса SQL Server так, как если бы они были истинными физическими процессорами. В таблице ниже приведены примеры логических и физических сопоставлений процессоров. Таблица соответствия процессоров 1

Логический

Материальн

до

до

1

1

2

2

Трехконтактный

Трехконтактный

4

до

5

1

152

2

5-7

Трехконтактный

Вот еще один пример сопоставления процессоров. Таблица соответствия процессоров 2

Логический

Материальн

до

до

1

до

2

1

Трехконтактный

1

4

2

5

2

152

Трехконтактный

5-7

Трехконтактный

Любое сопоставление приемлемо для SQL Server. Тем не менее, следует избегать создания ситуации, когда SQL Server неожиданно ограничивается физическим ЦП, если предполагается использование нескольких физических ЦП. Вы можете использовать маску схожести SQL Server для изменения ожидаемого физического использования процессора. Для этого ознакомьтесь со таблицей сопоставление процессоров 1. Если маска схожести составляет 00010001 и использует процессоры 0 и процессор 4, то используемые логические процессоры сопоставлены с примером физического процессора, #0. Это приводит к единственному физическому использованию процессора, поддерживающему оба логических процессора, а не два физических процессора. Это может привести к снижению производительности. Для изменения поведения по умолчанию можно использовать сочетание параметров «маска схожести» и «маска схожести операций ввода-вывода». Дополнительные сведения о параметрах «маска схожести» и «маска схожести операций ввода-вывода» можно найти в книге SQL Server Books Online.Для получения дополнительной информации щелкните приведенный ниже номер статьи базы знаний Майкрософт:

298402 Сведения о том, как настроить параметр соответствия ввода и вывода в SQL ServerПредупреждение Будьте внимательны при выборе маски схожести. Маска схожести некорректно настраивается с помощью того же физического процессора для поддержки двух логических процессоров, если вы планируете использовать отдельные физические процессоры.

Эффективности

Производительность среды Hyper-Threading варьируется. Консервативное тестирование показало, что для рабочих нагрузок SQL Server вы получили от 10 до 20 процентных выигрышей, но эти шаблоны приложений оказываются существенными. Вы можете столкнуться с тем, что некоторые приложения не получают повышение производительности, используя технологию Hyper-Threading. Если физические процессоры уже загружаются, использование логических процессоров может значительно уменьшить объем нагрузки. Например, приложения, которые приводят к возникновению высокого уровня конкуренции, могут привести к снижению производительности в среде Hyper-Threading. Рекомендуется тщательно протестировать приложение, чтобы убедиться в том, что среда Hyper-Threading обеспечивает увеличение производительности, которое вы хотите использовать, а также приобретение эквивалентных физических процессоров. Технология Hyper-Threading может быть очень полезной, но технология Hyper-Threading не может заменить все возможности дополнительного физического ЦП.Продукты сторонних производителей, которые обсуждаются в этой статье, произведены независимыми от корпорации Майкрософт компаниями. Корпорация Майкрософт не предоставляет каких-либо гарантий, подразумеваемых или иных, относительно производительности и надежности этих продуктов.У веб-сайта Intel есть полезная информация и учебники по технологиям Hyper-Threading (микроархитектура Intel NetBurst). Более подробную информацию о системах, поддерживающих технологию Hyper-Threading, можно найти на веб-сайте Intel ниже.

http://software.intel.com/en-us/blogs/2009/06/02/intel-hyper-threading-technology-your-questions-answered http://developer.intel.com

Максимальная степень параллелизма (MAXDOP)

Дополнительные сведения см. в следующей статье базы знаний Майкрософт:

2806535 Рекомендации и рекомендации для параметра конфигурации «максимальная степень параллелизма» в SQL Server

Вся Правда О Многоядерных Процессорах

Первые компьютерные процессоры с несколькими ядрами появились на потребительском рынке ещё в середине двухтысячных, но множество пользователей до сих пор не совсем понимает — что это такое, многоядерные процессоры, и как разобраться в их характеристиках.

Видео-формат статьи «Вся правда о многоядерных процессорах»

Простое объяснение вопроса «что такое процессор»

Микропроцессор — одно из главных устройств в компьютере. Это сухое официальное название чаще сокращают до просто «процессор») . Процессор — микросхема, по площади сравнимая со спичечным коробком. Если угодно, процессор — это как мотор в автомобиле. Важнейшая часть, но совсем не единственная. Есть у машины ещё и колёса, и кузов, и проигрыватель с фарами. Но именно процессор (как и мотор автомобиля) определяет мощность «машины».

Многие называют процессором системный блок — «ящик», внутри которого находятся все компоненты ПК, но это в корне неверно. Системный блок — это корпус компьютера вместе со всеми составляющими частями — жёстким диском, оперативной памятью и многими другими деталями.

Размер процессора по сравнению с монеткой. Есть процессоры и крупнее, есть и гораздо мельче.

Функция процессора — вычисления. Не столь важно, какие именно. Дело в том, что вся работа компьютера завязана исключительно на арифметических вычислениях. Сложение, умножение, вычитание и прочая алгебра — этим всем занимается микросхема под названием «процессор». А результаты таких вычислений выводятся на экран в виде игры, вордовского файла или просто рабочего стола.

Главная часть компьютера, которая занимается вычислениями — вот, что такое процессор.

вверх

Что такое процессорное ядро и многоядерность

Испокон процессорных «веков» эти микросхемы были одноядерными. Ядро — это, фактически, сам процессор. Его основная и главная часть. Есть у процессоров и другие части — скажем, «ножки»-контакты, микроскопическая «электропроводка» — но именно тот блок, который отвечает за вычисления, называется ядром процессора. Когда процессоры стали совсем небольшими, то инженеры решили совместить внутри одного процессорного «корпуса» сразу несколько ядер.

Если представить процессор в виде квартиры, то ядро — это крупная комната в такой квартире. Однокомнатная квартира — это одно процессорное ядро (крупная комната-зал), кухня, санузел, коридор… Двухкомнатная квартира — это уже как два процессорных ядра вместе с прочими комнатами. Бывают и трёх-, и четырёх, и даже 12-комнатные квартиры. Также и в случае с процессорами: внутри одного кристалла-«квартиры» может быть несколько ядер-«комнат».

Многоядерность — это разделение одного процессора на несколько одинаковых функциональных блоков. Количество блоков — это число ядер внутри одного процессора.

вверх

Разновидности многоядерных процессоров

Бытует заблуждение: «чем больше ядер у процессора — тем лучше». Именно так стараются представить дело маркетологи, которым платят за создание такого рода заблуждений. Их задача — продавать дешёвые процессоры, притом — подороже и в огромных количествах. Но на самом деле количество ядер — далеко не главная характеристика процессоров.

Вернёмся к аналогии процессоров и квартир. Двухкомнатная квартира дороже, удобнее и престижнее однокомнатной. Но только если эти квартиры находятся в одном районе, оборудованы одинаково, да и ремонт у них схожий. Существуют слабенькие четырёхядерные (а то и 6-ядерные) процессоры, которые значительно слабее двухядерных. Но поверить в это сложно: ещё бы, магия крупных чисел 4 или 6 против «какой-то» двойки. Однако именно так и бывает весьма и весьма часто. Вроде как та же четырёхкомнатная квартира, но в убитом состоянии, без ремонта, в совершенно отдалённом районе — да ещё и по цене шикарной «двушки» в самом центре.

вверх

Сколько бывает ядер внутри процессора?

Для персональных компьютеров и ноутбуков одноядерные процессоры толком не выпускаются уже несколько лет, а встретить их в продаже — большая редкость. Число ядер начинается с двух. Четыре ядра — как правило, это более дорогие процессоры, но отдача от них присутствует. Существуют также 6-ядерные процессоры, невероятно дорогие и гораздо менее полезные в практическом плане. Мало какие задачи способны получить прирост производительности на этих монструозных кристаллах.

Был эксперимент компании AMD создавать и 3-ядерные процессоры, но это уже в прошлом. Получилось весьма неплохо, однако их время прошло.

Кстати, компания AMD также производит многоядерные процессоры, но, как правило, они ощутимо слабее конкурентов от Intel. Правда, и цена у них значительно ниже. Просто следует знать, что 4 ядра от AMD почти всегда окажутся заметно слабее, чем те же 4 ядра производства Intel.

Теперь вы знаете, что у процессоров бывает 1, 2, 3, 4, 6 и 12 ядер. Одноядерные и 12-ядерные процессоры — большая редкость. Трёхядерные процессоры — дело прошлого. Шестиядерные процессоры либо очень дороги (Intel), либо не такие уж сильные (AMD), чтобы переплачивать за число. 2 и 4 ядра — самые распространённые и практичные устройства, от самых слабых до весьма мощных.

вверх

Частота многоядерных процессоров

Одна из характеристик компьютерных процессоров — их частота. Те самые мегагерцы (а чаще — гигагерцы). Частота — важная характеристика, но далеко не единственная. Да, пожалуй, ещё и не самая главная. К примеру, двухядерный процессор с частотой 2 гигагерца — более мощное предложение, чем его одноядерный собрат с частотой 3 гигагерца.

Совсем неверно считать, что частота процессора равна частоте его ядер, умноженной на количество ядер. Если проще, то у 2-ядерного процессора с частотой ядра 2 ГГц общая частота ни в коем случае не равна 4 гигагерцам! Даже понятия «общая частота» не существует. В данном случае, частота процессора равна именно 2 ГГц. Никаких умножений, сложений или других операций.

И вновь «превратим» процессоры в квартиры. Если высота потолков в каждой комнате — 3 метра, то общая высота квартиры останется такой же — всё те же три метра, и ни сантиметром выше. Сколько бы комнат не было в такой квартире, высота этих комнат не изменяется. Так же и тактовая частота процессорных ядер. Она не складывается и не умножается.

вверх

Виртуальная многоядерность, или 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 потоками вычислений.

Процессоры Core i3 — типичные «середнячки», как по цене, так и по производительности. У них два ядра и никакого намёка на Hyper-Threading. Итого получается, что у Core i3 всего два вычислительных потока. Это же относится и к откровенно бюджетным кристаллам Pentium и Celeron. Два ядра, «гипе-трединг» отсутствует = два потока.

вверх

Нужно ли компьютеру много ядер? Сколько ядер нужно в процессоре?

Все современные процессоры достаточно производительны для обычных задач. Просмотр интернета, переписка в соцсетях и по электронной почте, офисные задачи Word-PowerPoint-Excel: для этой работы подойдут и слабенькие Atom, бюджетные Celeron и Pentium, не говоря уже о более мощных Core i3. Двух ядер для обычной работы более чем достаточно. Процессор с большим количеством ядер не принесёт значительного прироста в скорости.

Для игр следует обратить внимание на процессоры Core i3 или i5. Скорее, производительность в играх будет зависеть не от процессора, а от видеокарты. Редко в какой игре потребуется вся мощь Core i7. Поэтому считается, что игры требуют не более четырёх процессорных ядер, а чаще подойдут и два ядра.

Для серьёзной работы вроде специальных инженерных программ, кодирования видео и прочих ресурсоёмких задач требуется действительно производительная техника. Часто здесь задействуются не только физические, но и виртуальные процессорные ядра. Чем больше вычислительных потоков, тем лучше. И не важно, сколько стоит такой процессор: профессионалам цена не столь важна.

вверх

Есть ли польза от многоядерных процессоров?

Безусловно, да. Одновременно компьютер занимается несколькими задачами — хотя бы работа Windows (кстати, это сотни разных задач) и, в тот же момент, проигрывание фильма. Проигрывание музыки и просмотр интернета. Работа текстового редактора и включённая музыка. Два процессорных ядра — а это, по сути, два процессора, справятся с разными задачами быстрее одного. Два ядра сделают это несколько быстрее. Четыре — ещё быстрее, чем два.

В первые годы существования технологии многоядерности далеко не все программы умели работать даже с двумя ядрами процессора. К 2014 году подавляющее большинство приложений отлично понимают и умеют пользоваться преимуществами нескольких ядер. Скорость обработки задач на двухядерном процессоре редко увеличивается в два раза, но прирост производительности есть почти всегда.

Поэтому укоренившийся миф о том, что, якобы, программы не могут использовать несколько ядер — устаревшая информация. Когда-то действительно было так, сегодня ситуация улучшилась кардинально. Преимущества от нескольких ядер неоспоримы, это факт.

вверх

Когда меньше ядер у процессора — лучше

Не следует покупать процессор по неверной формуле «чем больше ядер — тем лучше». Это не так. Во-первых, 4, 6 и 8-ядерные процессоры ощутимо дороже своих двухядерных собратьев. Значительная прибавка в цене далеко не всегда оправдана с точки зрения в производительности. К примеру, если 8-ядерник окажется лишь на 10% быстрее CPU с меньшим количеством ядер, но будет в 2 раза дороже, то такую покупку сложно оправдать.

Во-вторых, чем больше ядер у процессора, тем он «прожорливее» с точки зрения энергопотребления. Нет никакого смысла покупать гораздо более дорогой ноутбук с 4-ядерным (8-поточным) Core i7, если на этом ноутбуке будут обрабатываться лишь текстовые файлы, просматриваться интернет и так далее. Никакой разницы с двухядерником (4 потока) Core i5 не будет, да и классический Core i3 лишь с двумя вычислительными потоками не уступит более именитому «коллеге». А от батарейки такой мощный ноутбук проработает гораздо меньше, чем экономичный и нетребовательный Core i3.

вверх

Многоядерные процессоры в мобильных телефонах и планшетах

Мода на несколько вычислительных ядер внутри одного процессора касается и мобильных аппаратов. Смартфоны вместе с планшетами с большим количеством ядер почти никогда не используют все возможности своих микропроцессоров. Двухядерные мобильные компьютеры иногда действительно работают чуть быстрее, но 4, а тем более 8 ядер — откровеннейший перебор. Аккумулятор расходуется совершенно безбожно, а мощные вычислительные устройства попросту простаивают без дела. Вывод — многоядерные процессоры в телефонах, смартфонах и планшетах — лишь дань маркетингу, а не насущная необходимость. Компьютеры — более требовательные устройства, чем телефоны. Два процессорных ядра им действительно нужны. Четыре — не помешают. 6 и 8 — излишество в обычных задачах и даже в играх.

вверх

Как выбрать многоядерный процессор и не ошибиться?

Практическая часть сегодняшней статьи актуальна на 2014 год. Вряд ли в ближайшие годы что-то серьёзно поменяется. Речь пойдёт только о процессорах производства Intel. Да, AMD предлагает неплохие решения, но они менее популярны, да и разобраться в них сложнее.

Заметим, что таблица основана на процессорах образца 2012-2014 годов. Более старые образцы имеют другие характеристики. Также мы не стали упоминать редкие варианты CPU, например — одноядерный Celeron (бывают и такие даже сегодня, но это нетипичный вариант, который почти не представлен на рынке). Не следует выбирать процессоры исключительно по количеству ядер внутри них — есть и другие, более важные характеристики. Таблица лишь облегчит выбор многоядерного процессора, но конкретную модель (а их десятки в каждом классе) следует покупать только после тщательного ознакомления с их параметрами: частотой, тепловыделением, поколением, размером кэша и другими характеристиками.

Процессор Количество ядер Вычислительные потоки Типичная область применения
Atom 1-2 1-4 Маломощные компьютеры и нетбуки. Задача процессоров Atom — минимальное энергопотребление. Производительность у них минимальна.
Celeron 2 2 Самые дешёвые процессоры для настольных ПК и ноутбуков. Производительности достаточно для офисных задач, но это совсем не игровые CPU.
Pentium 2 2 Столь же недорогие и малопроизводительные процессоры Intel, как и Celeron. Отличный выбор для офисных компьютеров. Pentium оснащаются чуть более ёмким кэшем, и, иногда, слегка повышенными характеристиками по сравнению с Celeron
Core i3 2 4 Два достаточно мощных ядра, каждое из которых разделено на два виртуальных «процессора» (Hyper-Threading). Это уже довольно мощные CPU при не слишком высоких ценах. Хороший выбор для домашнего или мощного офисного компьютера без особой требовательности к производительности.
Core i5 4 4 Полноценные 4-ядерники Core i5 — довольно дорогие процессоры. Их производительности не хватает лишь в самых требовательных задачах.
Core i7 4-6 8-12 Самые мощные, но особенно дорогие процессоры Intel. Как правило, редко оказываются быстрее Core i5, и лишь в некоторых программах. Альтернатив им просто нет.
вверх

Краткий итог статьи «Вся правда о многоядерных процессорах». Вместо конспекта

  • Ядро процессора — его составная часть. Фактически, самостоятельный процессор внутри корпуса. Двухядерный процессор — два процессора внутри одного.
  • Многоядерность сравнима с количеством комнат внутри квартиры. Двухкомнатные лучше однокомнатных, но лишь при прочих равных характеристиках (расположение квартиры, состояние, площадь, высота потолков).
  • Утверждение о том, что чем больше ядер у процессора, тем он лучше — маркетинговая уловка, совершенно неверное правило. Квартиру ведь выбирают далеко не только по количеству комнат, но и по её расположению, ремонту и другим параметрам. Это же касается и нескольких ядер внутри процессора.
  • Существует «виртуальная» многоядерность — технология Hyper-Threading. Благодаря этой технологии, каждое «физическое» ядро разделяется на два «виртуальных». Получается, что у 2-ядерного процессора с Hyper-Threading лишь два настоящих ядра, но эти процессоры одновременно обрабатывают 4 вычислительных потока. Это действительно полезная «фишка», но 4-поточный процессор нельзя считать четырёхядерным.
  • Для настольных процессоров Intel: Celeron — 2 ядра и 2 потока. Pentium — 2 ядра, 2 потока. Core i3 — 2 ядра, 4 потока. Core i5 — 4 ядра, 4 потока. Core i7 — 4 ядра, 8 потоков. Ноутбучные (мобильные) CPU Intel имеют иное количество ядер/потоков.
  • Для мобильных компьютеров часто важнее экономичность в энергопотреблении (на практике — время работы от батареи), чем количество ядер.

Что такое Hyperthreading | HP® Tech принимает

Гиперпоточность — это термин Intel для обозначения того, что в компьютерной индустрии также называется одновременной многопоточностью или SMT. Если вам нужен более быстрый компьютер, но вы не хотите полностью менять свое оборудование, гиперпоточность может помочь вам ускорить работу центрального процессора (ЦП). Продолжайте читать, чтобы узнать больше о том, как этот процесс может помочь вашему компьютеру. бегайте быстрее, чтобы вы могли наслаждаться безупречным игровым процессом или более плавной потоковой передачей, когда вы смотрите свое любимое шоу.

Определение Hyper-threading

Hyper-threading — это процесс, с помощью которого ЦП делит свои физические ядра на виртуальные ядра, которые обрабатываются операционной системой так, как если бы они на самом деле были физическими ядрами. Эти виртуальные ядра также называются потоками [1]. Большинство двухъядерных процессоров Intel используют этот процесс для создания 4 потоков или 4 виртуальных ядер. Четырехъядерные процессоры Intel используют гиперпоточность для создания большей мощности в виде 8 виртуальных ядер или 8 потоков.

Как работает гиперпоточность?

Чтобы понять гиперпоточность, вы сначала должны понять, как работает ваш процессор.Ваш процессор также известен как центр управления вашим компьютером. Он содержит два важных компонента: блок управления и арифметико-логический блок (ALU). Блок управления использует электрические сигналы, чтобы направить всю компьютерную систему на выполнение отправленных ей инструкций. Вы можете представить себе блок управления в виде полицейского, управляющего движением.

Блок управления фактически не выполняет инструкции, вместо этого он декодирует их и делегирует эти инструкции другим частям вашей компьютерной системы.Арифметико-логическое устройство — это то, что выполняет все арифметические и логические действия [2].

ЦП выполняет инструкции, используя следующие шаги:

  1. Блок управления получает инструкции из памяти вашего компьютера.
  2. Блок управления считывает инструкцию и получает значение, затем направляет необходимые данные для передачи из памяти в арифметико-логический блок (ALU). Комбинация этих первых двух шагов называется временем инструкции или I-временем.
  3. ALU выполняет арифметические или логические инструкции. Это когда ALU выполняет фактическую операцию с данными.
  4. ALU сохраняет результат операции в памяти или в регистре. Шаги 3 и 4 называются временем выполнения или E-time.
Хотя это может показаться сложной процедурой, все эти действия выполняются за доли секунды. Чем быстрее ваш ЦП может обрабатывать инструкции, тем быстрее ваш компьютер может выполнять задачи. Стоит отметить, что если ваш процессор не очень мощный, эти задачи могут оказаться узкими местами, что приведет к замедлению и задержкам.

Вот здесь-то и появляется гиперпоточность.

Гиперпоточность работает, позволяя каждому ядру вашего процессора выполнять два действия одновременно. В свою очередь, вы получаете лучшую производительность процессора, поскольку это повышает его эффективность. Таким образом, вы можете одновременно использовать более требовательные приложения или игры.

Редактирование видео, рендеринг в 3D и многозадачность, нагружающая процессор, — вот примеры задач, которые могут выиграть от скрытой работы с гиперпоточностью [3]. Гиперпоточность также является полезным процессом, когда вы хотите, чтобы ваш процессор отправлял более легкие задачи, такие как фоновые приложения, на одно ядро ​​процессора, в то время как более интенсивные приложения, такие как игры, отправлялись на другое ядро ​​процессора в многоядерных процессорах.

Гиперпоточность лучше для игр?

Чтобы определить, подходит ли гиперпоточность для игр, вам сначала нужно узнать количество ядер вашего компьютера в настоящее время. Для требовательных игр обычно требуется 2 или 4 ядра, чтобы добиться максимальной производительности.

Если у вас процессор Intel i5 или i3, вы могли бы извлечь выгоду из гиперпоточности этих процессоров. Как вы, возможно, уже заметили, играя в игры на этих процессорах, вы можете столкнуться с задержками или замедлением, поскольку эти процессоры не так мощны, как их более надежные собратья, процессоры Intel i7 и i9 [4].

Hyper-threading в настоящее время доступен для следующих семейств процессоров: Intel Core ™, Intel Core vPro ™, Intel Core M и Intel Xeon®. Однако для использования гиперпоточности вам потребуется соответствующая операционная система (ОС) и BIOS, поддерживающие технологию Hyper-Threading от Intel.

Что еще может сделать мой компьютер быстрее?

Если вы хотите увеличить скорость своего компьютера и у вас есть процессор Intel, у вас может быть доступ к технологии Intel Turbo Boost. Для компьютеров с процессорами Intel Core i5 или выше у вас может быть даже Intel Turbo Boost Technology 2.0, но важно проверить характеристики и возможности вашего ПК.

Комбинация технологии Intel Hyper-Threading с Turbo Boost открывает множество возможностей для более быстрых и эффективных вычислений. Вместе технология гиперпоточности и Turbo Boost могут динамически реагировать на изменение рабочей нагрузки и автоматически отключать неактивные ядра [5]. В результате частота процессора увеличивается на загруженных ядрах, что приводит к повышению производительности приложений, использующих гиперпоточность.

HP® и гиперпоточность

Если вы ищете продукты HP, поддерживающие гиперпоточность, есть множество устройств HP, таких как игровые ноутбуки HP i7 с мощной вычислительной мощностью. Чтобы играть в компьютерные игры класса AAA, рекомендуется приобрести процессоры с минимум 4 ядрами. Процессор Intel i5 или AMD Ryzen — это самый низкий уровень обработки, от которого вам следует зависеть, если вы планируете играть в игры с интенсивным использованием процессора.

Важный вывод о гиперпоточности — знание ваших конкретных вычислительных потребностей.Хотя у гиперпоточности нет реальных недостатков, она не заменяет прирост производительности физических ядер по сравнению с виртуальными.

Если у вас есть компьютер с включенной функцией Hyper-Threading, но вы обнаружите, что дополнительная мощность не нужна, вы можете просто отключить ее. Однако, если вы опытный геймер, который хочет получить максимум от игрового опыта для действительно захватывающего побега в игровую вселенную, гиперпоточность — это довольно простое обновление.

Какими бы ни были ваши потребности, HP Store предлагает мощные возможности для предприятий корпоративного уровня, обычных пользователей, которым нужен простой цифровой развлекательный центр, или венец мощного игрового устройства.

Об авторе

Мишель Уилсон (Michelle Wilson) пишет статьи для HP® Tech Takes. Мишель — специалист по созданию контента, пишущий для различных отраслей, включая технические тенденции и новости СМИ.

Что такое гиперпоточный процессор и имеет ли это значение?

В наши дни много путаницы со всеми новыми процессорами, появившимися за последние несколько лет. Intel выпустила множество различных технологий, таких как Hyper-Threading, серия Core, а также технология VT.Теперь, я уверен, что после прочтения терминологии, придуманной Intel, вы думаете: «Что это значит для меня?»

Что ж, я так рад, что вы спросили!

Hyper-Threading (HT) — это технология, разработанная Intel для своих процессоров Pentium 4 и Xeon-эквивалентов. Когда вы используете ЦП с поддержкой HT, вы заметите в своем системном профиле, что он сообщает, что у вас два процессора вместо одного. Пока вы думаете: «Это потрясающе! У меня два процессора В ОДНОМ! »Это не так.На самом деле HT с технологической точки зрения является дублированием определенных секций процессора, которые обрабатывают состояние потоков. Фактически он не дублирует основные ресурсы процессора.

Это позволяет операционной системе планировать два потока одновременно. Поток — это, по сути, инструкция, которая передается процессору и ожидает результата. Когда программа компилируется для многопоточности, это означает, что процессор теоретически может выполнять два потока одновременно, поскольку операционная система видит два процессора.Это повышает производительность обработки, поскольку большая часть данных, выполняемых процессором, на самом деле является математическим предположением, основанным на статистике.

Эта технология известна как предсказание переходов. Когда предсказание ветвления неверно, выполняемый поток останавливается и должен выполняться полностью без какого-либо предсказания, чтобы он мог вернуться должным образом. Поскольку у вас остановленный поток и один ожидает выполнения, прогноз ветвления может выполнить новый поток, в то время как процессор завершает предыдущий поток.

В новой линейке процессоров Intel, широко известной как серия Core, появилась совершенно новая идея многопоточной обработки. Вместо того, чтобы просто дублировать часть ЦП, как в линейке Pentium 4, Intel теперь создает дублированные ядра на одном ЦП. Вы можете определить количество ядер каждого процессора по схеме именования.

Например, Core Solo имеет только один 32-битный процессор, а Core2Quad — четыре 64-битных процессора. Основное различие между линейкой Core и Core2 заключается в том, что линейка Core имеет только 32-битные возможности, а линейка Core2 — 64-битная.Теперь вы, вероятно, думаете: «Ну и что, у Intel уже есть Hyper-Threading, так что в этом хорошего?» Основное различие состоит в том, что на самом деле на одном процессоре несколько ядер. При использовании многопоточной программы ядро ​​не останавливается и не ожидает, поскольку оно может передавать потоки на совершенно другой процессор. Это отлично подходит для систем, которым нужно как можно скорее выполнить большое количество потоков. У этих процессоров также увеличен кэш-память, а также увеличена скорость шины, поэтому они могут выполнять инструкции с гораздо большей скоростью, чем линейка Pentium 4.

Теперь, когда вы разбираетесь в ядрах, позвольте мне сообщить вам об одной интересной особенности серии Core, которой нет в большинстве Pentium 4. Он известен как бит VT. Этот бит является флагом процессора, который используется для виртуализации оборудования. Это позволяет более эффективно использовать процессор при работе с виртуализированной операционной системой. Виртуализированная операционная система — это когда вы используете программное обеспечение, такое как VMware или параллельные компьютеры, для запуска операционной системы внутри существующей. Например, с помощью VMware вы сможете загрузить Linux на виртуальную машину и предоставить ей доступ к Интернету при работе с Windows на вашем компьютере.Для внешнего мира машина Linux будет полностью выглядеть как собственный сервер, если на самом деле она разделяет ресурсы с вашей машины Windows.

При всех перспективных технологиях процессоров трудно уследить и понять всю терминологию, которую вводят производители. Я надеюсь, что смог объяснить вам некоторые из основных технологий, которые Intel внедрила в свои процессоры, и планирую в будущем предоставить вам информацию о том, как вы можете воспользоваться преимуществами некоторых из этих функций.

Обновлено: январь 2019 г.

Хотите узнать больше об INAP?
Свяжитесь с нами сегодня
Сэм Боулинг
  • Менеджер по проектированию инфраструктуры

УЗНАТЬ БОЛЬШЕ

Как Hyper-threading удваивает пропускную способность вашего процессора?

На днях заказчик попросил меня спланировать мощность их фермы веб-серверов.Я смотрел на график ЦП для одного из веб-серверов, на котором была включена гиперпоточность , и подумал про себя: «Это, должно быть, довольно вводящий в заблуждение график — он показывает использование ЦП на 30%. Неужели этот сервер может выполнять в 3 раза больше работы? »

Или можно?

Я решил сделать то, что мы обычно делаем в таком случае — решил проверить и узнать правду. Оказывается, здесь есть нечто большее, чем кажется на первый взгляд.

Как работает Intel Hyper-Threading

Прежде чем мы перейдем к результатам моих тестов, давайте немного поговорим о гиперпоточности.По заявлению Intel, технология Intel® Hyper-Threading (технология Intel® HT) более эффективно использует ресурсы процессора, позволяя запускать несколько потоков на каждом ядре. В качестве функции производительности технология Intel HT также увеличивает пропускную способность процессора, улучшая общую производительность многопоточного программного обеспечения.

Звучит почти как магия, но на самом деле (и поправьте меня, если я ошибаюсь), HT по сути делает то, что представляет одно ядро ​​ЦП как два ЦП (скорее, потоки), он позволяет разгрузить планирование задач от ядра к ЦП. .

Так, например, если у вас есть только одно физическое ядро ​​ЦП и две задачи с одинаковым приоритетом, выполняющиеся параллельно, ядру придется постоянно переключать контекст, чтобы обе задачи получали изрядное количество процессорного времени. Если, однако, у вас есть ЦП, представленный вам как два ЦП, ядро ​​может предоставить каждой задаче ЦП и взять отпуск.

На аппаратном уровне это по-прежнему будет один ЦП, выполняющий такой же объем работы, но может быть некоторая оптимизация того, как эта работа будет выполняться.

Моя гипотеза

Вот проблема, которая сводила меня с ума: если HT на самом деле НЕ дает вам вдвое больше мощности, и все же система представляет статистику для каждого потока ЦП отдельно, то при загрузке ЦП 50% (согласно mpstat в Linux) ЦП должен быть исчерпаны.

Итак, если я попытался смоделировать масштабируемость этого веб-сервера — 12-ядерной системы с включенным HT (представленной как 24 процессора в системе), предполагая идеальную линейную масштабируемость, то вот как это должно выглядеть:

Пропускная способность (запросов в секунду) | 9 | , +++++++++++++++ | + | + 6 | + | + | + 3 | + | + | + 0 ‘—— + —- + —- + —- + —- 1 6 12 18 24

Пропускная способность

(запросов в секунду)

|

9 | , +++++++++++++++

| +

| +

6 | +

| +

| +

3 | +

| +

| +

0 ‘—— + —- + —- + —- + —-

1 6 12 18 24

В приведенном выше примере один поток ЦП может обработать запрос за 1.2 с, поэтому вы видите, что максимальная скорость составляет 9-10 запросов в секунду (12 / 1,2).

С точки зрения пользователя, это ограничение возникнет ОЧЕНЬ неожиданно, поскольку можно было бы ожидать, что использование 50% будет… ну, именно это — использование 50%.

На самом деле график загрузки ЦП выглядел бы еще более удручающе. Например, если бы я увеличивал количество параллельных запросов линейно с 1 до 24, вот как должна выглядеть эта взаимосвязь:

Загрузка процессора: 100% | ++++++++++++++ | .| . | . | . 50% | . | + | + | + | + 0% ‘—- + —- + —- + —- + —- 0 6 12 18 24

Загрузка ЦП:

100% | ++++++++++++++

| .

| .

| .

| .

50% | .

| +

| +

| +

| +

0% ‘—- + —- + —- + —- + —-

0 6 12 18 24

Следовательно, загрузка ЦП на 12 ядрах резко возрастет с 50% до 100%, потому что на самом деле в этот момент ЦП системы будет загружен на 100%.

Что происходит на самом деле

Естественно, я решил провести тест и посмотреть, верны ли мои предположения.Тест был довольно простым — я написал php-скрипт с интенсивным использованием ЦП, выполнение которого заняло 1,2 секунды на ЦП, который я тестировал, и разбил его по http (apache) с помощью ab при увеличении параллелизма. Вот результат:

Необработанные данные можно найти здесь.

Если это вас не поразит, просмотрите факты еще раз, а затем вернитесь к графику.

Все еще не уверен, почему мне это интересно? Позволь мне объяснить. Если вы посмотрите внимательно, сначала — при параллелизме от 1 до 8 — он отлично масштабируется.Таким образом, если бы у вас были данные только для потоков 1-8 (и вы знали, что процессы не подвергаются задержкам согласованности из-за общих структур данных), вы, вероятно, предсказываете, что они будут масштабироваться линейно, пока не достигнет ~ 10 запросов в секунду на 12 ядрах. , после чего добавление дополнительных параллельных запросов не принесет никаких преимуществ, поскольку ЦП будет перегружен.

На самом деле, однако, происходит то, что после 8 параллельных потоков (следовательно, после 33% использования виртуального ЦП) время выполнения начинает увеличиваться до , а максимальная производительность достигается только при 24-32 параллельных запросах.Похоже, что на отметке 33% происходит какое-то «троттлинг».

Другими словами, чтобы избежать резкого падения производительности после 50% загрузки ЦП, при 33% использовании виртуальных потоков (т.е. 66% фактического использования ЦП) система создает иллюзию предела производительности — выполнение замедляется, так что система только достигает точки насыщения на 24 потоках (визуально при 100% загрузке ЦП).

Естественно тогда возникает вопрос — есть ли еще смысл запускать гиперпоточность на многоядерной системе? Я вижу как минимум два недостатка:

1.Вы не видите реальной картины того, насколько на самом деле загружена ваша система — если график ЦП показывает использование 30%, ваша система вполне может быть уже загружена на 60%.
2. После 60% физического использования скорость выполнения ваших запросов будет намеренно ограничена, чтобы обеспечить более высокую пропускную способность системы.

Так что, если вы оптимизируете для более высокой пропускной способности — это может быть нормально. Но если вы оптимизируете время отклика, вы можете подумать о работе с выключенным HT.

Я что-то пропустил?

Связанные

Гиперпоточность или отсутствие гиперпоточности: какой ЦП лучше

Как работает Hyper-Threading

Гиперпоточность применяется к операциям и приложениям, для которых запланировано несколько задач, поэтому на вашем процессоре не будет простоев.Редактирование видео, 3D-рендеринг и тяжелая многозадачность — отличные примеры Hyper-Threading. Это помогает процессору передать легкую задачу фоновым приложениям на один процессор, а тяжелые приложения с высоким разрешением, такие как игры и редактирование видео, передать другому.

Если вы думаете, что Hyper-Threading увеличит количество ядер ваших процессоров, то позвольте нам сказать вам, что это миф. Нет ничего общего с физическими ядрами процесса, это только поможет эффективно направить задачу в процесс.Технология Hyper-Threading позволяет каждому ядру одновременно запускать два потока.

С другой стороны, никакая технология Hyper-Threading не работает с традиционным методом обработки. Есть много задач и команд, которые поступают в процессор через ядра, такие как двухъядерные, четырехъядерные или восьмиъядерные и другие. Иногда компанды не обрабатываются ядрами должным образом, что приводит к низкой скорости обработки ЦП.

Hyper-Threading увеличивает производительность ядер ЦП, он позволяет нескольким потокам, которые представляют собой последовательности инструкций, выполняться каждым ядром, чтобы ЦП работал более эффективно.С помощью этого ЦП может выполнять больше задач за то же время.

Производительность Hyper-Threading

Hyper-Threading увеличивает производительность ядер ЦП, она позволяет выполнять несколько потоков, которые представляют собой последовательности инструкций, которые должны выполняться каждым ядром, чтобы ЦП работал более эффективно. С помощью этого ЦП может выполнять больше задач за то же время.

Но если вы думаете, что процессоры Hyper-Threading лучше реальных физических ядер, то вы ошибаетесь.Как мы уже говорили выше, Hyper-Threading помогает только в распределении инструкций, но не увеличивает количество физических ядер процессоров.

При использовании Hyper-Threading операционная система распознает каждое физическое ядро ​​как 2 виртуальных или логических ядра. Таким образом, Hyper-Threading практически удваивает количество ядер в процессоре. Таким образом, двухъядерные процессоры будут действовать как виртуальные четырехъядерные.

Объяснение того, что такое ОЗУ — GIZBOT

Вердикт

Обратите внимание, что все приложения не предназначены для использования технологии Hyper-Threading.Чтобы воспользоваться преимуществами гиперпоточности, вы должны запускать приложения, использующие преимущества технологии многопоточности, например, редактирование и кодирование видео.

Страница не найдена

Моя библиотека

раз
    • Моя библиотека
    «» Настройки файлов cookie

    Повысит ли Hyper-Threading производительность обработки? | Автор: IT Solution Architects

    Автор: Bill Jones, Sr.Архитектор решений, Dasher Technologies

    В сегодняшнем блоге я расскажу о технологии Intel Hyper-Threading, о том, как она может улучшить производительность системы, а когда нет. Я также предоставлю простой метод для создания приблизительного сравнения производительности системы между процессорами с гиперпоточностью и процессорами без гиперпотоков.

    Полный текст статьи можно найти здесь: https://www.dasher.com/will-hyper-threading-improve-processing-performance/

    ОБЗОР:
    Технология Intel Hyper-Threading может повысить производительность обработки системы за счет до 30%.Гиперпоточность создает два логических процессора из одного ядра физического процессора. Это достигается за счет предоставления двух наборов регистров (называемых архитектурными состояниями) на каждом ядре. Когда гиперпоточность включена в сокете Intel, второе архитектурное состояние на каждом ядре может принимать потоки от операционной системы (или гипервизора). Эти два потока по-прежнему будут совместно использовать внутренние компоненты микроархитектуры, называемые исполнительными модулями. Это может привести к увеличению производительности обработки до 30% в системе с одним сокетом.В системах с двумя сокетами гиперпоточность может обеспечить улучшение до 15%. Если настройка производительности критически важна в вашей среде, может быть важно тестирование производительности как с использованием гиперпоточности, так и без нее.

    ТЕХНИЧЕСКИЕ ДАННЫЕ
    Ниже показано, как и почему используется гиперпоточность…

    Что такое гиперпоточность?
    Гиперпоточность — это технология Intel, которая предоставляет второй набор регистров (то есть второе архитектурное состояние) на одном физическом ядре процессора.Это позволяет операционной системе или гипервизору компьютера получать доступ к двум логическим процессорам для каждого физического ядра системы.

    Источник изображения: Intel

    По мере обработки потоков некоторые внутренние компоненты ядра (называемые исполнительными модулями) часто простаивают в течение каждого тактового цикла. Включив гиперпоточность, исполнительные блоки могут обрабатывать инструкции из двух потоков одновременно, что означает, что меньше исполнительных блоков будет бездействовать в течение каждого тактового цикла. В результате включение гиперпоточности может значительно повысить производительность системы.

    Насколько Hyper-Threading повысит производительность обработки?
    Основываясь на рекомендациях нескольких производителей серверов, я использую следующее практическое правило. Для однопроцессорной системы гиперпоточность может повысить производительность системы до 30%. Для систем с двумя сокетами гиперпоточность может повысить производительность до 15%. Для систем с четырьмя сокетами (или выше) рекомендуется тестирование производительности с включенной гиперпоточностью и без нее.

    На диаграмме ниже мы видим пример того, как можно повысить производительность обработки с помощью технологии Intel HT.Каждый 64-разрядный процессор Intel Xeon включает четыре исполнительных модуля на ядро. При отключенной технологии Intel HT выполнение ядра может работать только с инструкциями из потока 1 или из потока 2. Как и ожидалось, во время многих тактовых циклов некоторые исполнительные блоки простаивают. При включенной Hyper-Threading исполнительные блоки могут обрабатывать инструкции как из потока 1, так и из потока 2 одновременно. В этом примере гиперпоточность сокращает необходимое количество тактовых циклов с 10 до 7.

    Источник изображения: Intel

    К счастью, современные операционные системы и гипервизоры поддерживают гиперпоточность и равномерно загружают активные потоки по физическим ядрам.В результате первые проблемы с настройкой производительности многоядерных систем с включенной гиперпоточностью в основном устранены. Однако, если в вашей среде требуется соответствие ЦП, обратитесь к соответствующей документации для вашей операционной системы или гипервизора. Например, в рекомендациях VMware Performance Best Practices для VMware vSphere 5.5 говорится:

    «Будьте осторожны при использовании привязки ЦП в системах с гиперпоточностью. Поскольку два логических процессора совместно используют большую часть ресурсов процессора, закрепление виртуальных ЦП, будь то с разных виртуальных машин или с одной виртуальной машины SMP, к обоим логическим процессорам на одном ядре (например, ЦП 0 и 1) может привести к снижению производительности.”Через VMware

    ПРОИЗВОДИТЕЛЬНОСТЬ
    Одна из самых больших проблем, связанных с пониманием повышения производительности за счет гиперпоточности, — это то, как инструменты мониторинга отражают производительность процессора. Давайте быстро посмотрим, как Microsoft Windows и VMware vSphere сообщают об использовании ЦП. Подробный обзор мониторинга производительности может легко заполнить несколько сообщений в блоге, поэтому мы пока оставим эту часть обсуждения упрощенной.

    Общие сведения об отчетах о производительности Windows с Hyper-Threading
    Microsoft Windows сообщает «% загруженности процессора», вычисляя процент времени, в течение которого логические процессоры выполняли неактивные потоки (в течение интервала отчетности), и вычитая это количество из 100%.Поскольку Microsoft Windows поддерживает гиперпоточность, операционная система будет использовать второе архитектурное состояние физического ядра процессора только тогда, когда количество активных потоков превышает количество физических ядер в системе. Однако инструменты мониторинга производительности Windows по-прежнему будут сообщать оба архитектурных состояния как логические процессоры в операционной системе.

    Теперь давайте объединим эти два факта и посмотрим, как меняются отчеты о производительности при включении гиперпоточности. Если на сервере Windows установлено два 8-ядерных процессора Intel Xeon и гиперпоточность отключена, то монитор производительности (PERFMON.EXE) сообщит о 16 логических процессорах. Если% загруженности процессора для экземпляра «_Total» постоянно составляет от 40% до 50%, то каждый такт выполняется от 6 до 8 активных потоков (в среднем).

    Если мы включим гиперпоточность на этом сервере, Windows теперь будет сообщать 32 логических процессора (два логических процессора на физическое ядро). Поскольку Windows поддерживает гиперпоточность, эти 6-8 активных потоков по-прежнему будут распределяться (в среднем) по одному активному потоку на физическое ядро, а второе архитектурное состояние на каждом ядре будет в основном неиспользованным.В этом примере включение гиперпоточности не улучшило и не ухудшило производительность системы. Однако теперь Performance Monitor в среднем составляет 6–8 активных потоков на 32 логических процессорах. В результате значение% загруженности процессора сокращается вдвое. Итак, похоже, включение гиперпоточности увеличило производительность системы вдвое! К сожалению (как обсуждалось ранее) второе архитектурное состояние на каждом ядре должно разделять компоненты микроархитектуры с первым архитектурным состоянием, и производительность системы фактически не увеличена вдвое.

    Итак, при работе со средством Windows Performance Monitor важно помнить, что при загрузке ЦП от 0% до 50% гиперпоточность не используется системой регулярно. Кроме того, путь от 50% до 100% намного короче, чем расстояние от 0% до 50%.

    Общие сведения об отчетах о производительности VMware vSphere с использованием Hyper-Threading
    Современные гипервизоры (например, VMware ESXi 5.x) поддерживают гиперпоточность. VMware заявляет: «Хосты ESXi интеллектуально управляют временем процессора, чтобы гарантировать плавное распределение нагрузки между ядрами процессоров в системе… Виртуальные машины предпочтительно планируются на двух разных ядрах, а не на двух логических процессорах на одном ядре.»(Источник:« vSphere Resource Management, ESXi 5.5 vCenter Server 5.5. »Через VMWare

    VMware рекомендует включить гиперпоточность. В своих технических документах по производительности для ESXi 4.x и 5.x , VMware заявляет: «… гиперпоточность может обеспечить от небольшого до значительного увеличения производительности системы за счет увеличения нагрузки на конвейер процессора». (Источники: http://bit.ly/1hMAir4, http://bit.ly / 1muhaOA, http://bit.ly/1dVMe99)

    В VMware ресурсы ЦП обычно указываются в мегагерцах (МГц).Три ключевых показателя использования ЦП — это «usagemhz», «totalmhz» и «usage». Конкретные определения метрик меняются в зависимости от того, является ли контекст центром обработки данных VMware vSphere, кластером, пулом ресурсов, хостом или виртуальной машиной. Вот общее описание трех показателей.

    usagemhz: измеряет (в МГц) потребляемые вычислительные ресурсы
    totalmhz: измеряет (в МГц) доступные вычислительные ресурсы
    usage: сообщает (в процентах) об использовании, МГц, деленное на totalmhz

    Totalmhz для хоста ESXi рассчитывается путем умножения количества физических ядер в хосте по тактовой частоте этих ядер.Ниже представлены расчеты двух двухпроцессорных серверов — один с процессорами Intel Xeon 2695v2 и один с процессорами AMD Opteron 6376.

    При расчете емкости VMware не учитываются потенциальные преимущества гиперпоточности, поэтому производительность центрального процессора хоста может быть недооценена.

    Usagemhz представляет активное использование ЦП в контексте. Использование указывается в процентах и ​​рассчитывается путем деления usagemhz на totalmhz.

    Когда Hyper-Threading не является хорошей идеей?
    Иногда гиперпоточность не способствует производительности системы.В крайних случаях включение гиперпоточности может снизить производительность системы. Ниже приведен краткий список сред, в которых гиперпоточность может принести незначительные улучшения или не дать никаких улучшений. Если ваша среда включает системы, отвечающие этим критериям, рекомендуется протестировать производительность системы с включенной гиперпоточностью и без нее.

    Hyper-threading следует протестировать, если:

    • сервер имеет более двух сокетов,
    • сервер имеет большое количество физических ядер,
    • операционная система не поддерживает гиперпоточность (пример: Windows Server 2003 ),
    • приложение является однопоточным или не обрабатывает несколько потоков эффективно,
    • приложение уже разработано для максимального использования исполнительных блоков в каждом ядре, или
    • приложение имеет очень высокую скорость памяти I / O.

    ПРОСТОЕ И ГЛОБАЛЬНОЕ СРАВНЕНИЕ
    Как и было обещано, вот упрощенный и очень грубый метод сравнения производительности ЦП с гиперпоточностью и без нее. Эта модель не принимает во внимание многие другие важные факторы, которые могут улучшить производительность системы — такие факторы, как кеш-память процессора, поколение процессора, поддержка аппаратной виртуализации, скорость памяти и т. Д. Поэтому, если вы собираетесь использовать эту модель, помните, что она дает очень-очень-упрощенное, очень грубое сравнение процессоров.

    Используя модель VMware для расчета емкости ЦП в МГц, мы добавим «коэффициент гиперпоточности». Я использую коэффициенты гиперпоточности «до 1,3» для систем с одним сокетом и «до 1,15» для систем с двумя сокетами. Имея это в виду, давайте пересчитаем производительность процессоров Intel Xeon 2695v2 и AMD Opteron 6376. Для этого упражнения процессоры будут установлены в двухпроцессорных серверах.

    Как мы видим, Intel Xeon 2695v2 с гиперпоточностью может повысить производительность системы с 57 600 МГц до «до» 66 240 МГц.В зависимости от окружающей среды это 15% потенциальное улучшение может быть значительным.

    ЗАКЛЮЧЕНИЕ
    Вообще говоря, гиперпоточность — это хорошо. Многие производители рекомендуют включать гиперпоточность как часть своих рекомендаций. Фактически, многие администраторы в течение многих лет без происшествий использовали гиперпоточность. Однако, как мы видели, гиперпоточность — это технология, в которой «ваш опыт может отличаться».

    Гиперпоточность прошла долгий путь с момента своего первого выпуска в 2002 году.Во многом это улучшение связано с улучшенной поддержкой гиперпоточности в операционных системах и гипервизорах. Если вы относитесь к числу тех, кто пострадал от гиперпоточности в первые дни ее существования, я приглашаю вас попробовать еще раз.

    Технология Intel Hyper-Threading предлагает потенциальное улучшение производительности системы, и она может быть доступна в уже имеющемся у вас оборудовании.

    (В этом сообщении в блоге мы значительно упростили описание того, как операционные системы и гипервизоры, поддерживающие гиперпоточность, распределяют нагрузку между сокетами, ядрами и логическими процессорами.Для очень подробного описания планирования ЦП VMware см. «Планировщик ЦП в VMware vSphere 5.1», Здесь )

    В чем разница между Hyper Threading и многоядерной технологией? | Small Business

    Технология, лежащая в основе Hyper-Threaded, или HT, и многоядерных процессоров, позволяет процессорам намного превосходить производительность одноядерных процессоров без HT. Однако различия между технологиями велики, поэтому важно понимать эти различия, прежде чем выбирать, что использовать в компьютерах для бизнеса.Однако с любой технологией вы добьетесь большей производительности, чем с обычным процессором.

    Технология Hyper-Threading

    Технология Hyper-Threading создает два виртуальных ядра обработки для каждого физического ядра, присутствующего в ЦП. Физическое ядро ​​приводит в действие виртуальные ядра, которые затем разделяют ответственность за обработку задач. Каждое виртуальное ядро ​​идентично другому, и хотя ни одно из них не так мощно, как физическое ядро, вместе они намного превышают мощность физического ядра, когда HT не включен.Использование этих виртуальных ядер позволяет ЦП делегировать задачи между ядрами в реальном времени.

    Преимущества Hyper-Threading

    Рабочая нагрузка, создаваемая операцией, интенсивно использующей ЦП, такой как одновременный запуск двух требовательных программ — операция, которая замедляет работу одного физического ядра независимо от его чистой мощности, — это разделение между виртуальными ядрами в процессоре, использующем технологию HT. Благодаря тому, что два виртуальных ядра решают задачи одновременно, время обработки сокращается, программы открываются быстрее, а ваш компьютер остается более отзывчивым во время многозадачности.Короче говоря, Hyper-Threading увеличивает эффективность обработки.

    Многоядерная технология

    Многоядерная технология, которая чаще всего доступна в двухъядерных, четырехъядерных и шестиядерных ЦП, представляет собой технологию, которая добавляет дополнительные физические ядра обработки. В одноядерном ЦП задачи обрабатываются по очереди в порядке очереди. Это может быть проблематично для многозадачности, поскольку начнется резервное копирование задач. В процессоре с двумя или более ядрами многозадачность намного эффективнее, поскольку для обработки задач доступно несколько ядер.Чем больше у вас ядер, тем больше данных вы можете обработать без снижения производительности.

    Преимущества многоядерных процессоров

    Многоядерные технологии обладают всеми преимуществами технологии Hyper-Threading и многим другим. В отличие от технологии HT, которая использует два виртуальных ядра на каждое физическое ядро ​​для более эффективной обработки задач, многоядерная технология добавляет физические ядра. Поскольку одно физическое ядро ​​мощнее одного виртуального ядра, двухъядерный процессор мощнее одноядерного процессора с Hyper-Threading.Многие новые модели ЦП являются многоядерными и многопоточными, что обеспечивает еще большую производительность. Например, если у вас есть четырехъядерный процессор — это четыре ядра — с HT, у вас будет восемь виртуальных ядер.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *