Автор Тема: Гипертрейдинг процессоров - обман?  (Прочитано 17138 раз)

0 Пользователей и 2 Гостей просматривают эту тему.

Оффлайн Пользователь.

  • Местный
  • *****
  • Автор темы
  • Сообщений: 4639
Гипертрейдинг процессоров - обман?
« : Сентябрь 05, 2017, 00:41:03 »
Заметил на своем нетбуке, что гипертрейдинг почти не прибавляет производительности.

На нетбуке процессор Intel atom N450, одноядерный, с гипертейдингом, частота 1,6 гигагерц.
На стационарнике процессор AMD Athlon 64 3200+, одно ядро, без гипертрейдинга, 2 гигагерц.

Включаю видео mp4, внутри h264, aac, изображение 720p.

На intel atom n450 получаю 100% нагрузку. При аппаратном ускорении уменьшается до 80%.

На AMD Athlon 64 3200+  получаю нагрузку 45%. При аппаратном ускорении 15-25%, в зависимости от плеера. Дискретная видеокарта Nvidia очень сильно разгружает процессор при аппаратном ускорении.

Но меня удивило, что без аппаратного ускорения на одном 100%, на другом 45%. А вроде как за счет гипертрейдинга атом должен выдавать примерно такие же показания как амд, но на практике гипертрейдинг почти не влияет на производительность процессора.


Теперь буду знать, что гипертрейдинг - филькина грамота, развод маркетологов, можно не обращать внимание на его наличие.

Оффлайн RoDoN

  • Постоялец
  • ***
  • Сообщений: 242
Re: Гипертрейдинг процессоров - обман?
« Ответ #1 : Сентябрь 05, 2017, 09:27:01 »
Сравнивать атом и AMD некорректно.
Чтобы реально оценить технологию HT надо для сравнения взять напр., интеловский одноядерный пень 4-й 3 ГГц и такой же пень, но с технологией HT, который система кое-где уже воспринимает, как двухядерный, хотя реально он двухпоточный. Должен сказать, что когда-то так менял процы на ПК с 478 соккетом и разница в работе была видна невооруженным глазом.
Lenovo G500 (i3-3110M, 8 Гб, Intel + Radeon HD 8570)
Runtu 18.04->20.04->22.04 x64 XFCE

Оффлайн Пользователь.

  • Местный
  • *****
  • Автор темы
  • Сообщений: 4639
Re: Гипертрейдинг процессоров - обман?
« Ответ #2 : Сентябрь 05, 2017, 12:28:34 »
Гипертрейдинг как шина в видеокарте, увеличивает пропускную способность к процессору, но не увеличивает производительность процессора.
Вот высокая частота увеличивает производительность во всех программах, а многоядерность увеличивает только где есть поддержка многоядерности.


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


« Последнее редактирование: Сентябрь 05, 2017, 15:12:01 от Пользователь. »

Оффлайн ek-nfn

  • Местный
  • *****
  • Сообщений: 1422
Re: Гипертрейдинг процессоров - обман?
« Ответ #3 : Сентябрь 05, 2017, 15:08:55 »
в  видеокарте же десятки ядер, там реальная многопоточность. А тут одно ядро, значит в фиксированный момент времени не может обрабатываться более одного процесса.
Я так понимаю эту технологию - при торможении какого-то процесса (не важно по какой причине, ошибка в коде или ожидание прерывания, или еще что) открывается второй обходной канал, куда подаются ожидающие своей очереди процессы. При этом не освобождаются процессорные регистры, занятые тормознувшим процессом. То бишь, не тратится время на ожидание окончания задержек в текущем процессе и не гоняются его данные из регистров в ОЗУ и обратно при восстановлении. В некоторых программах должно чуток ускорить работу.
А само ядро решает проблему мультизадачности квантованием времени, то бишь, поочередным переключением с процесса на процесс, что создает иллюзию параллельной работы нескольких процессов. Но реально в каждый момент времени ядро работает лишь с одним процессом.  Ускорить это можно лишь создавая реальную многопоточность, вводя дополнительные ядра, как это делается в видеокартах Nvidia и ATI. Например, в программах, где вычислительную часть можно передавать в видеокарту, моя древняя видеокарта всего лишь с сотней ядер показывает скорость обработки в несколько раз выше, чем 4-х ядерник на частоте 3 ггц, хотя работает и с гораздо меньшим объемом озу на борту и в три раза меньшей тактовой частотой. Обходит основной процессор за счет количества одновременно обрабатываемых  потоков. (наиболее популярно это решение в майнинге криптовалют и при взломах паролей).
« Последнее редактирование: Сентябрь 05, 2017, 15:43:30 от ek-nfn »
Devuan ASCII x32..x64

