Андрей Викторов
15 лет на форуме
- Сообщения
- 1 287
- Реакции
- 298
Важно что оно использует.использует ли приложение все ядра
Важно что оно использует.использует ли приложение все ядра
А смысл? Если на производительности это никак не отражается?Важно что оно использует.
Я уже как то говорил о том, что любой серьезный программный пакет - настолько сложная система, что ни один разработчик не может представить себе полное детальное взаимодействие всех его частей. Во всяком случае, без долгого втыкания в спецификации и исходники других разработчиков.Вряд ли разработчики сами точно знают
как работает компьютер в целом и его части, как программные, так и аппаратные,
в частности)))
Умофон как бы состоял из невообразимого числа свитков с законами, исполнявшимися электрической силой много раз в секунду, вот только записаны эти повеления были иначе, чем принято у нас. Вместо латунных цилиндров и полосок рисовой бумаги ветхие люди применяли изощренную и чрезвычайно мелкую резьбу по камню, во много слоев вытравливая в нем тончайшие иероглифы с непостижимо сложным смыслом. Электричество, проходя по ним так и сяк, каждый раз как бы принудительно прочитывало их.
Нечто похожее происходит, когда ветер вращает барабан молитвенной мельницы с вырезанными на нем мантрами. Но здесь было наоборот: мельница оставалась неподвижной, а вокруг нее замысловато кружил ветер – и не простой ветер, а как бы дуновение множества голосов, читающих заклинания.
Молитвенный барабан назывался у ветхих людей словом «Хад», а произносящий заклинания голос – словом «Цоф» (так я расслышал). Мантры на барабане «Хад» были все время одни и те же, а заклинания «Цоф» постоянно менялись.
И каждый раз, когда эти «Хад» и «Цоф» встречались, электрическая сила как бы околдовывала себя сама – подчиняясь заклинаниям, она разбегалась по металлическому лабиринту таким хитрым способом, что функции умофона проявлялись совершенно безблагодатно – то есть вообще без вмешательства Ангелов!
Дело в том, что вытравленные в камне иероглифы были основаны на открытиях, когдато давно (иногда за века до этого) нащупанных и записанных людьми. Этих людей было очень много – и большей частью они давно умерли. Каждый из них походил на древнего раба, выбившего на гранитной плите крошечный отрезок длинногопредлинного заклинания.
И уже давно на Ветхой Земле не было ни одного человека, кто знал бы все некрозаклинание целиком. Люди в лучшем случае понимали, как соединить один этаж библиотеки с другим, чтобы накопленные в веках смыслы растеклись по их черным электрическим маркам, выныривая из формул и таблиц, составленных мертвецами, почти не видевшими при жизни счастья – и горько ушедшими в небытие.
Можно (рисовать в параллельные пиксельные буфера и склеивать результат в пикселях же). Вот только затык не в отрисовке, а в работе с самими объектами. В моем примере просто копирование, до отрисовки дело даже не доходит.в случае растрирования, раскидать объекты по ядрам
Насколько я понимаю, речь не идёт об отбирании ресурсов, просто винда запрограммирована на использование наибольшего числа ядер, пусть и с небольшой их загрузкой. Подробнее здесь Парковка ядер многоядерных процессоров в Windows 7Соответственно, иллюстратор запросил для него кучу ресурсов у винды, которая, в свою очередь, бросилась перераспределять эти ресурсы, отбирая их у других приложений - занимая данным малополезным действием остальные ядра.
Кому интересно, а главное, ЗАЧЕМ?В связи с этим было бы интересно провести те же тесты, перенастроив параметры производительности Windows так, чтобы 6 из 8 ядер по умолчанию были приостановлены. Тогда будут нагружаться только два ядра, и только если их не хватит - начнёт нагружать третье ядро.
Эта картинка выглядит так, будто 100%-я нагрузка с двух ядер распределяется на все восемь.Иллюстратор. судя по вышесказанному, вы использовать дополнительные ядра никаким образом не заставите
Как так получилось, если Иллюстратор не умеет использовать больше одного ядра - не понятно, и тестирование с шестью приостановленными ядрами могло бы показать, действительно ли выполнение этой задачи в Иллюстраторе нагружает два ядра на 100%, или такой график - следствие каких-то глюков винды из-за переноса потока на другие ядра.
Не понял, про какие именно ухищрения Вы пишете, процитирую статью, ссылку на которую дал в предыдущем сообщении:производительность системы подобными ухищрениями разве что понизить можно, но никак не увеличить.
Как известно, при работе на многоядерных процессорах, операционная система производит ротацию потоков между ядрами. Другими словами, переносит поток с более загруженных на менее загруженные ядра, что обеспечивает равномерную загрузку всех ядер системы. Но такая постоянная ротация приводит к потере производительности и повышению энергопотребления.
Не следует идеализировать (а в данном случае, фактически, обожествлять систему)операционная система производит ротацию потоков между ядрами. Другими словами, переносит поток с более загруженных на менее загруженные ядра, что обеспечивает равномерную загрузку всех ядер системы.
А где я это делал-то?Не следует идеализировать (а в данном случае, фактически, обожествлять систему)
Не может он этого. Он не знает, какие зависимые, а какие нет, пока бородатый программист явно ему это не скажет. Например, с помощью такого: Intel Threading Building Blocks — Википедия Или такого: OpenMP — Википедиянезависимые команды в разные