- PVSM.RU - https://www.pvsm.ru -
С недавних пор начал пользоваться сервисом MEGA [1].
Интересен тот факт, что организация располагает не только своими дата-серверами. С компанией можно сотрудничать, предложив свои дата-центры (соответствующие определенным требованиям) для хранения информации пользователей в зашифрованном виде.
Но, наряду с хранением информации, будет не менее полезным для нас сервис облачно-распределенных вычислений, и в частности, рендеринга.
В идее нет ничего необычного. Я далеко не первый, кому эта идея пришла в голову.
Но делюсь я своими соображениями, потому что считаю, что подобный сервис будет многим очень полезен.
Итак, что такое «рендеринг»? Рендеринг [2] — это вычислительный процесс, в ходе которого, мы получаем красивую картинку по 3д модели с помощью программы «рендера».
Что такое «распределенный»? Это когда хранение или вычисление данных распределяют между множеством компьютеров или серверов, объединенными одной сетью (см. распределенные вычисления [3]).
Распределенный рендеринг — вычислительный процесс, по созданию изображений, распределенный между компьютерами. Вычисления также могут на себя брать облака [4].
Какой смысл?
Стороны
В роли инициатора, работника и зрителя может выступать один и тот же человек. Инициатор может быть зрителем, работник зрителем, инициатор работником.
Какова концепция программы?
Какую вычислительную платформу использовать?
CPU + GPU. На мой взгляд, GPU рендеры уже достаточно хороши для того, чтобы использовать их, как платформу для рендеринга, наряду с процессорами x86-64. Преимущество — скорость вычисления. Однако, написание программы на GPU имеет ряд недостатков:
Для того, чтобы поддерживать большую часть оборудования, я считаю нужным использовать OpenCL или шейдерный язык GLSL. Вычисления на шейдерах выполняются существенно быстрее (видео [11] о вычислении физики мягких тканей), к тому же, на шейдерах уже есть рендер RenderBRO [12] (использует HLSL).
Я считаю, что GLSL версии 4 (и более) является лучшей платформой для создания рендера, потому что:
Если задача на GLSL не будет выполнимой вообще — можно попытаться сделать рендер на OpenCL ;)
Область применения:
Я считаю, что основной областью применения подобного рендера является ДЕМОНСТРАЦИЯ идеи кому-либо в трехмерном виде. Допустим, человек хочет себе заказать машину, или ремонт в квартире. У него будет возможность «пройтись по квартире», посмотреть свою машину со всех сторон, в любом окружении, в любых цветах, сидя дома, за «бабушкиным компьютером», телефоном или планшетом.
Человек нарисовал дом в SketchUp, к примеру — у него появится возможность отрендерить его с помощью видеокарты соседа-геймера. В этом суть.
В заключении хочу добавить, что существует немало задач, требующих много вычислений. Рендеринг — лишь одна из множества вычислительных задач, которая может быть распределена между компьютерами.
Вот так. Ищу единомышленников.
Спасибо за внимание.
Автор: Marchevsky
Источник [13]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/oblako/29216
Ссылки в тексте:
[1] MEGA: https://mega.co.nz/
[2] Рендеринг: http://ru.wikipedia.org/wiki/%D0%A0%D0%B5%D0%BD%D0%B4%D0%B5%D1%80%D0%B8%D0%BD%D0%B3
[3] распределенные вычисления: http://ru.wikipedia.org/wiki/%D0%A0%D0%B0%D1%81%D0%BF%D1%80%D0%B5%D0%B4%D0%B5%D0%BB%D1%91%D0%BD%D0%BD%D1%8B%D0%B5_%D0%B2%D1%8B%D1%87%D0%B8%D1%81%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F
[4] облака: http://ru.wikipedia.org/wiki/%D0%9E%D0%B1%D0%BB%D0%B0%D1%87%D0%BD%D1%8B%D0%B5_%D0%B2%D1%8B%D1%87%D0%B8%D1%81%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F
[5] unbiased рендеринг: http://habrahabr.ru/post/142003/
[6] OpenCL: http://ru.wikipedia.org/wiki/OpenCL
[7] CUDA: http://ru.wikipedia.org/wiki/CUDA
[8] FireStream: http://ru.wikipedia.org/wiki/AMD_FireStream
[9] GLSL: http://ru.wikipedia.org/wiki/OpenGL_Shading_Language
[10] HLSL: http://ru.wikipedia.org/wiki/HLSL
[11] видео: http://youtu.be/aJCcqa87ZsQ
[12] RenderBRO: http://renderbro.com/
[13] Источник: http://habrahabr.ru/post/172473/
Нажмите здесь для печати.