Hyper-Threading – а был ли смысл?

В декабре 2013 года (по сути перед обвалом гривны) сменил платформу – с Celeron E3200 на i3 4330. В сторону процессоров AMD душа не легла, но даже из Intel выбор был достаточно широк и неоднозначен, чтобы подобрать ту или иную модель. Во-первых, платформа – учитывая небольшую разницу в цене между бюджетными материнскими платами выбор пал в сторону 1150 с чипсетом H81. Во-вторых, сам процессор – рассматривать Celeron`ы и Pentium`ы особого смысла не было (тогда еще не было 3258-го пня). Остановился на модели i3 4330. Разумеется, i3 дороже чем пень, но имеет ряд преимуществ: Hyper-Threading, 4 МБ кэш-памяти, набор инструкций чуть шире, память 1600 МГц, графика HD4600, да и частота ядер чуть выше. Вместе с платой и процессором была куплена планка памяти DDR3-1600 4ГБ, позже была добавлена такая же. На процессор поставил Zalman 10X Optima в пассиве. В целом остался более чем доволен собранной конфигурацией.<br/> Еще при выборе процессора пришлось изучать плюсы и минусы гиперпоточности. Проработав некоторое количество ресурсов понял, что Hyper-Threading местами дает хороший буст, а местами ровным счетом ничего, или того хуже – «съедает» производительность.<br/> И вот возник интерес о том, что по сути дает эта гиперпоточность, ведь на сегодняшний день всё больше появляется приложений и игр, которые охотно используют много ядер. Просторы интернета наполнены различными тестами, в которых демонстрируют возможности Hyper-Threading в современных играх. Всё бы ничего, но так сложилось, что в последнее время я не особо часто/много играю в «такие» игры, а в основном либо WoT либо моды сталкера (правда сейчас решил поиграть в Dying Light, но доиграю ли?). Таким образом, смысл использования многоядерного/поточного процессора сходит на нет, тот же Pentium хорошо бы справился с такими полуторапоточными играми.<br/> С задротством всё понятно, а что же с приложениями? Дальше речь пойдет о том, что дает гиперпоточность в повседневном использовании ПК. Для реализации задумки были выполнены некоторые тесты, причем было решено не использовать бенчмарки, а тестировать «живые» программы с которыми приходится сталкиваться в той или иной мере.<br/> Тестирование выполнялось следующим образом:<br/> — подготовленный набор программ и режимов тестировался путем замера времени выполнения задачи;<br/> — тестирование выполнялось для 4 режимов работы процессора: 1C, 1C+HT, 2C, 2C+HT;<br/> — режимы работы процессора устанавливались в BIOS;<br/> — тестирование выполнялось минимум 2 раза для каждого режима работы CPU, если разность между результатами не превышает 1%, принималось среднее значение, в противном случае – дополнительно выполнялись 3 прогона и принималось среднее значение;<br/> — после каждого прогона теста выполнялась перезагрузка системы;<br/> — Windows, программы и файлы, с которыми работали программы, находились на SSD;<br/> — во избежание конфликтных ситуаций с читателями («а вот у меня программа А выполняет эту задачу за Х времени, а у вас за Y»), а также для удобства просмотра и сравнения, результаты приведены не в абсолютных значения времени, а относительных – за 100% принимается время выполнения задачи в режиме 1С, а для других режимов относительно 1С (т.е. чем меньше, тем лучше).<br/> Итак, поехали)<br/> Первое, с чем сталкивается любой пользователь ПК – его старт. Ниже приведены тесты запуска Windows 10 Pro 10240 x64. За начало отсчета принимается появление логотипа, за окончание – появление рабочего стола. Признаюсь, этот тест несмотря на простоту оказался непростым. Windows умудрялась стартовать то за 2,5 с то за 12 с, причем разброс хаотичный. Ох уж эта Win10. Пришлось выполнить не по 5, а по 10 прогонов:<br/> <img src="//st.overclockers.ru/legacy/v3/02/23/03/2015/08/30/0u63e6f544-41eeff83-12fedc5a.jpg" class="image-center" /><br/> Как видим, ускоряет запуск Win не только увеличение физических ядер, но и Hyper-Threading. Не плохое начало.<br/> Тут же, с логической точки зрения, необходимо приложить тесты завершения работы. Здесь никаких проблем с тестированием не возникло:<br/> <img src="//st.overclockers.ru/legacy/v3/02/23/03/2015/08/30/0u610d61fa-1077be87-2969ec08.jpg" class="image-center" /><br/> Прирост производительности хоть и наблюдается от появления дополнительных потоков, исход выключения Win практически не меняется.<br/> Проверим установку 3DMark 13 и игр – S.T.A.L.K.E.R. — Тень Чернобыля и Dying Light:<br/> <img src="//st.overclockers.ru/legacy/v3/02/23/03/2015/08/30/0u37c2254d-5e7e3d59-57b126af.jpg" class="image-center" /><br/> Установка 3DMark мало зависит от наличия дополнительных потоков.<br/> <img src="//st.overclockers.ru/legacy/v3/02/23/03/2015/08/30/0u4d005d89-3a43782b-365c0b80.jpg" class="image-center" /><br/> Та же картина и с установкой оригинальной игры Сталкер.<br/> <img src="//st.overclockers.ru/legacy/v3/02/23/03/2015/08/30/0u5783ba02-cfa79ca0-25a3ec76.jpg" class="image-center" /><br/> А вот при установке пиратской (но мы никому об этом не скажем) Dying Light стал активно использоваться многопоток. Результат для 2С и 2С+HT возможно был бы еще лучше, но судя по всему узким местом стал жесткий диск – процессор в этих режимах лишь изредка был нагружен на 100%, а вот диск большинство времени на 100%. <br/> Из любопытства попробовал установить эту игру с HDD на тот же HDD и немного удивился – при четырех доступных потоках установка заняла на 90% больше времени чем режим 1 ядро + SSD.<br/> Дополним тестами удаления с помощью программы Uninstall Tool 3.2 (деинсталляция, поиск и удаление остатков). Здесь приведу только одну диаграмму, т.к. время, необходимое на удаление практически одинаковое и в основном зависит от скорости сканирования реестра:<br/> <img src="//st.overclockers.ru/legacy/v3/02/23/03/2015/08/30/0u37ea6b2c-6b39c30c-6077f508.jpg" class="image-center" /><br/> А вот и первый ляп гиперпоточности – если 2 ядра дают буст на 5,6%, то 1 ядро с HT наоборот «тормозит» на 11,5%.<br/> Идем дальше – распознавание текста в FineReader 12. И снова казус – в режиме 4 потоков программа отказывается работать со всеми потоками и использует лишь 3 из четырех. Я бы смирился с этим если бы раньше не видел полноценную работу этой программы. То ли это всё Win10, то ли где-то в настройках что-то не так, не могу сказать. Приведу как есть, но стоит учесть, что в режиме 2С+НТ задействованы 3 потока:<br/> <img src="//st.overclockers.ru/legacy/v3/02/23/03/2015/08/30/0u6b853db3-28ce229c-69a48bbf.jpg" class="image-center" /><br/> Наблюдаем хорошую масштабируемость для физических ядер и неплохой буст для НТ. Но опять «но»: 1С+НТ по отношению к 1С в 100/80,6 = 1,24 раза шустрее, а 2С+НТ (но по факту 3 потока) по отношению к 2С в 56,4/45 = 1,25 раз. Интересный момент, но пока не выяснил почему так.<br/> Далее запуск Word-документа. Для данного теста выполнялись 2 замера – от двойного клика по документу до появления первой страницы и от двойного клика по документу до загрузки последней страницы документа:<br/> <img src="//st.overclockers.ru/legacy/v3/02/23/03/2015/08/30/0u5644dad1-69e00570-4116c8ae.jpg" class="image-center" /><br/> В целом открытие первой страницы Word-документа проходит достаточно быстро и на одном ядре, но дополнительный поток в любом виде делает этот процесс еще более комфортным. А вот дальнейшее увеличение потоков не приводит к каким-либо заметным сдвигам, достаточно двух ядер.<br/> <img src="//st.overclockers.ru/legacy/v3/02/23/03/2015/08/30/0u137c679d-5ea1bb3e-65b011c1.jpg" class="image-center" /><br/> Примерно такая же ситуация и в случае с открытием всех страниц в документе, но менее выраженно.<br/> Еще одним тестом было решено сделать компиляцию С++ проекта в Visual Studio 13:<br/> <img src="//st.overclockers.ru/legacy/v3/02/23/03/2015/08/30/0u72480932-566deecc-10493615.jpg" class="image-center" /><br/> Наблюдаем аналогичную картину с открытием Word-документа – достаточно второго потока.<br/> Сохранение cdw-чертежа в jpg-изображение (Компас 16):<br/> <img src="//st.overclockers.ru/legacy/v3/02/23/03/2015/08/30/0u4394aa05-38b755cd-36e34593.jpg" class="image-center" /><br/> Потоки/ядра практически ничего не дают, однопоточный процесс.<br/> Перейдем к мультимедиа. Начнем с конвертирования аудио. Тесты выполнялись в двух программах: AIMP3 и Movavi Video Converter 14. Для большей объективности замеры выполнялись для 1 и 4 файлов:<br/> <img src="//st.overclockers.ru/legacy/v3/02/23/03/2015/08/30/0u77021a0b-1d75dce2-4f3fa041.jpg" class="image-center" /><br/> Здесь за 100% было взято время конвертирования одной программы на 1 ядре и относительно него результаты второй программы. Интересно получается – в режимах 1С/1С+НТ лучше использовать AIMP3, а в 2С/2С+НТ – MVC14. И если для AIMP3 разница между режимами минимальна (однопоток), то для MVC14 второе физическое ядро дает 20% буст. Интересно посмотреть на конвертирование 4 файлов:<br/> <img src="//st.overclockers.ru/legacy/v3/02/23/03/2015/08/30/0u1fb33d8b-1acb0bf3-4211455f.jpg" class="image-center" /><br/> Стоит сразу отметить, что механизм конвертирования у этих программ разный, а именно: AIMP3 одновременно конвертирует не более 1 файла в одном потоке. MVC14 же «по-еврейски» — запихивает все файлы параллельно в столько потоков, сколько есть (например, 5 файлов в 4 или 2 потока). И от этого MVC сильно страдает на одноядерных системах – 37% проигрыш AIMP`у. А если вдруг пользователь решит конвертировать 20 файлов? Кстати, параллельное конвертирование четырех аудиофайлов уже не может полноценно загрузить процессор в случае использования HDD (Hitachi 320ГБ, 7200 об/мин).<br/> Опуская вышесказанное всё же наблюдаем неплохую масштабируемость для физических и виртуальных ядер.<br/> Теперь работа с графическими файлами – конвертирование и обработка изображений в программе ACDSee Pro 7. Конвертирование bmp в jpg (пакетная обработка):<br/> <img src="//st.overclockers.ru/legacy/v3/02/23/03/2015/08/30/0u374cd45a-7f293a91-79455bef.jpg" class="image-center" /><br/> Однопоточный процесс, а были надежды на многопоток (как никак, 100 файлов). Видимо, конвертер надо искать другой. Теперь по сути: второе физическое ядро немного дает буст, а вот виртуальные потоки незначительно ухудшают ситуацию. Еще один ляп гиперпоточности.<br/> Обработка изображений (удаление шума, пакетная обработка):<br/> <img src="//st.overclockers.ru/legacy/v3/02/23/03/2015/08/30/0u6a031177-1ecd884c-7170f2b3.jpg" class="image-center" /><br/> Отличная масштабируемость для физических ядер и хорошая прибавка от НТ.<br/> Что касается видеофайлов – здесь несколько больше тестов. Первым делом всё тоже конвертирование:<br/> <img src="//st.overclockers.ru/legacy/v3/02/23/03/2015/08/30/0u90c92810-36962765-450167d0.jpg" class="image-center" /><br/> Интересный момент – гиперпоточность самую малость замедляет одно ядро, второе физическое ядро немного увеличивает производительность, а режим 2С+НТ дает ощутимую прибавку. <br/> А теперь тот же файл, но количестве 4 шт.:<br/> <img src="//st.overclockers.ru/legacy/v3/02/23/03/2015/08/30/0u4fa86b3c-58401d35-4a67c060.jpg" class="image-center" /><br/> Хорошая масштабируемость ядер, да и от виртуальных ядер тоже есть толк. Это был MJPEG-кодек, смотрим на H.264:<br/> <img src="//st.overclockers.ru/legacy/v3/02/23/03/2015/08/30/0uf0e3fd80-6df2712b-10aa4e70.jpg" class="image-center" /><br/> Отличная масштабируемость ядер, хорошая прибавка от НТ для одного ядра, а вот для двух ядер гиперпоточность принесла меньший буст. Результаты тестов для четырех файлов не привожу, т.к. даже используя 4 потока файлы конвертируется поочередно.<br/> Конвертирование MKV в MP4 (H.264) имеет вид предыдущего теста, а вот MKV в AVI (MJPEG) несколько отличается от режима AVI без компрессии в AVI (MJPEG):<br/> <img src="//st.overclockers.ru/legacy/v3/02/23/03/2015/08/30/0u66bdb82f-3967d2e2-68e7803d.jpg" class="image-center" /><br/> <img src="//st.overclockers.ru/legacy/v3/02/23/03/2015/08/30/0u572d080d-5031a638-ae05d260.jpg" class="image-center" /><br/> Как видим, в этом случае программа использует многопоток не только для конвертирования 4 файлов, но и для 1 файла, хоть и в меньшей степени, но уж лучше так, чем совсем никак.<br/> Обратимся к другой программе, работающей с видеофайлами – Nero Vision – простенькая программа для быстрого монтажа видео:<br/> <img src="//st.overclockers.ru/legacy/v3/02/23/03/2015/08/30/0u1e583cbb-27274cc2-6df8e3a1.jpg" class="image-center" /><br/> Хороший буст от появления второго ядра/потока, но режим 2С+НТ уже мало что дает, здесь достаточно двух ядер.<br/> <img src="//st.overclockers.ru/legacy/v3/02/23/03/2015/08/30/0u70e06e18-7978875f-94214680.jpg" class="image-center" /><br/> А H.264 охотно использует все 4 потока.<br/> С мультимедиа закончили, осталось несколько различных тестов, один из них – создание RAR-архива:<br/> <img src="//st.overclockers.ru/legacy/v3/02/23/03/2015/08/30/0u7796b000-362ebf82-95214c20.jpg" class="image-center" /><br/> Масштабируемость ядер неплохая, архиватор использует 4 потока, хотя к НТ относится как-то вяло, но «на безрыбье и рак рыба».<br/> Просканируем папку, из которой создавали архив, встроенным антивирусом:<br/> <img src="//st.overclockers.ru/legacy/v3/02/23/03/2015/08/30/0u22617fc1-19cbfb92-5d244f99.jpg" class="image-center" /><br/> Ситуация напомнила конвертирование AVI без компрессии в AVI (MJPEG), Movavi Video Converter 14, 1 файл, цитирую: «гиперпоточность самую малость замедляет одно ядро, второе физическое ядро немного увеличивает производительность, а режим 2С+НТ дает ощутимую прибавку».<br/> Теперь та же папка, но в архиве, что до этого тестировали:<br/> <img src="//st.overclockers.ru/legacy/v3/02/23/03/2015/08/30/0u3fbdc3d0-3b218e56-2fd35100.jpg" class="image-center" /><br/> Типичный однопоток.<br/> Сканирование реестра в AusLogics BoostSpeed 5:<br/> <img src="//st.overclockers.ru/legacy/v3/02/23/03/2015/08/30/0u3d8b2abd-2c6dc2cc-6ee31b9b.jpg" class="image-center" /><br/> НТ немного ускорил одно ядро, но замедлил два ядра. В целом двухъядерного процессора достаточно.<br/> Ну и напоследок удалим папку с 13824 файлами по 300 байт:<br/> <img src="//st.overclockers.ru/legacy/v3/02/23/03/2015/08/30/0u32db4067-4ecdc681-42f262f0.jpg" class="image-center" /><br/> Аналогичная предыдущему тесту ситуация.<br/> <br/> Заключение <br/> Стоит отметить, что набор программ для тестирования подбирался согласно собственным потребностям. Некоторые программы изначально были исключены, т.к. представляют собой явный однопоток (Gwyddion, Вейвлет-преобразование в MatLab и т.п.). Разумеется, с учетом таких программ «средняя температура по палате» была бы ниже, но в таких случаях и от физических ядер проку мало. <br/> Помимо того, что было сказано в начале («…Hyper-Threading местами дает хороший буст, а местами ровным счетом ничего, или того хуже – «съедает» производительность…»), стало ясно, что эффект от НТ сильно зависит не только от используемой программы, но и от конкретной задачи или условий ее выполнения. Возможно некоторым программам стоит поискать замену, но даже с таким положением дел от НТ всё же больше толку чем вреда, по крайней мере для i3.<br/> В целом поставленную задачу выполнил, собственное любопытство удовлетворил, хоть и частично (некоторые моменты/режимы еще стоит проверить), но могу сказать, что смысл покупки процессора с Hyper-Threading таки был.
31 августа 2015, понедельник 08:55
black_ru_ua для раздела Блоги
В декабре 2013 года (по сути перед обвалом гривны) сменил платформу – с Celeron E3200 на i3 4330. В сторону процессоров AMD душа не легла, но даже из Intel выбор был достаточно широк и неоднозначен, чтобы подобрать ту или иную модель. Во-первых, платформа – учитывая небольшую разницу в цене между бюджетными материнскими платами выбор пал в сторону 1150 с чипсетом H81. Во-вторых, сам процессор – рассматривать Celeron`ы и Pentium`ы особого смысла не было (тогда еще не было 3258-го пня). Остановился на модели i3 4330. Разумеется, i3 дороже чем пень, но имеет ряд преимуществ: Hyper-Threading, 4 МБ кэш-памяти, набор инструкций чуть шире, память 1600 МГц, графика HD4600, да и частота ядер чуть выше. Вместе с платой и процессором была куплена планка памяти DDR3-1600 4ГБ, позже была добавлена такая же. На процессор поставил Zalman 10X Optima в пассиве. В целом остался более чем доволен собранной конфигурацией.
Еще при выборе процессора пришлось изучать плюсы и минусы гиперпоточности. Проработав некоторое количество ресурсов понял, что Hyper-Threading местами дает хороший буст, а местами ровным счетом ничего, или того хуже – «съедает» производительность.
И вот возник интерес о том, что по сути дает эта гиперпоточность, ведь на сегодняшний день всё больше появляется приложений и игр, которые охотно используют много ядер. Просторы интернета наполнены различными тестами, в которых демонстрируют возможности Hyper-Threading в современных играх. Всё бы ничего, но так сложилось, что в последнее время я не особо часто/много играю в «такие» игры, а в основном либо WoT либо моды сталкера (правда сейчас решил поиграть в Dying Light, но доиграю ли?). Таким образом, смысл использования многоядерного/поточного процессора сходит на нет, тот же Pentium хорошо бы справился с такими полуторапоточными играми.
С задротством всё понятно, а что же с приложениями? Дальше речь пойдет о том, что дает гиперпоточность в повседневном использовании ПК. Для реализации задумки были выполнены некоторые тесты, причем было решено не использовать бенчмарки, а тестировать «живые» программы с которыми приходится сталкиваться в той или иной мере.
Тестирование выполнялось следующим образом:
— подготовленный набор программ и режимов тестировался путем замера времени выполнения задачи;
— тестирование выполнялось для 4 режимов работы процессора: 1C, 1C+HT, 2C, 2C+HT;
— режимы работы процессора устанавливались в BIOS;
— тестирование выполнялось минимум 2 раза для каждого режима работы CPU, если разность между результатами не превышает 1%, принималось среднее значение, в противном случае – дополнительно выполнялись 3 прогона и принималось среднее значение;
— после каждого прогона теста выполнялась перезагрузка системы;
— Windows, программы и файлы, с которыми работали программы, находились на SSD;
— во избежание конфликтных ситуаций с читателями («а вот у меня программа А выполняет эту задачу за Х времени, а у вас за Y»), а также для удобства просмотра и сравнения, результаты приведены не в абсолютных значения времени, а относительных – за 100% принимается время выполнения задачи в режиме 1С, а для других режимов относительно 1С (т.е. чем меньше, тем лучше).
Итак, поехали)
Первое, с чем сталкивается любой пользователь ПК – его старт. Ниже приведены тесты запуска Windows 10 Pro 10240 x64. За начало отсчета принимается появление логотипа, за окончание – появление рабочего стола. Признаюсь, этот тест несмотря на простоту оказался непростым. Windows умудрялась стартовать то за 2,5 с то за 12 с, причем разброс хаотичный. Ох уж эта Win10. Пришлось выполнить не по 5, а по 10 прогонов:

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

Прирост производительности хоть и наблюдается от появления дополнительных потоков, исход выключения Win практически не меняется.
Проверим установку 3DMark 13 и игр – S.T.A.L.K.E.R. — Тень Чернобыля и Dying Light:

Установка 3DMark мало зависит от наличия дополнительных потоков.

Та же картина и с установкой оригинальной игры Сталкер.

А вот при установке пиратской (но мы никому об этом не скажем) Dying Light стал активно использоваться многопоток. Результат для 2С и 2С+HT возможно был бы еще лучше, но судя по всему узким местом стал жесткий диск – процессор в этих режимах лишь изредка был нагружен на 100%, а вот диск большинство времени на 100%.
Из любопытства попробовал установить эту игру с HDD на тот же HDD и немного удивился – при четырех доступных потоках установка заняла на 90% больше времени чем режим 1 ядро + SSD.
Дополним тестами удаления с помощью программы Uninstall Tool 3.2 (деинсталляция, поиск и удаление остатков). Здесь приведу только одну диаграмму, т.к. время, необходимое на удаление практически одинаковое и в основном зависит от скорости сканирования реестра:

А вот и первый ляп гиперпоточности – если 2 ядра дают буст на 5,6%, то 1 ядро с HT наоборот «тормозит» на 11,5%.
Идем дальше – распознавание текста в FineReader 12. И снова казус – в режиме 4 потоков программа отказывается работать со всеми потоками и использует лишь 3 из четырех. Я бы смирился с этим если бы раньше не видел полноценную работу этой программы. То ли это всё Win10, то ли где-то в настройках что-то не так, не могу сказать. Приведу как есть, но стоит учесть, что в режиме 2С+НТ задействованы 3 потока:

Наблюдаем хорошую масштабируемость для физических ядер и неплохой буст для НТ. Но опять «но»: 1С+НТ по отношению к 1С в 100/80,6 = 1,24 раза шустрее, а 2С+НТ (но по факту 3 потока) по отношению к 2С в 56,4/45 = 1,25 раз. Интересный момент, но пока не выяснил почему так.
Далее запуск Word-документа. Для данного теста выполнялись 2 замера – от двойного клика по документу до появления первой страницы и от двойного клика по документу до загрузки последней страницы документа:

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

Примерно такая же ситуация и в случае с открытием всех страниц в документе, но менее выраженно.
Еще одним тестом было решено сделать компиляцию С++ проекта в Visual Studio 13:

Наблюдаем аналогичную картину с открытием Word-документа – достаточно второго потока.
Сохранение cdw-чертежа в jpg-изображение (Компас 16):

Потоки/ядра практически ничего не дают, однопоточный процесс.
Перейдем к мультимедиа. Начнем с конвертирования аудио. Тесты выполнялись в двух программах: AIMP3 и Movavi Video Converter 14. Для большей объективности замеры выполнялись для 1 и 4 файлов:

Здесь за 100% было взято время конвертирования одной программы на 1 ядре и относительно него результаты второй программы. Интересно получается – в режимах 1С/1С+НТ лучше использовать AIMP3, а в 2С/2С+НТ – MVC14. И если для AIMP3 разница между режимами минимальна (однопоток), то для MVC14 второе физическое ядро дает 20% буст. Интересно посмотреть на конвертирование 4 файлов:

Стоит сразу отметить, что механизм конвертирования у этих программ разный, а именно: AIMP3 одновременно конвертирует не более 1 файла в одном потоке. MVC14 же «по-еврейски» — запихивает все файлы параллельно в столько потоков, сколько есть (например, 5 файлов в 4 или 2 потока). И от этого MVC сильно страдает на одноядерных системах – 37% проигрыш AIMP`у. А если вдруг пользователь решит конвертировать 20 файлов? Кстати, параллельное конвертирование четырех аудиофайлов уже не может полноценно загрузить процессор в случае использования HDD (Hitachi 320ГБ, 7200 об/мин).
Опуская вышесказанное всё же наблюдаем неплохую масштабируемость для физических и виртуальных ядер.
Теперь работа с графическими файлами – конвертирование и обработка изображений в программе ACDSee Pro 7. Конвертирование bmp в jpg (пакетная обработка):

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

