Заметки Стаса: ЗЕЛЁНЫЙ КОММУНИЗМ СКОРО…

В видеоформате можете ознакомиться с материалом на YouTube-канале.

Недавно, я снимал для Ануара подкаст с создателем  ”Русской Кибердеревни’’. Это видео взорвало социальные сети, причём не только российские. И представьте себе моё удивление, когда оказалось, что все эффекты, ещё 7-10 лет назад казавшиеся шагом вперёд даже для Голливуда, сделали простые самоучки.

А помните историю с удалением усов Генри Кевилла за 25 миллионов долларов? Ну, это когда потом энтузиаст сделал тоже самое, и ему это обошлось всего в 300$ (♂three hundred bucks♂)… А затем другие ребята их вернули совершенно бесплатно. До этого они, кстати, сделали крутую версию Гарри Поттера (18+). И прикол в том, что у каждого, кто смотрит это видео, есть всё, чтобы сделать спецэффекты не хуже голливудских. А, может, даже и лучше.

Всё, что для этого нужно – компьютер с мощной видеокартой, курсы с Youtube и немного усидчивости. Всё. И, честно говоря, это как-то вдохновляет.

Хотя нет, забыл,  есть ещё одна проблемка, цены на видеокарты, но хочется верить, что это ‘’Веременые Трудности’’.

И даже, если денег на видеокарту нет, не беда. Сейчас существует много сервисов, которые дают вам в аренду виртуальные машины с видеокартами NVidia Tesla.

А вообще – нейронные сети и искусственный интеллект уже сегодня дают нам невероятные просторы для творчества. Один человек теперь может иметь подспорье в видео целой команды специалистов в любой области… А всё потому, что видеокарта это – “государство в государстве“.

Видеокарта в наше время сама стала отдельным компьютером, ведь это отдельный чип, отдельная подсистема питания, охлаждение и память. Но так было не всегда.

На этапе зарождения ПК – в 70-х годах,  видеокарт как таковых  не существовало. Как и всяких там графических интерфейсов, люди просто писали команды, процессор их исполнял и всё. Рекомендую ознакомиться со старым роликом на канале на эту тему.

Но когда операционные системы с красивыми (ну или не очень, см. картинку выше) графическими интерфейсами начали активно распространяться, инженеры придумали крутую штуку: переложить задачу по рендерингу, тобишь, отрисовке всей этой красоты, на сопроцессор.

То есть, отрисовывать интерфейс вашей системы теперь будет отдельный процессор.

Так и появились 2D-акселераторы. И все такие “а давайте 3D-акселераторы сделаем”. А производители железа такие – ”А нафига? Для игр не надо, они все двумерные, интерфейс операционки тем более!”. А в 1996 году поняли ”нафига’’: вышла полностью трёхмерная Quake. Как это всегда и бывает при появлении чего-то нового производители поделились на два типа. Одни сказали “да какое ваше 3d? Это просто баловство.” Вторые, наоборот, считали, что за этим будущее и компьютерные игры вообще топчик, особенно в 3D!

Думаю уточнять, что, сконцетрировавшиеся на 2D, компании разорились, не нужно. Не вложиться в 3D тогда это тоже самое, что не вложиться в Биткоин до Мая 2013. Чёрт подери, ну чем же я тогда думал…

Шло время, и на видеокарты перекладывали всё больше и больше задач.

Например, nVidia одними из первых реализовали поддержку аппаратного кодирования и декодирования видео в высоком разрешении силами отдельного вычислительного блока на видеокарте. Это позволило снизить нагрузку с процессора при компрессии и декомпрессии видео. Такой же подход использовался и улучшения картинки в играх. Отдельные чипы на видеокарте отвечали за выполнение отдельных задач, например шейдерные процессор. И вот, к нашему 2021-му году можно без преувеличения сказать, что современные видеокарты это компьютеры внутри компьютера.

Как я и говорил, отдельный чип, отдельная подсистема питания, охлаждение и память. И технологие, которые в первую очередь добавлялись для улучшения графики в играх в итоге находили применения и в других областях.

Но бывали и другие случаи.

Например, Cuda. Популярность видеокарт у геймеров сделала их дешевле специальных научных процессоров. Видеокарты — массовый продукт, а не единичный. Было тяжко, неприятно и больно. К счастью, NVIDIA услышала мольбы и создала CUDA, специальный интерфейс для доступа к чипу. Можно было и раньше проводить вычисления и с API OpenCL, и сейчас можно с помощью данного API, а также API Vulkan на Windows/Linux или API Metal на macOS (MoltenVK в этом плане не проверял) проводить специализированные вычисления, но это намного менее эффективно, чем с API CUDA. Такую, заднюю дверку для серьезных людей, для ученых создали NVidia. Увидев такую возможность, в эту дверь ринулись не только учёные, но и видеомонтажёры, 3D художники и все остальные. Да уж как учёным только не приходилось извращаться, чтобы продолжать исследования.

