Здравствуйте.
На некоторые вопросы нашел ответы самостоятельно, но сегодня появилась проблема, которую я перестал понимать (не бейте, если все это уже было).
Суть проблемы:
Рендер стартует на видеокарте (GPU). Скорость рендеринга абсолютно устраивает (от 1 до 2 часов в 1920*1080 и Фоториал режиме).
Так было сделано около 15 рендеров.
Разница всех рендеров лишь в положении персонажа относительно других объектов.
И вот рендер номер 16...
Начинается на видеокарте, все идет хорошо, на 20% переключается на CPU и умирает.
Далее с моей стороны следует поиск причины...
- перезагрузка DAZа
- перезагрузка ПК
- удаление (именно удаление, а не скрытие), из сцены неиспользуемых объектов (кстати почему-то не привело к уменьшению памяти занимаемой текстурами, как было 2,4 Гб, так и осталось)
- удаление вообще всех объектов кроме персонажа
- удаление освещения
- увеличение файла подкачки (правда пришлось перенести его на несистемный диск)
дает такие результаты:
1. Рендер стартует сразу на CPU (в большинстве случаев)
2. Рендер стартует на GPU потом переключается на CPU.
Последняя попытка выглядит так:
Старт на GPU, все отлично, а дальше
после чего процесс практически встает (вместо 130-150 итераций за 5 минут стало не больше 5-10 итераций).
Между первыми 15 рендерами и текущим принципиально ничего в сцене не изменилось.
Очень смущает то, что после перезагрузки ПК сцена может стартовать как на CPU, так и на GPU т.е. вообще не понятно от чего зависит.
Сделал тест OctaneBench (в какой-то из тем рекомендовали) все рендеры в тесте прошли, результат Score: 119.98 (понятия не имею, что это значит).
Система:
проц: Intel Core i7 (но древний, был поставлен 8 лет назад)
видеокарта: GeForce GTX 1660 Ti (стоят последние студио драйвера), 6 Гб видеопамяти
оперативка: 16 Гб
Сам сталкивался с такой проблемой . Засада в сцене. Чем больше её колбасишь, тем больше в ней накапливается каки. Другого объяснения у меня нет.
Выход - брать исходную самую первую, для создания последующих, а не подряд последовательно переделывать....
хорошими делами прославиться нельзя
Надо смотреть лог ирея. предварительно включить verbose mode
alt-lab.org/LAB/
Интересное замечание, сейчас попробую.
Пока что, методом научного тыка и диспетчера задач обнаружил следующее:
в некоторых случаях, непонятно каких именно, DAZ не освобождает видеопамять после рендеринга (или в случае остановки рендера руками), вот именно тогда следующий рендер начинает стартовать сразу с CPU.
В ДАЗ Студио есть скрипт "purge memory".
хорошими делами прославиться нельзя
нашел, запустил, память не освободилась
тогда только перезапуск. Или пробовать кеш DSON освободить.
хорошими делами прославиться нельзя
у тебя скорей всего высокая детализация стоит к какому то персонажу , у меня так было (которая отвечает за детализацию кожи = больше 2 не ставь это значение) (Sud Division Level = 1)
не помогло.
освободить DSON не помогает, спасает только перезапуск. И то, win 10 периодически после закрытия оставляет в фоновых процессах, память освобождается только после ручного завершения фонового процесса.
Не очень конечно удобно это
Три перса, Sub Division Level = 1 - у всех
Но там два параметра:
Sub Division Level и Render SubD Level (min) - вот он был 2, 3 и 3 соответсвтенно.
Поменял его у всех на 1, запустил рендер проблемной сцены, старт пока нормальный, если дойдет до конца на GPU, то можно считать это решением.
Единственное смущает (min), а max где, как и кем определяется?
Рендер закончится напишу, помог или нет Sub Division Level
Только что - хром работет , ютуб кажет - рендер на ЦПУ. Закрываешь хром - рендер на ГПУ.
Суть - нехвватка видеопамяти....
хорошими делами прославиться нельзя
Atheist
Вы правы, эту тему здесь уже несколько раз рассматривали, поэтому пробежимся тезисно:
Если у Вас в настройках стоят галочки и на GPU и на CPU, то DAZ в первую очередь постарается загрузить Вашу сцену в память GPU, а если сцена туда ЦЕЛИКОМ не поместится то ВЕСЬ рендеринг будет вестись через только CPU.
Сцена может не поместиться в GPU по следующим причинам:
- сцена банально больше, чем память GPU;
- часть памяти GPU (или вся) уже чем-то занята (или всё ещё чем-то занята);
- сочетание обеих причин.
Ситуация, когда Ваш рендеринг начался на GPU, а потом на скольких-то процентах переключилась на CPU происходит из-за перераспределения памяти. Например, на начало рендеринга Ваша сцена целиком поместилась в память GPU, но потом Вы открыли какой-то сайтик (например YouTube), который загрузился тоже в память GPU (у Вас настройки NVidia по умолчанию, да?). И ТОГДА СЦЕНА ПЕРЕСТАЁТ ПОМЕЩАТЬСЯ в GPU и сваливается в обработку CPU. Это может даже привести к зацикливанию рендеринга.
Ситуация с 15-16 сценами может иметь то объяснение, что в 16-й сцене Вы придвинули камеру к снимаемым объектам. Крупный план жрёт больше памяти по очевидным причинам.
Рендеринг силами СPU застопорился по простой причине - у Вас маленький файл подкачки. Сцена в него попросту не влезла. Проверьте. Оно ведь у Вас по умолчанию?
Daz медленно очищает оперативную память потому, что он её освобождает в обратной последовательности, от той, в которой загружал. Весь этот многократный танц с бубном "RAM-файл подкачки" и обратно.
Я предпочитаю ручную принудительную очистку в панели задач - пользуюсь давно и без проблем (была 7-ка, сейчас 10-ка).
... вот, кажется и все Ваши вопросы ...
♥ peace ♥
Сейчас два окна мозиллы, сериал в HD.
Все без тормозов, рендер идет нормально, тормоза в видео начинались, только при загрузке процессора на 100%, когда рендер на него переключался, и загрузка оперативки сразу взлетала до 100%, т.е. можно сделать вывод, что за браузер и потоковое видео отвечает больше ЦП, чем видеокарта.
Честно, не до конца понимаю как взаимодействует все это железо, но по ощущениям, когда происходит переключение с GPU на CPU в середине рендера, то дело не в видеопамяти.
У меня загрузка видеопамяти во время рендера не изменяется с момента старта.
а-а-а... желаю успехов
♥ peace ♥
только GPU
ситуация именно эта, но не было замечено открытия чего-то емкого, все было запущено до начала рендера, при этом просмотр видео никак не влиял на загрузку видеопамяти (около нулевое значение).
в первом посте писал, что файл подкачки был увеличен (если точно то до 200 Гб), но с оговоркой, что пришлось переместить его с системного диска на несистемный.
На скорость рендера CPU не повлияло никак.
не смейтесь) мои ощущения такие, что проблема не в объеме памяти, требуемой для загрузки сцены, а в каких-то вычислениях сцены т.е. ошибка математическая.
Безразлично - когда сцена не влезла в GPU, она будет сброшена в CPU независимо от того стоит или нет галочка возле CPU.
Да-да, Вы прсматривали фильм длиной в одну секунду с разрешением 1*1 пиксель. Не несите чепухи.
Я надеюсь, что Вы не обнулили файл подкачки на системном диске. ОН ДОЛЖЕН СУЩЕСТВОВАТЬ!
Более детально ситуацию с вынесенным на несистемный диск файлом подкачки я не испытывала.
P.S. 200 GB - избыточно много. 80-95(max) - хватит на все случаи жизни.
♥ peace ♥
Конкретно сериал в Full HD. Запущен постоянно. Если ничего не рендерится, то загрузка видеопамяти в районе 300 Мб. Основная нагрузка, при просмотре потокового видео в браузере идет на ЦП и оперативку.
а я вот даже и не знаю, что Вам сказать...
ну - верьте Ваши ощущениям, они ведь на чём-то базируются, не так ли?
♥ peace ♥
Atheist
Я Вас не понимаю:
Вы спрашиваете - почему у Вас рендеринг происходит таким-то образом.
Вам объясняют.
Вы возражаете, что сериал "в Full HD. Запущен постоянно. Если ничего не рендерится, то загрузка видеопамяти в районе 300 Мб". А в другое время - он околонулевой?
Вы с этим вопросом здесь уже далеко не первый. Считаете, что всё делаете правильно? ОК, продолжайте, удачи.
♥ peace ♥
Да, конечно, если сравнивать 2 гига с 6 гигами....
Может стоит просто откатиться на старый драйвер????
хорошими делами прославиться нельзя
Сейчас рендерится с уменьшенным SubD Level, жду результат. Осталось минут 30-60
Мне помогают понять что происходит 2 полезности в винде- это сколько оперативы и проца загруженно, а в Октане сколько видеопамяти задействовано а сколько в запасе.
https://imageban.ru/show/2019/09/23/54091220102fb799e8e258bf327ad17e/jpg
Чтоб у garden DAZ не стоял.
Сабдивы увеличивают сложность геометрии, а следовательно и вес сцены...
Однако 6 гигов, по любому должно хватать. Система очекрыживает весьма весомый кусок под свои нужды.... ну и т.д.
хорошими делами прославиться нельзя
Когда надоест заниматься мазохизмом - снимите галку с GPU.
Так или иначе - Вы Вы впервые столкнулись с ситуацией, когда размер картинки превысил память GPU. Ваша GPU не безразмерная, смиритесь. Ведите рендер целенаправленно силами CPU, не морочьте компу голову.
А GPU оставьте для Вашей многооконной Мозиллы.
И не будет у Вас никаких сбоев. Я через эту дурь проходила два года назад - слово в слово.
♥ peace ♥
Nika, объясню на чем базируются мои ощущения.
1. Когда рендер стартует на CPU при забитой видеопамяти, причина понятна: нехватка видеопамяти.
2. Когда сцена стартует на GPU, переключается на CPU через 10 итераций, а я даже к клавиатуре не прикасался, или через 1000, 3000 итераций, при этом никаких новых задач ни процессор, ни видеокарта выполнять не начали, то дело по вашему все равно в перегрузе видеопамяти?
Стесняюсь спросить - а что это за сцена такая, рендеринг которой влезает в 6 гигов вместе с системой?????
♥ peace ♥
Диспетчер Задач
Загрузка сцены в даз кушает 2,6 Гб видеопамяти.
Начало рендера кушает ещё 3 Гб видеопамяти.
Atheist
Не-не-не! Я - пас!
Прав, значит прав. Вы у меня уже восьмой с этой фигнёй - я уже наубеждалась и наспорилась до ... мокрых штанов. Не интересно больше. Делайте - как Вам велит интуиция и чутьё.
---
... зарекалась же давать советы ... Хрен меня дёрнул за язык.
♥ peace ♥
Не, не диспетчер задач. Загрузку от видеовоспроизведения он покажет, а от рендера (CUDA-ядра) нет. Смотреть с помощью GPU-Z, вкладка sensors.
хорошими делами прославиться нельзя
там как раз показывается загрузка Cuda, посмотри скрин, отображаемые элементы меняются.
в прошлый раз, при переключении на CPU, cuda считать переставал, ЦП и оперативка загружались на полную, видеопамять не освобождалась
идёт рендер на ГПУ....
хорошими делами прославиться нельзя
В любом из 4х графиков нажми стрелку слева от его названия и выбери cuda, увидишь те же 99% без дополнительного ПО.
Не в моём случае...
ссылку на свой скрин поправь, ото просто так его не посмотришь.
хорошими делами прославиться нельзя
Эх. В прошлый раз дошли до итерации 3525 и переключились, в этот до 3783 (95%) и снова ушли на CPU.
Буду искать причину дальше, но, останусь пока что при своем мнении, дело не в памяти.
диспетчер
Температуры по карте??? - предположение.
хорошими делами прославиться нельзя
CUDA Toolkit 10.1 - может из-за этой штуки (устанавливал по одной из рекомендаций)
посмотрю, но уже завтра.
ещё попробую взять предыдущую сцену, в которой не было проблем и добавить туда то, что добавлял, возможно удастся определить конкретный объект, который это вызывает.
но рендер на проце, это.... 35 итераций за 20 минут... надеюсь закончит, когда проснусь)))
Благодарю!
Шож там наворочено????
Всё же из одной проги удобнее смотреть...
Однако - 2.5 гига инсталлятор...
хорошими делами прославиться нельзя
На старых картах график загрузки в compute_1 или compute_0
На что я жмал
Что-то полезное видимо
В общем похоже я нашел причину бага, провозился ещё час и оставил на ночь, пока спал, рендер завершился за 2-2,5 часа.
Вечером сделаю пару последующих рендеров и если ошибок не будет, отпишусь в чем было дело.
если собираетесь программировать ...
хорошими делами прославиться нельзя
честно, не вникал сильно, было взято отсюда
https://daz3d.ru/rendering-kartinok-na-slabom-kompyutere
Благодарю!
"Compute_0" в моём случае.
хорошими делами прославиться нельзя
В общем причина проблемы вчера была найдена.
Забыл описать одну как оказалось важную деталь: в начале рендеринга помимо периодического перехода с GPU на CPU, так же происходил вылет DAZа c "Fatal Error", это происходило редко, поэтому посчитал, что глючит DAZ, а не сцена.
Во время последних проб вспомнил, что ранее, на одном из первых рендеров было тоже самое (вылет DAZа c "Fatal Error"), и в этих сценах был общий объект.
Удаление объекта из сцены полностью устранило проблему (как c "Fatal Error", так и с переходом с GPU на CPU).
Сегодня все рендерится в нормальном режиме, без ошибок.
Всем спасибо.
Шо за об'ект???
хорошими делами прославиться нельзя
Персу мужику добавил волосяной покров на руки и грудь. Этот волосяной покров закрывался одеждой, кроме рук (внешней стороны ладоней), поэтому собственно и оставлял его.
Как я понимаю, получилась какая-то ошибка при пересечении одежды с волосами.
Забавный так-то опыт))
А так - всё, что не видно в сцене- нафиг. Это в конечном итоге ускоряет рендер...
хорошими делами прославиться нельзя
итак...
там получилось что волосы шли от ладоней по локоть, ладони соответственно открыты, выше одежда.
Мне вот что интересно. Вчера весь день смотрел на загрузку видеопамяти и что увидел.
Daz фактически грузит сцену дважды, первый раз в viewport, а потом при рендеринге.
Соответственно на мои 6 Гб, сцена может быть не более 2,5-3 Гб, т.е. коэффициент эффективного использования видеопамяти = 0,5
Почему Daz при рендеринге не использует то, что уже загрузил?
Вот вот - при превью в режиме IRAY рендер вылетает на проц (у меня)....
хорошими делами прославиться нельзя
Надо будет поискать почему так память используется, интересно...
У вас 6 гигов, у меня 2, так что ...впритык на протрет при современном контенте.
хорошими делами прославиться нельзя
Ещё по поводу рендера на проце, он действительно в 10 раз медленнее или у меня что-то не так?
модель Gen8 HD, одежка и уже все...
я месяц как видеокарту обновил, стояла gtx580 на 1,5 Гб, это совсем печаль.
Страницы