Отличная масштабируемость для физических ядер и хорошая прибавка от НТ.
Что касается видеофайлов – здесь несколько больше тестов. Первым делом всё тоже конвертирование:

Интересный момент – гиперпоточность самую малость замедляет одно ядро, второе физическое ядро немного увеличивает производительность, а режим 2С+НТ дает ощутимую прибавку.
А теперь тот же файл, но количестве 4 шт.:

Хорошая масштабируемость ядер, да и от виртуальных ядер тоже есть толк. Это был MJPEG-кодек, смотрим на H.264:

Отличная масштабируемость ядер, хорошая прибавка от НТ для одного ядра, а вот для двух ядер гиперпоточность принесла меньший буст. Результаты тестов для четырех файлов не привожу, т.к. даже используя 4 потока файлы конвертируется поочередно.
Конвертирование MKV в MP4 (H.264) имеет вид предыдущего теста, а вот MKV в AVI (MJPEG) несколько отличается от режима AVI без компрессии в AVI (MJPEG):


Как видим, в этом случае программа использует многопоток не только для конвертирования 4 файлов, но и для 1 файла, хоть и в меньшей степени, но уж лучше так, чем совсем никак.
Обратимся к другой программе, работающей с видеофайлами – Nero Vision – простенькая программа для быстрого монтажа видео:

Хороший буст от появления второго ядра/потока, но режим 2С+НТ уже мало что дает, здесь достаточно двух ядер.

А H.264 охотно использует все 4 потока.
С мультимедиа закончили, осталось несколько различных тестов, один из них – создание RAR-архива:

Масштабируемость ядер неплохая, архиватор использует 4 потока, хотя к НТ относится как-то вяло, но «на безрыбье и рак рыба».
Просканируем папку, из которой создавали архив, встроенным антивирусом:

Ситуация напомнила конвертирование AVI без компрессии в AVI (MJPEG), Movavi Video Converter 14, 1 файл, цитирую: «гиперпоточность самую малость замедляет одно ядро, второе физическое ядро немного увеличивает производительность, а режим 2С+НТ дает ощутимую прибавку».
Теперь та же папка, но в архиве, что до этого тестировали:

Типичный однопоток.
Сканирование реестра в AusLogics BoostSpeed 5:

НТ немного ускорил одно ядро, но замедлил два ядра. В целом двухъядерного процессора достаточно.
Ну и напоследок удалим папку с 13824 файлами по 300 байт:

Аналогичная предыдущему тесту ситуация.

Заключение
Стоит отметить, что набор программ для тестирования подбирался согласно собственным потребностям. Некоторые программы изначально были исключены, т.к. представляют собой явный однопоток (Gwyddion, Вейвлет-преобразование в MatLab и т.п.). Разумеется, с учетом таких программ «средняя температура по палате» была бы ниже, но в таких случаях и от физических ядер проку мало.
Помимо того, что было сказано в начале («…Hyper-Threading местами дает хороший буст, а местами ровным счетом ничего, или того хуже – «съедает» производительность…»), стало ясно, что эффект от НТ сильно зависит не только от используемой программы, но и от конкретной задачи или условий ее выполнения. Возможно некоторым программам стоит поискать замену, но даже с таким положением дел от НТ всё же больше толку чем вреда, по крайней мере для i3.
В целом поставленную задачу выполнил, собственное любопытство удовлетворил, хоть и частично (некоторые моменты/режимы еще стоит проверить), но могу сказать, что смысл покупки процессора с Hyper-Threading таки был.