Но прогресс продолжает оголтело нестись. Уже три года nVidia создает видеокарты, в которых с обычными ядрами соседствуют, так называемые, тензорные ядра.

Вот все эти нейросети, машинное обучение и вот это всё, и работает на тензорных ядрах, и это позволяет нам совершать какие-то просто невообразимые вещи.

Раньше, чтобы убрать усы Генри Кевилла вам пришлось сперва убрать их на одном статичном кадре, после чего заплатить пару сотен баксов и переложить вычисления на огромный вычислительный кластер, который находится в другой стране. Потому, что ваш собственный компьютер выполнял бы это лет так сто.

Сейчас же куча школьников, просто шутки, ради делают дипфейки. Особенно забавно актёра в культовом фильме заменяют на другого, не менее близкого нашему сердцу.

И всё это возможно благодаря отдельному блоку, который есть в вашей видеокарте. Изначально его добавили для просчёта поведения света. Точнее, тензорные ядра добавили, чтобы помочь другим, RT-ядрам. Дело в том, что трассировка лучей это не очередной трюк, а весьма “честная” имитация того, как ведёт себя фотон света в реальном мире. В пределах видимости вашей камеры, конечно же, но да ладно, опустим нюансы.

И на самом деле о трассировке лучшей мечтали очень давно.

Некое подобие трассировки лучей пытались реализовать и в Windows Vista. Может, поэтому она так и лагала.

А вот Intel в далёком 2010 году представляла свою Quake Wars: Ray Traced. Ещё была Quake 2, в которую энтузиаст добавил поддержку трассировки лучей. Подобно тому, как когда-то давно инженеры переложили отрисовку примитивов интерфейса на видеокарту, просчёт поведения фотонов света переложили на отдельные ядра, которые и назвали RT ядрами. Логика была примерно такая же. Ну и согласитесь, круто, теперь у нас “настоящий” свет в компьютерном мире, Матрица не за горами.

Вот только этот цифровой шум. Бееее. А ведь он неизбежен! Это потому, что изображение строится не от источника света, а, наоборот, от наблюдателя к источнику света. И, чем больше у вас лучей лучше, тем меньше шумов будет на картинке.

Так почему бы тогда просто не сделать столько лучей, сколько нужно, чтобы полностью избавиться от зернистости? Да ответ прост, производительности такой нет. Ни у кого такой нет. Ведь, чем больше лучей, тем больше мощности нужно. И вот, когда производительности стало достаточно, чтобы решить эту проблему хитростью, nVidia сделали гениальную штуку. Те самые

Были RT-ядра, сделанные специально для трассировки лучей в реальном времени. Но были шумы. Поэтому nVidia добавили ещё один тип ядер, те самые тензорные, которые на основе шумной картинки, произведённой RT-ядрами, производят новую, уже бесшумную картинку. Простое, гениальное и элегантное решение.

И, как и в случае с Cuda, nVidia убили сразу несколько зайцев.

Ведь это решение давало неслабый буст ещё в нескольких моментах. Например DLSS.

Допустим, Вы запускаете игру в разрешении 4K (2160p), и Ваша видеокарта позволяет играть с частотой 30 кадров в секунду.  А что, если запустить игру в FullHD и, используя нейросети, “дотянуть” картинку до 4K и получить при этом 50-60 FPS? Есть у AMD аналог, FidelityFX, но с ним качество итоговой картинки ниже, т.к. он не полагается на алгоритмы, требующие тензорные ядра.

Вообще, если с играми и трассировкой всё понятно, то тензорные ядра в видеокартах дают просто нереальный буст ещё и в создании контента. Такой нереальный, что становится страшно нужны ли в будущем вообще будут эти создатели спецэффектов, певцы, которых уже неплохо заменяют нейросети.

Нейросети, которые упрощают работу программистам, уже существуют. Дайте им всего пару лет, скоро заменят всех, и люди станут всего лишь батарейками. Так, стоп, признаю, зря пересмотрел первую Матрицу.

Итак, про возможности. Например, Вы сняли видео, как Вы едете на сноуборде, и хотите смонтировать его для тиктока, то есть сделать его вертикальным. Просто нажимаете одну и кнопку и, вуаля, нейронная сеть сама отследила Вас и подстроила отследил Вас на видео.

