[ID CC-CC2021] Определение количества ядер CPU

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 138
Реакции
10 835
Если в системе 2 ядра, то, ограничив максимальное число тасков до двух, мы не даем перегрузить проц подачей лишних тасков.
Так нормально ж и больше двух обрабатываются, зачем душить? Вдобавок я вам уже объяснил, что грузится не проц, а индийская яваскрипт-машина
 

Skvoznyak

15 лет на форуме
Сообщения
5 500
Реакции
2 168
ограничив максимальное число тасков до двух, мы не даем перегрузить проц подачей лишних тасков.

а кроме индизайна вообще ничо не работает? вот скрипт сам - он где крутится? системные процессы, куча других программ?
 

Skvoznyak

15 лет на форуме
Сообщения
5 500
Реакции
2 168
Так нормально ж и больше двух обрабатываются, зачем душить? Вдобавок я вам уже объяснил, что грузится не проц, а индийская яваскрипт-машина

ну в целом нет, скрипт дал команду экспорта pdf приложению и дальше пошел. он и прекратить выполнение может сразу же, если ничего другого не прописано. собственно, для того чтоб отследить окончание экспорта нужно вешать eventhandler и #target session прописывать
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 138
Реакции
10 835
а кроме индизайна вообще ничо не работает?
Ну видишь, человек продвинутый планировщик написал - наверное все остальные треды к ядрам не подпускает пока экспорт идет
 

veretragna

γνώσις
Топикстартер
Сообщения
578
Реакции
199
Чем больше queued тасков стоит в очереди за выполняющимися, тем больше и больше ресурсов queued таски жрут на какие-то свои внутренние процедуры, отнимая время у тех тасков, которые должны выполняться, что в конечном итоге приводит к зависанию индизайна. В момент, когда индизайн зависает с кучей тасков, процессор обычно кипит, загрузка всех логических ядер 100% под гипертредингом, а диспетчер задач запускается с трудом. Речь идет об исчерпании ресурсов системы. Никогда не было такого, чтобы индизайн крутился на 2 ядрах из 4 и зависал.
Вот в чем проблема.
 

veretragna

γνώσις
Топикстартер
Сообщения
578
Реакции
199
Вернусь позже, вынужден отлучиться
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 138
Реакции
10 835
у вас скорее с записью на диск затык возникает, нет?
Меня, например, терзают смутные сомнения, что "многозадачность" индизайновского экспорта, мягко говоря, не совсем честная. Вполне возможно, что нормально запустить сколько угодно равноправных тредов в ней принципиально нельзя просто изза ограничений реализации. Индусам же не ставилась задача создать нормальную многозадачную систему не так ли? Просто распараллелить несколько одновременных экспортов
 

Skvoznyak

15 лет на форуме
Сообщения
5 500
Реакции
2 168
задача стояла запустить экспорт в фоне и дать возможность дальше работать, по-моему.
кстати вспомнил с ним еще проблему - на некоторых документах export в фоне вешал индизайн намертво, хотя обычный работал. а отключить использование этих background tasks достаточно нетривиально
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 138
Реакции
10 835
задача стояла запустить экспорт в фоне и дать возможность дальше работать, по-моему.
Ну дык не неограниченное количество параллельных экспортов же!
В любом случае, реализовано достаточно криво и на ядра привязывать просто смешно
 

veretragna

γνώσις
Топикстартер
Сообщения
578
Реакции
199
у вас скорее с записью на диск затык возникает, нет?
Индикатор нагрузки диска у меня на панель ноутбука выведен, я бы ненормальную нагрузку заметил сразу, а эта тема даже бы не существовала.
Но есть ненормальная нагрузка на проц.
Ну дык не неограниченное количество параллельных экспортов же!
В любом случае, реализовано достаточно криво и на ядра привязывать просто смешно
Голословно и бездоказательно.
Этот метод работает и решает проблему, а у вас и метода толком нет.
Ваше решение прописать количество тасков хардкодом ничем не лучше
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 138
Реакции
10 835
Посыпаю голову пеплом - так таки и нету! Ну нет у меня таких странных задач, не было и нету! 😩
 

