Member
Статус: Не в сети Регистрация: 30.04.2015 Откуда: Россия Фото: 634
Egik72-2 писал(а):
Одновременно вы это не сможете сделать а автор пытается это мне доказать. А мониторинг именно это и показывать должен текущую работу в текущую единицу времени.
У меня мониторинг по-разному показывает. Когда 1 ядро на 100% при однопотоке, а когда 2-3 по 20-50% При том я точно знаю, что однопоток и могу средствами винды же перекидывать его на разные ядра не прерывая выполнения задачи. И если запретить использовать задаче все ядра, кроме одного, то проблем с показаниями не будет.
Member
Статус: Не в сети Регистрация: 26.05.2011 Фото: 0
derp писал(а):
У меня мониторинг по-разному показывает. Когда 1 ядро на 100% при однопотоке, а когда 2-3 по 20-50% При том я точно знаю, что однопоток и могу средствами винды же перекидывать его на разные ядра не прерывая выполнения задачи. И если запретить использовать задаче все ядра, кроме одного, то проблем с показаниями не будет.
Даже не знаю что ответить на ваш бред. Ибо вы пытаетесь прежде всего самого себя убедить в правдивости своих выводов каждый раз придумывая причину для этого. То у вас однопоток на одном ядре исполняется то разделяется и на 2-3. Вы уж определитесь как у вас однопоток или многопоток. Конечно можно и дальше убеждать что однопоток может одновременно на 2-3 ядрах исполняется из-за чего нагрузка на них 20-50 процентов но это ахинея..))))) P.S. ибо тогда смысла устрайвать гемморой с многопоточностью при программировании нет. Если и так однопоток можно по всем ядрам распределить если следовать вашей с IN логике....
Последний раз редактировалось Egik72-2 15.06.2017 22:55, всего редактировалось 1 раз.
Member
Статус: Не в сети Регистрация: 26.05.2011 Фото: 0
я пока вижу лишь двух делитантов у которых мониторинг показывает не текущую нагрузку и что однопоток можно раскидывать по не скольким ядрам за единицу времени дабы они исполнялись одновременно. И мне как в прошлом увлекавшемуся в молодости программированием тошно слушать этот бред...
Добавлено спустя 57 секунд:
$erg писал(а):
Игнор, и только игнор.
Можно и игнорить но твоя точка зрения от этого не станет истинной....
Последний раз редактировалось Egik72-2 15.06.2017 23:13, всего редактировалось 1 раз.
Moderator
Статус: Не в сети Регистрация: 03.05.2005 Откуда: Московская обл. Фото: 547
Egik72-2 Берём Cinebench. В настройках указываем меньшее число потоков, чем логических ядер у процессора. Запускаем. Видим, что Windows постоянно швыряет нагрузку между всеми видимыми логическими ядрами Ryzen 1700.
Отключаем два ядра у 1700. Запускаем 3DMark Fire Strike – Physics test из статьи (я даже видеокарту поменял с RX480 на 1080). Получаем уже не 75%, а 90% загрузки.
Больше бенч не грузит. Даже если в фоне запустить, например, LinX в один-два потока, нагрузка всё равно не выше 90%. Видимо, в тест вшито ограничение.
Операционная система постоянно перекидывает нагрузку между ядрами. Мониторинг же показывает это так, как будто мы имеем загрузку по всем ядрам. Хотя одномоментно работают не все, а ровно столько, сколько надо, а остальные - простаивают. Почему так работает мониторинг Windows, представляя так, как будто нагрузка распределена по всем ядрам, тогда как в определённый момент времени работает только часть ядер, а другая простаивает, да и почему Windows вообще занимается таким жонглированием между ядрами, причём неравномерно - это уже вопрос к разработчикам Windows.
$erg DKR
Нет, тут Egik72-2, похоже, просто не понимает, что он доказывает ровно то же самое, о чём ему и говорят изначально.
_________________ Статьи overclockers.ru/tag/show/4417 и club.dns-shop.ru/authors/c7bdeb28312efbed-i-n/ Не пишите мне в ЛС "помоги выбрать SSD" и т.д.
Member
Статус: Не в сети Регистрация: 30.04.2015 Откуда: Россия Фото: 634
Пока здесь только один дилетант, который пишет,
Egik72-2 писал(а):
что однопоток можно раскидывать по ядрам..
Повторю снова: однопоток - это однопоток. Он может выполняться лишь на одном ядре в один момент времени. И специально объяснил на авто, если не понятно на уровне электроники. Кому-то следует почитать, что такое дискретность, кванты, потоки, ядра. И что такое процессорное время.
я пока вижу лишь двух делитантов у которых мониторинг показывает не текущую нагрузку и что однопоток можно раскидывать по не скольким ядрам за единицу времени дабы они исполнялись одновременно. И мне как в прошлом увлекавшемуся в молодости программированием тошно слушать этот бред...
Вы плохо понимаете буквы. бывает. Нигде не было сказано" раскидывать по не скольким ядрам за единицу времени дабы они исполнялись одновременно." Было сказано совершенно иное. можете перечитать. Не надо раздувать щёки, напуская важности. При этом показывая, что вы плохо понимаете длинные предложения.
Moderator
Статус: Не в сети Регистрация: 03.05.2005 Откуда: Московская обл. Фото: 547
Egik72-2 Ну я уже не знаю, что ещё говорить. Я нигде не утверждаю, что Windows однопоточную задачу "разбивает" на несколько ядер. Я говорю о том, что Windows этот поток постоянно перебрасывает между доступными ядрами, а мониторинг выдаёт усреднённые значения. Вот и выглядит, условно, 25%+25%+25%+25%, а не 100%+0%+0%+0%. Хотя на деле в один момент времени работает только одно ядро. Из аналогий сейчас в голову приходит разве что вращающийся на очень высоких оборотах пропеллер чёрного цвета: в глазах человека этот пропеллер выглядит сплошным кругом серого цвета, хотя на деле в каждый момент времени положение лопастей - одно определённое, они не "размазываются" по всей оси вращения. Просто мозг человека не в состоянии обрабатывать картинку с такой частотой обновления, чтобы увидеть отдельные лопасти, поэтому он видит серый круг. Точно то же - и с мониторингом.
Мы сейчас говорим обо одном и том же.
_________________ Статьи overclockers.ru/tag/show/4417 и club.dns-shop.ru/authors/c7bdeb28312efbed-i-n/ Не пишите мне в ЛС "помоги выбрать SSD" и т.д.
Member
Статус: Не в сети Регистрация: 30.04.2015 Откуда: Россия Фото: 634
I.N. писал(а):
Операционная система постоянно перекидывает нагрузку между ядрами. Мониторинг же показывает это так, как будто мы имеем загрузку по всем ядрам. Хотя одномоментно работают не все, а ровно столько, сколько надо, а остальные - простаивают.
Мониторинг не может показывать текущее значение, т.к. это абсурд. Процессор работает дискретно, тактами. Что должен показывать мониторинг в какой-то момент времени? Выполняет процессор такт прямо сейчас или нет? Или где? При частоте процессора 4ГГц выводить 4 миллиарда показаний в секунду? Как это вывести? Кому оно надо? У человека минимальное время реакции зрительной системы 20мс, с учётом обработки информации мозгом совсем печально. Есть процессорное время. Иными словами сколько уходит ресурсов на выполнение задачи. Мониторинг показывает в процентах сколько из возможных тактов были потрачены на выполнение задачи в единицу времени. Обычно используются 500 и 1000мс в качестве такой единицы - показания, которые человек способен и увидеть и восприять. За эти 1000мс процессор успеет выполнить 4 гига тактов. У винды есть планировщик, который может процессу выделить, грубо говоря, гиг тактов на одном ядре, потом гиг тактов на другом ядре, потом два гига на третьем. И всё это в течение 1000мс и одной однопоточной задачей, которая в один момент времени лишь на одном ядре выполняется. Мониторинг подсчитывает сколько от возможного числа тактов в течении его единицы времени (в нашем случае 1000мс) задача выполнялась на каждом из ядер и показывает нам в итоге какие-нибудь 25% на первом, 25% на втором, 50% на третьем - это мы видим загрузку ядер процессора. Однопотоком. Мы можем вручную поставить affinity в планировщике, например на 15 и однопоток будет выполняться на 15 виртуальном потоке процессора (в моём случае это будет 8 ядро, второй поток) и тогда мы будем видеть загрузку одного ядра на 100% Без задания вручную винда часто занимается перекидыванием с ядра на ядро одной задачи во время выполнения... Это всё приблизительно говоря простым языком.
Moderator
Статус: Не в сети Регистрация: 03.05.2005 Откуда: Московская обл. Фото: 547
derp Разумеется, что мониторинг не может показывать всё. Да и монитор отобразить это не сможет - не та частота обновления дисплея. Не говоря уже о человеческом глазе.
В том-то и дело, что мало видеть цифры, надо уметь понимать, что именно за ними кроется. Отсюда и крики отдельных пользователей, что, вот, дескать, "проц загружен всего на 25%". Хотя на самом деле - на 100%, просто программа не умеет многопоток и потому три четверти ядер тупо простаивают, а всё ограничивается производительностью одного-двух ядер.
Я тоже не мастер говорить научным языком.
_________________ Статьи overclockers.ru/tag/show/4417 и club.dns-shop.ru/authors/c7bdeb28312efbed-i-n/ Не пишите мне в ЛС "помоги выбрать SSD" и т.д.
Member
Статус: Не в сети Регистрация: 26.05.2011 Фото: 0
Дабы закончить этот бесполезный спор. Почитайте про принцип работы процессора ибо несете такую ерунду. Напоследок просто напомню что процессор это простое устройство. Поэтому даже 2+2=4 выполняется в несколько тактов на одном ядре. Ибо пока задача не будет выполнена перебросить ее на другое ядро не получится хоть тресни. Ибо конвейер есть конвейер.
Member
Статус: Не в сети Регистрация: 30.04.2015 Откуда: Россия Фото: 634
Egik72-2 писал(а):
Дабы закончить этот бесполезный спор. Почитайте про принцип работы процессора ибо несете такую ерунду. Напоследок просто напомню что процессор это простое устройство. Поэтому даже 2+2=4 выполняется в несколько тактов на одном ядре. Ибо пока задача не будет выполнена перебросить ее на другое ядро не получится хоть тресни. Ибо конвейер есть конвейер.
Правильно. Только не задача, а операция пока не будет выполнена. А когда 2+2 выполнено и получено 4, то можно перекинуть задачу на другое ядро и пусть уже то ядро выполняет следующую операцию, которая будет основана на результате от 2+2. И за секунду проходит столько тактов, что можно много операций выполнить на разных ядрах. В этом и суть однопотока, что выполнение следующей операции жёстко зависит от результата предыдущей и нет предсказаний. Потому даже если раскидать операции на все ядра, то они будут простаивать и ждать пока одно ядро выполнит первую операцию и выдаст результат, необходимый для второй операции и т.д. И винда занимается как раз таким бредом, раскидывая по ядрам, от чего скорость выполнения ну никак не вырастает.
Member
Статус: Не в сети Регистрация: 26.05.2011 Фото: 0
derp писал(а):
А когда 2+2 выполнено и получено 4, то можно перекинуть задачу на другое ядро и пусть уже то ядро выполняет следующую операцию, которая будет основана на результате от 2+2.
Смысла в этом нет. Ибо потребуются лишние такты на эти действия. Именно поэтому однопоточные выполняются всегда на одном ядре за единицу времени.
Member
Статус: Не в сети Регистрация: 30.04.2015 Откуда: Россия Фото: 634
Egik72-2 писал(а):
Смысла в этом нет. Ибо потребуются лишние такты на эти действия. Именно поэтому однопоточные выполняются всегда на одном ядре за единицу времени.
Именно про это я и написал, что винда бредом занимается. И проверял устанавливая вручную конкретный поток для выполнения однопоточной задачи. Тогда она равномерно выполнялась на одном ядре с его загрузкой в 100%
Member
Статус: Не в сети Регистрация: 26.05.2011 Фото: 0
derp писал(а):
Именно про это я и написал, что винда бредом занимается. И проверял устанавливая вручную конкретный поток для выполнения однопоточной задачи. Тогда она равномерно выполнялась на одном ядре с его загрузкой в 100%
Я тоже решил пострадать бредом и взял, вырубил у своего старичка 3 ядра из 4 и HT. И запустил на нем винрар с отключённой многопоточностью, и загрузка была 90-95 процентов. Включил многопоточность, и все каюк 100 процентов загрузки плюс длинна очереди потоков у единственного ядра пошла вверх. Проще говоря, ядро не справлялось. Я это про то, что у вас видимо многопоточное приложение, которое вы посчитали однопоточным, почему то.
Member
Статус: Не в сети Регистрация: 10.03.2004 Откуда: Липецк
Egik72-2 писал(а):
derp Именно про это я и написал, что винда бредом занимается. И проверял устанавливая вручную конкретный поток для выполнения однопоточной задачи. Тогда она равномерно выполнялась на одном ядре с его загрузкой в 100%
Я тоже решил пострадать бредом и взял, вырубил у своего старичка 3 ядра из 4 и HT. И запустил на нем винрар с отключённой многопоточностью, и загрузка была 90-95 процентов. Включил многопоточность, и все каюк 100 процентов загрузки плюс длинна очереди потоков у единственного ядра пошла вверх. Проще говоря, ядро не справлялось. Я это про то, что у вас видимо многопоточное приложение, которое вы посчитали однопоточным, почему то.
Назначение процесса одному ядру и физическое выключение всех остальных - мягко говоря, не одно и то же. Как ни странно, винда выполняет и другие задачи, ну не может без них. Вы постоянно производите подмену понятий, что говорит о недопонимании сути и неумении слышать и понимать то, что вам говорят, зацикливаясь на собственных скудных познаниях ранней молодости.
Эксперимент должен был быть таким - запустить винрар в однопотоке, потом назначить ему любое одно ядро и сравнить загрузку процессора в целом и по ядрам в том и другом случае. Может, тогда бы дошло, о чем здесь говорят. Хотя, вряд ли.
_________________ Чукча не песатель, чукча четатель.
Т.е. что получается: можно взять AMD R7 1700 BOX в паре с какой нибудь ASRock A320M Pro4 за 4.5К руб. и при этом не будет кукурузы?
не советую боксовые кулера. при разгоне на полной загрузке околосокетное пространство, память и vrm горячие. а если в наличии горячая видеокарта - то даже в стоке при даунвольтинге процессора околосокетное пространство, память и vrm горячие. да и отпечаток термопасты ненравится: (наносилось равномерно пальцем в пакете)
Вложение:
20170615_071443.jpg
Вложение:
20170615_071528.jpg
разгон 3.9 v 1.381 сейчас поставил свой Scythe Ashura Shadow без креплений и прижима с Scythe Grand Flex 1200 rpm - температура упала в простое на 20, а в повседневной нагрузке на 10. боюсь представить что будет на топовой термопасте и с креплениями (наверное холоднее чем g3258 )
Вложение:
20170616_083342.jpg
Добавлено спустя 2 минуты 54 секунды:
ZrZ писал(а):
Имхо, лучше всех сейчас смотрится ASRock AB350M PRO4 среди M-ATX плат
биостар дешевле и питальник лучше единственное что нет бесполезного второго чипсетного м.2 pci-e x4 gen 2 единственное по биосу ничего немогу сказать ибо не слежу
У вас нет необходимых прав для просмотра вложений в этом сообщении. _________________ LG 650GKF•Biostar x370 GT7•R5 1600•Yeston 7800 xt•Geil GLWR416GB3000C15ADC•Tesla R2 650W•Sandisk SDSSDHP-128G-G25
Member
Статус: Не в сети Регистрация: 30.04.2015 Откуда: Россия Фото: 634
$erg писал(а):
Эксперимент должен был быть таким - запустить винрар в однопотоке, потом назначить ему любое одно ядро и сравнить загрузку процессора в целом и по ядрам в том и другом случае. Может, тогда бы дошло, о чем здесь говорят. Хотя, вряд ли.
Это адресовано кому? И при чём здесь именно винрар?
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 22
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения