Вопрос: Hyper Threading против разгона


В чем разница между этими двумя, и при каких обстоятельствах я бы хотел их реализовать? Есть ли обстоятельства, когда я хотел бы только 1, а не другого?

Согласно Википедии, Hyper Threading является запатентованной технологией Intel, тогда как разгон, похоже, применим к любому процессору (Intel или другому).

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


4
2018-05-08 13:41


Источник


Hyperthreading - это только название бренда Intel для одновременной многопоточности. Некоторые серверные процессоры IBM Power и MIPS также реализуют его. en.wikipedia.org/wiki/Simultaneous_multithreading - Dan Neely


Ответы:


Два совершенно разных подхода к повышению производительности.

Разгон - это процесс настройки настроек материнской платы (или видеокарт), чтобы «часы» выполнялись быстрее, чем сертифицированный поставщик. Может повысить производительность для сценариев с одним или несколькими потоками. Также существует риск того, что может образоваться избыточное тепло, которое может повредить схему.

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

Они не являются взаимоисключающими. Вы можете разгонять процессор с гиперпотоком.


8
2018-05-08 13:52



Это очень похоже на многозадачность, за исключением того, что выполняется под управлением планировщика аппаратного / программного обеспечения, а не планировщика программного обеспечения, которое почти каждая операционная система, написанная за последние 30 лет. Я думаю, процессорное ядро дубликаты некоторые ресурсы, такие как общие регистры и регистры управления памятью, позволяют переключать задачи быстрее, чем когда это выполняется планировщиком программного обеспечения. Или я чего-то не хватает? - Scott
Вы говорите: «Нет никакого риска для такого подхода ...» Я чувствую себя обязанным указать, что Википедия говорит: «В мае 2005 года Колин Персиваль продемонстрировал, что на Pentium 4 вредоносная нить может использовать временная атака для контроля шаблонов доступа к памяти другого потока, с которым он имеет общий кэш, что позволяет кражу криптографической информации.[Ссылка] - Scott
@Scott, я сказал like there is with overclocking что означает, что поставщик сертифицировал чип для работы с поддержкой HT. Неисправность чипа должна быть покрыта гарантией, в отличие от разгона. - Brad Patton
Да, я раскалывал волосы. - Scott
Переключение между потоками чрезвычайно дорого (необходимо восстановить полное состояние регистра, очистить весь конвейер и т. д.) в отношении отдельных инструкций, поэтому я считаю, что ваше объяснение трудно поверить. Мое понимание гиперпоточности заключается в том, что это умный способ разрешить второму потоку использовать неиспользуемые логические единицы ядра (бездействующие арифметические единицы и т. Д.). Кто-нибудь знает, чье понимание правильное? - BlueRaja - Danny Pflughoeft


Hyperthreading (HT) - это больше потоков. Разгон - это большая скорость процессора.

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

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


3
2018-05-08 13:51



«Одно приложение работает» совершенно неверно. Игры (как правило) высоко многопоточность, и имейте в виду этот поток! = процесс. - Bakuriu
@Bakuriu, за исключением графического кода, который запускается на графическом процессоре, а не в процессоре, все еще довольно легко нарезается резьбой. Вот почему руководства по игровым системам среднего ценового диапазона обычно рекомендуют покупать четырехъядерный процессор без поддержки HT i $ 200 вместо $ 300 i7 с поддержкой HT. Возможно, что процессор 8core в PS4 и XBox 720 (только слухи) может изменить ситуацию через несколько лет. - Dan Neely
@Bakuriu: Очень мало игр для ПК многопоточные. Некоторые игры (в частности, Source Engine) будут использовать второй поток для задач рендеринга, но даже это не является обычным явлением. - BlueRaja - Danny Pflughoeft
@BlueRaja Я считаю, что в любой многопользовательской игре будет, по крайней мере, нить, прослушивающая и общающаяся с сервером / другими игроками, и поток для взаимодействия пользователя (+ в конечном итоге рендеринг задач или запуск ИИ противников). Кроме того, сервер для таких игр, вероятно, использует один поток для каждого клиента. - Bakuriu
Да, я должен был упомянуть об этом. Все сетевое программное обеспечение будет иметь поток прослушивания, но мы обычно игнорируем это, поскольку он проводит столько времени бездействия, вы увидите практически нулевое улучшение производительности, когда оно работает на втором ядре. - BlueRaja - Danny Pflughoeft