veretragna

γνώσις
Топикстартер
Сообщения
578
Реакции
199
Планировщик системы перебрасывает треды равномерно между незанятыми физическими ядрами. Если ядер 4 и тредов 4, мы видим вот такую картину.
Посмотреть вложение 121595
Посмотреть вложение 121549
Меня, например, терзают смутные сомнения, что "многозадачность" индизайновского экспорта, мягко говоря, не совсем честная. Вполне возможно, что нормально запустить сколько угодно равноправных тредов в ней принципиально нельзя просто изза ограничений реализации.
Чисто умозрительное заключение. На примере 4 ядер и 4 потоков это правило соблюдается, а для заключения, которое выдвинули вы, предпосылок нет.
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 138
Реакции
10 835
Эксперимент с 4 ядрами совершенно не показателен. Хотя бы на восьми уже более-менее убедительнее было бы, а желательно, еще большем количестве. Я кстати не совсем понимаю, зачем вам хотя бы четыре экспорта с разными профилями одновременно?
 

Skvoznyak

15 лет на форуме
Сообщения
5 500
Реакции
2 168
Экономишь 20 секунд, тратишь часы на обсуждение экономии на рудтп - профит
 

veretragna

γνώσις
Топикстартер
Сообщения
578
Реакции
199
Эксперимент с 4 ядрами совершенно не показателен. Хотя бы на восьми уже более-менее убедительнее было бы, а желательно, еще большем количестве. Я кстати не совсем понимаю, зачем вам хотя бы четыре экспорта с разными профилями одновременно?
Я обязательно проведу такой эксперимент, если найду такой проц среди знакомых. У коллеги вроде кукурузен был, спрошу в понедельник.

Дык рассказывал же - мне приходят пакеты документов, например, 2 каталога и 3 брошюры, я с ними поработал и хочу сохранить правильно. А заказчик принимает работу в виде pdf высокого качества, низкого качества, разворотов и idml.
Путем нехитрых подсчетов имеем 20 тасков. Автоматизировать экспорт по очереди - это я уже сделал, хотя бы не приходится их все именовать вручную, а сейчас хочу сделать, чтобы экспорт пакета проходил максимально быстро и не в ущерб компу - пока крутится экспорт в индизайне, я могу себе в Framemaker работать.
Экономишь 20 секунд, тратишь часы на обсуждение экономии на рудтп - профит
Выходной - могу себе позволить ;)
 

veretragna

γνώσις
Топикстартер
Сообщения
578
Реакции
199
Экономишь 20 секунд, тратишь часы на обсуждение экономии на рудтп - профит
Ну и опять же - это был тест для наглядности, простой проект на 18 страниц. Приходят брошюры на 18 страниц, каталоги на 150 страниц, мануалы на 300 страниц, материалов много и они очень разные как по форме, так и по содержанию.
Думаю, на больших объемах экономия больше, но главное, что я могу запустить экспорт и работать где-то еще, не распыляя внимание.
 
  • Спасибо
Реакции: dev9togo

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 138
Реакции
10 835
Экономишь 20 секунд, тратишь часы на обсуждение экономии на рудтп - профит
А поговорить? '))' В любом случае, топикстартеру респект и уважуха, у меня появилась застольная тема за чашкой вискаря с друзьями-кодерами '))'
 

veretragna

γνώσις
Топикстартер
Сообщения
578
Реакции
199
Только не говорите еще и им, что один тред можно распределить по нескольким ядрам ;)
 

DrEgor

Участник
Сообщения
747
Реакции
68
Я так понял, что ТС сам спросил и сам же нашел ответ на свой вопрос, а 5 страниц обсуждения в чем он не прав, конечно прикольно, но если поднятая тема действительно ускорит процесс в данном контексте, то, как говорят французы "пурква бы и не па?"
Было бы очень интересно увидеть финальный вариант скрипта. А может даже удастся допилить его под собственные нужды :)