Это лишь одна из фишек. Я вот одно время намучился с шумоподавление в DaVinci Resolve. Оно убивало мой компьютер. После появления поддержки проведения вычислений на основе нейронных сетей на тензорных ядрах, выполнять эту операцию мой любимый Давинчи стал молниеносно.

Или функция изменения лица. Многие кто видел меня в жизни и знает как я уродлив, задавались вопросом как мне удаётся быть таким красавчиком на видео [Примечание Мориса: Стас слишком самокритичен к своей внешности, всё у него нормально 🙂 ]. Всё просто, используя нейронные сети, я могу изменять своё лицо как угодно. И не смейте стыдить меня за это! На этом весь кинобизнес построен!

Про создание эффектов, помещение 3D-моделей в реальный мир, даже говорить не буду. Это используется при создании спецэффектов, как в киберферме, так и при обрабоке обычного 2D видео, когда с лицом актера можно сделать что угодно.

Да, у человека на фоне нереально громкий пылесос, но используя нейронные сети на своей видеокарте он прямо в режиме реально времени полностью убирает этот шум.

Ещё можно прямо в режиме реального врмени вырезать себя с фона. Не с хромакея, а просто с фона! Нейросеть распознает человека и вырезает его с фона прямо в режиме реального времени. Вы – конченный сноб, если не плакали на этом моменте.

Ещё недавно появился Canvas: Вы просто рисуете от руки какую нибудь белиберду, а нейросеть превращает её в фотореалистичное изображение.

NVidia сейчас – абсолютный доминатор на рынке видеокарт, ей сейчас принадлежат около 80% рынка. Эх, AMD, ну вдарьте им, хотя бы, как-нибудь. Однако, этого, скорее всего не произойдёт. Даже FidelityFX – не совсем то, а, по сути, просто обычный апскейл и, за счёт маркетинга выехать у AMD здесь точно не получится. Я утрирую, конечно, но их алгоритмы куда проще альтернативных у NVidia, им и не требуются для них тензорные ядра.

Так что да, NVidia сейчас – абсолютный доминатор на рынке видеокарт, и данной компании становится тесно. По сути, большая часть современных задач производится при задействовании мощностей видеокарт. Может так случиться, что процессоры вскоре будет нужны постольку-поскольку. Ну, знаете, лишь бы какая-то затычка была. Да, я уже чувствую, как Вы тянетесь закрыть данную статью, но не будьте столь категоричны. Процессор, который принято считать мозгом компьютера, мало чем занимается в принципе, оно и не мудрено.

В топовых процессорах последнего поколения каждый блок CCD по 8 ядер насчитывает по 4,15 млрд транзисторов, т.е. в 16-ядерном процессоре AMD 5000 серии их будет более 8 млрд, тогда как у видеокарты NVidia, скажем, RTX 3080 их насчитывается более 28 млрд.

И вот, казалось бы, жаришка огненная, но скоро ещё может  состояться сделка по покупке компании ARM компанией NVidia, а слухи о первом ARM-процессоре NVidia и без того ходят уже очень давно. TEGRA не в счёт! И даже если покупка ARM не состоится, они могут сделать его по обычной лицензии также, как делали Tegra на ARM.

Так что помяните моё слово, таким образом, nVidia станет самой могущественной компанией в мире. Победить AMD и Intel ей не составит труда, даже не смотря на FidelityFX от AMD.  Процессоры будут свои, а значит выпускать полноценные игровые компьютеры и консоли она сможет, не полагаясь ни на кого. А если добавить к этому ещё и владение ARM, она будет контролировать весь рынок мобильных гаджетов и, если что, сможет диктовать свои условия кому угодно, в том числе и Apple. И вот, зарабатывая, по сути, со всей мировой микроэлектроники в мире, как NVidia дальше будет расширять свою прибыль? Они и так уже каждый год пытаются захватить всё новые и новые сегменты рынка. Так когда же наступит тот момент, когда расти дальше им будет некуда? Может, начнут делать одежду или мегакорпарация, всё-таки, случится раньше и мы все будем покупать товары и работать на единственную в мире компанию, окрасив весь мир в корпоративные цвета производителя видеокарт?

Это, всё лишь, моё предположение, и попытка нарисовать для Вас будущее. Но, знаете что, эта теория мегакорпорации, о которой экономисты спорят уже очень и очень много лет, не даёт мне покоя, сам не знаю почему.



Добавить комментарий

Ваш адрес email не будет опубликован.

stassatori

Видеоблогер.