Комментарии 13
Тема интересна, поэтому всё прочитал… и ничего не понял. Что делает ваша программа? Это типа SMT профилировщика? Даются рекомендации по переупорядочиванию кода? Всю статью рассказывали про рабочего с гаечным ключом, записывающего числа (без отвёртки число не записать? %)), а самое важное не написали.
Предпоследний абзац вообще выглядит так, будто это программа для конечного пользователя, чтобы он сам оптимизировал выполнение любой многопоточной программы на своём компьютере, без перекомпиляции.
Предпоследний абзац вообще выглядит так, будто это программа для конечного пользователя, чтобы он сам оптимизировал выполнение любой многопоточной программы на своём компьютере, без перекомпиляции.
Спасибо за замечание, да, здесь вопрос контекста, по сути эта статья является продолжением моей предыдущей статьи про Windows Performance Station.
Почитал сайт. Название статьи неудачное.) Всё-таки это программа для конечного пользователя, который пользуется программами, в которых программисты «накосячили», а не для самих разработчиков.
Если она действительно даёт такой прирост, как на картинках (пусть хотя бы в некоторых играх), то весьма перспективный продукт именно для геймерской аудитории. Себе я такое не рискну ставить.)))
Если она действительно даёт такой прирост, как на картинках (пусть хотя бы в некоторых играх), то весьма перспективный продукт именно для геймерской аудитории. Себе я такое не рискну ставить.)))
Э… Кагбэ сравнивать smt-многопоточность имело смысл не с временнОй, а с многоядерностью. Тогда все её проблемы — как на ладони.
Тут я старался показать чем отличается временнАя многопоточность (которая понятна каждому) от SMT. Про многоядерность я тоже упомянул :)
Справедливости ради, стоит уточнить, что проблема распараллеливания конвейера появляется и у многоядерных процессоров без SMT, но у многоядерников не возникает момента простаивания процессора, когда на двоих рабочих одна отвёртка, т.к. в такой терминологии у каждого рабочего есть своя отвёртка и свой гаечный ключ.
Справедливости ради, стоит уточнить, что проблема распараллеливания конвейера появляется и у многоядерных процессоров без SMT, но у многоядерников не возникает момента простаивания процессора, когда на двоих рабочих одна отвёртка, т.к. в такой терминологии у каждого рабочего есть своя отвёртка и свой гаечный ключ.
мы объединили нейросеть и диспетчер задач
И именно поэтому нас весьма порадовало появление SMT в новых процессорах «AMD Ryzen».Я не придираюсь. Просто не понял «мы» и «нас» в статье — это про кого? Про SMT я в первый раз узнал из вашей статьи, за что вам спасибо. А про нейросеть в планировщике задач вообще было бы очень интерсно отдельно и в подробностях почитать.
Здорово. Нужно больше диспечеров задач для андроеда, например. Ну и не забудьте распарковать ваши ядра, если вы на AMD.
Для андройда, чтобы управлять задачами корректно, нужен либо рут, либо пересобирать прошивку с встраиванием такого диспетчера. Да и не особо он там и нужен т.к. используется вытесняющая многозадачность. Чаще проблемы с распределением ресурсов на андройде исходят от халтурной сборки ядра прошивки, без качественной отладки на конечном железе :)
По-моему не верно описано smt. Нет там двух рабочих, есть один рабочий и два конвейера. По конвейеру поступают детали для сборки изделия, например, нужно три детали для сборки одного изделия. Если какая-то деталь не поступает и её не хватает для сборки, то чтобы рабочий не простаивать он переключается на другой конвейер и собирает другие изделия. После поступления нужной детали он переключается обратно.
Т.е. смысл smt в том чтобы заполнить простои от ожидания данных и команд, которые возникают из-за ошибки предсказания перехода.
Или это я что-то не понимаю? :)
Т.е. смысл smt в том чтобы заполнить простои от ожидания данных и команд, которые возникают из-за ошибки предсказания перехода.
Или это я что-то не понимаю? :)
Вот поэтому я и решил написать данную статью, многие люди путают одновременное выполнение задач с временны́м выполнением. SMT позволяет выполнять несколько задач одновременно как в двухядерном процессоре, но сами задачи должны быть разнородны, тогда как в двухядерном процессоре одновременно могут выполняться однородные задачи. А тот алгоритм, который вы описали, это обычное использование конвейера с одним ядром без SMT, когда одновременно может выполняться не более одной операции.
при запуске эвристика Symantec-а блокирует «wps setup core 64bit.exe», детектит как Heur.AdvML.B
я конечно понимаю, что это ложноположительный детект, но выглядит неприятно
Discovered:
May 18, 2016
Updated:
June 3, 2016 11:44:25 PM
Type:
Trojan, Virus
Infection Length:
Varies
Systems Affected:
Windows
Heur.AdvML.B is a heuristic detection designed to generically detect malicious files using advanced machine learning technology. A file detected by this detection name is deemed by Symantec to pose a risk to users and is therefore blocked from accessing the computer.
я конечно понимаю, что это ложноположительный детект, но выглядит неприятно
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Что такое SMT и как оно работает в приложениях — плюсы и минусы