Vray RT 3.0 - Настройка. Быстрый рендер налету в 3Ds Max
Опубликовано: 04.04.2017
Обычно, одно с другим несовместимо (ведь компьютер занят и всё страшно тормозит). Но вывернется можно.
Я не буду тут рассматривать лучший вариант работы на другом ("запасном") компютере, как это рекомендует делать гуру VFX - Allan McKay. Также не буду рассматривать вариант использования галочки Low thread priority в настройках V-Ray (она гласит ВиРею использовать маленький ценность логических ядер при рендеринге).
Я расскажу о том, как забираю ядра (логические) у процесса, который рендерит (у меня это 3dsmax.exe, а у вас это может быть что-угодно - Maya, Houdini...). Таким макаром, я могу расслабленно работать, а компьютер продолжает рендерить сцену на оставшихся ядрах.
Далее я расскажу как это можно сделать более-менее автоматом.
3DsMax для начинающих - Урок 3. Рисуем рукоятку вело-тормоза
Например, поставил я анимацию на рендер. Но оперативки еще осталось довольно, так что можно запустить еще что-то (Photoshop, движок Unreal либо другой 3ds Max) и поработать наряду с рендером.
Если необходимо только поглядеть видеоуроки (чтоб повысить свою квалификацию, пока идёт рендер) либо почитать их, то, часто, это можно делать и без отбирания ядер у Макса.
Если же FullHD видео с YouTube всё же тормозит, то я забираю одно логическое ядро. Если наряду с рендером я работаю в другом 3ds Max либо Фотошопе, то я отбираю два логических ядра.
Если открыть Windows Task Manager (Диспетчер задач Windows раскрывается если надавить Ctrl+Shift+Esc) и кликнуть правой кнопкой мышки (ПКМ) по процессу 3dsmax.exe, то выпадет меню, где необходимо надавить Set Affinity...
Раскроется окошко, как на большей картинке, где можно снять галочки с тех логических ядер, которые вы желаете высвободить. В принципе, без различия какое конкретно вы высвободите ядро.
Может быть, вы недоумеваете, почему я всё время говорю "логические ядра" заместо просто "ядра". Всё дело в том, что у меня всего 6 ФИЗИЧЕСКИХ ядер, но благодаря технологии Hyper-threading, каждое физическое ядро делится на 2 логических ядра (для улучшения мультипоточности).
Сейчас все ядра, не считая тех, которые вы освободили будут пахать над рендером, а свободное ядро будет стопроцентно в вашем распоряжении.
Как вы окончили работать за компютером (допустим, пришло утро и вы решили, что пора и отдохнуть), а рендер еще длится, то вы сможете снова поставить все ядра в работу.
Итак вот, чтоб не делать всё это ручками (всякий раз открывать таск менеджер, кликать ПКМ по процессу, выбирать ядро, жать OK, закрывать таск менеджер, а позже снова вся эта процедура, когда необходимо возвратить все ядра в работу), я сделал для себя 3 батничка.
Батничек - это так именуются исполняемые файлы винды с расширением *.bat. Это что-то типа скриптов под Windows.
Необходимо только сделать обыденный текстовый файл (*.txt) и поместить туда код:
Где вы гласите оболочке PowerShell взять процесс 3dsmax и назначить ему ядра, номера которых в сумме дают 2047.
Логика тут такая, что каждое ядро - это разряд двоичного числа (кажись верно написал :)). А в десятичной системе это будет смотреться так:
Core 1 = 1
Core 2 = 2
Core 3 = 4
Core 4 = 8
Core 5 = 16
Core 6 = 32
Core 7 = 64
Core 8 = 128
Core 9 = 256
Core 10 = 512
Core 11 = 1024
Core 12 = 2048
И если вам необходимо включить ВСЕ 12 ядер, то необходимо просуммировать все эти числа:
2048+1024+512+256+128+64+32+16+8+4+2+1=4095
Если необходимо включить только 11 из их, то подставить необходимо сумму в какой нет подходящего слагаемого (подходящего номера ядра).
Например, если необходимо ВЫКЛЮЧИТЬ ТОЛЬКО двенадцатое ядро, то сумма будет смотреться так:
1024+512+256+128+64+32+16+8+4+2+1=2047
Дальше берём этот текстовый файл и меняем у него разрешение *.txt на *.bat.
Всё, два раза кликаем на нём, как на обыкновенной программе, и проверяем в диспетчере задач, что всё работает.