Оффлайн Пользователь.

  • Местный
  • *****
  • Автор темы
  • Сообщений: 4639
Re: Гипертрейдинг процессоров - обман?
« Ответ #4 : Сентябрь 05, 2017, 15:12:14 »

На компьютере с intel atom поменял видео плеер (с gnome-mplayer на smplayer) и браузер (c firefox на chromium).
С ними нагрузка на процессор уменьшилась, а htop показывает равномерное распределение нагрузки между потоками.

Но всё равно мой стационарник работает намного шустрее, хотя очень древний.

Оффлайн ek-nfn

  • Местный
  • *****
  • Сообщений: 1422
Re: Гипертрейдинг процессоров - обман?
« Ответ #5 : Сентябрь 05, 2017, 15:24:48 »
давно заметил такое, что firefox экономит ОЗУ за счет более интенсивной работы процессора, хромиумы же ровно наоборот. Тут уж кому что выгодней нагружать. Лично мне выгодней нагружать процессор, так как в нем мощи выше крыши для данного ящика и моих задач, а памяти всего лишь 4 гб. В результате память всегда на пределе, а процессор показывает 1-10% загрузки (кроме случаев конвертации видео и графики)
Devuan ASCII x32..x64

Оффлайн Пользователь.

  • Местный
  • *****
  • Автор темы
  • Сообщений: 4639
Re: Гипертрейдинг процессоров - обман?
« Ответ #6 : Сентябрь 06, 2017, 12:42:30 »
Да, если бы в центральном процессоре было ядер как у видеокарты, то можно было бы меньше обращать внимание на частоту, а пока их мало, да и не все программы их могут задействовать, то приходится обращать внимание на частоту (количество операций в секунду). Но слишком высокая частота тоже плохо, остужать замучаешься, поэтому в процессорах она изменяется динамически.


Оффлайн ek-nfn

  • Местный
  • *****
  • Сообщений: 1422
Re: Гипертрейдинг процессоров - обман?
« Ответ #7 : Сентябрь 06, 2017, 14:00:22 »
В видеокартах ядра со слабой функциональностью, рассчитаны на простейшие операции . Если сравнивать по возможностям ядро нормального процессора и чипа видеокарты, то второй сильно уступает первому. Но в простейших задачах с перебором данных, обработкой простейщими арифметическими или логическими операцими массивов данных, сортировкой и т.д. они позволяют распараллеливать операции на все ядра, а в современной видеокарте это сотни ядер и даже тыщи. Чем и достигается многократное увеличение скорости обработки данных. Для некоторого типа задач это очень и очень эффективно. К тому же современные материнские платы позволяют ставить и две видеокарты, возможности которых объединяются при решении этих задач. Скажем, подбор пароля длительность 2 месяца на 4-х ядернике сокращается до часа на паре видеокарт.
Программы (типа автокадов и с обработкой 2D-3D), которые используют технологии CUDA ( или Open CL для карт ATI ) позволяют передавать обработку данных в графический процессор видеокарты. При этом одно из ядер основного процессора выделяется для обслуживания видеокарты. Машину, конечно, все равно подвешивает в таком случае, но в некоторых программах можно менять уровень приоритета владения ресурсами. Производительность обработки при этом падает ( в зависимости от уровня выданного приоритета), но появляется возможность продолжения комфортной работы на компе с запущенной обработкой через видеокарту.
Devuan ASCII x32..x64

Оффлайн Пользователь.

  • Местный
  • *****
  • Автор темы
  • Сообщений: 4639
Re: Гипертрейдинг процессоров - обман?
« Ответ #8 : Сентябрь 07, 2017, 01:38:40 »
Хочу уточнить про intel atom n450, в спецификации не указано аппаратное ускорение, аппаратного декодера скорее всего там нет.
Значит нагрузка на процессор скакала 80-100% в зависимости от динамики сцен, это на видео 720p.
Моему нетбуку по силе только 480p.

А стационарник тянет 720p, с аппаратным декодером дискретной видеокарты тем более.

Оффлайн gvitaly

  • Местный
  • *****
  • Сообщений: 516
Re: Гипертрейдинг процессоров - обман?
« Ответ #9 : Сентябрь 07, 2017, 11:39:15 »
В то время на нетбуках с intel atom n450 был какой-нибудь intel GMA, который h264 аппаратно не декодировал. А вот mpeg2 уже мог. https://geektimes.ru/post/128134/
И не сравнивайте атом и атлон. Это разные весовые категории. Во втором, помимо частоты, даже кэш вроде в два раза больше. Это заметно влияет на производительность.
Гипертрейдинг - это как бы второй ядро, но урезанное. Т.е. добавили не все блоки.
Собственно, не все приложения поддерживают НТ, да и многопоточность в общем.

Оффлайн Пользователь.

  • Местный
  • *****
  • Автор темы
  • Сообщений: 4639
Re: Гипертрейдинг процессоров - обман?
« Ответ #10 : Сентябрь 08, 2017, 01:09:48 »
Размер кэша у них одинаковый.

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



Оффлайн ek-nfn

  • Местный
  • *****
  • Сообщений: 1422
Re: Гипертрейдинг процессоров - обман?
« Ответ #11 : Сентябрь 08, 2017, 11:36:19 »
Я раньше тоже по наивности думал, что одноядерный процессор с гипертрейдингом почти как двухъядерник.
А на практике совсем не так получилось, одноядерный процессор с гипертрейдингом по производительности как одноядерник.

Так если там одно ядро, то ускорение идет не за счет распараллеливания задач, а за счет чего-то другого. А другое это лишь одно - повышение эффективности работы ядра за счет снижения времени его простоев. Что требует изменение алгоритма обработки очереди процессов и скорости движения процессов в этой очереди. То бишь, притормозивший процесс просто откладывается в сторону, но без выгрузки вектора прерывания и оперативных данных из регистров CPU в ОЗУ  (работа с внешним ОЗУ медленнее работы с памятью (регистрами) внутри кристалла).
Для этого ввели блок дополнительных регистров данных и вектора прерывания (для второго процесса).
Второй блок регистров позволяет запускать второй процесс без выгрузки в память данных тормознувшего первого, чтобы не терять на этом время. Второй вектор прерываний позволяет работать второму процессу без потери контроля за состоянием тормознувшего первого, с целью немедленного возврата к нему.

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

Двухядерник же дает возможность параллельной работы сразу с двумя процессами, все зависит от того, насколько эффективно программа способна это использовать. Если же не умеет, то в linux есть возможность запускать такой процесс для каждого ядра.
« Последнее редактирование: Сентябрь 08, 2017, 11:48:30 от ek-nfn »
Devuan ASCII x32..x64

Оффлайн Пользователь.

  • Местный
  • *****
  • Автор темы
  • Сообщений: 4639
Re: Гипертрейдинг процессоров - обман?
« Ответ #12 : Сентябрь 08, 2017, 14:57:21 »
Я уже читал описание гипертрейдинга на разных сайтах.

------------------


По веб серфингу атом тоже медленнее моего атлона.

На нетбуке с атомом:
Chromium лучше использует гипертрейдинг, в диспетчере процессов видно как нагружается то один, то второй поток.
Firefox часто загружает один поток на 100%, вплоть до зависания, на второй поток нагрузка возникает только когда скачиваются не ресурсоемкие страницы.

----------------

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

Оффлайн ek-nfn

  • Местный
  • *****
  • Сообщений: 1422
Re: Гипертрейдинг процессоров - обман?
« Ответ #13 : Сентябрь 08, 2017, 16:17:52 »
У кого многоядерные процессоры, проверьте пожалуйста как работает хромиум, при загрузке одной страницы нагружаются несколько ядер, или одно ядро.
SlimJet (Chromium 59) загрузка примерно одинаковая всех 4-х ядер. Иногда одно-два ядра взбрыкиваются над остальными с резким отрывом по загрузке (в 3-4 раза).

У firefox c отключенной многопоточностью (esr 52) загрузка также всех 4-х ядер но с очень большой неравномерностью, при этом загрузка одного ядра резко больше остальных. Причем эта нагрузка не фиксируется на одном  ядре, а перескакивает с одного на другое в процессе загрузки одной страницы.
Devuan ASCII x32..x64

Оффлайн Пользователь.

  • Местный
  • *****
  • Автор темы
  • Сообщений: 4639
Re: Гипертрейдинг процессоров - обман?
« Ответ #14 : Сентябрь 09, 2017, 01:44:01 »
Значит используются все ядра, но равномерность распределения нагрузки между ядрами зависит от поддержки программой многопоточности, то есть от умения дробить задачи на части.