Пользователь, дизайнер
0,0
рейтинг
23 апреля 2012 в 14:47

Разработка → Nvidia для профессиональных 3D приложений

Пол года назад я искал себе видеокарту, на которой я смог бы заниматься 3d моделированием, и рендерингом на GPU. В связи с появлением на рынке большого числе рендеров на CUDA мне не терпелось приобрести видеокарту с поддержкой CUDA, а именно Nvidia.

Как некоторые уже знают, Nvidia выставляет на продажу видеокарты нескольких моделей Geforce, Quadro, Tesla, ION, Tegra. В этом коротком сравнении упустим ION и Tegra, т.к. предназначены для мобильных устройств и слабые по производительности.

Нам нужна мощь!

Nvidia power...



ЧТО ГОВОРИТ ПРОИЗВОДИТЕЛЬ

Geforce — видеокарты, ориентированные на потребительский рынок и на геймеров, в частности.
Если вам интересны игры — Geforce лучший вариант для этого.
Видеокарты лучше всего показывают себя в играх, имеют высокие частоты, не дороги, наиболее прожорливы при нагрузке.
В качестве общих вычислительных задач (Cuda, OpenCL) жефорсы упоминаются достаточно редко.
Имеет PhysX, именуемый крутейшим аппаратным решением по ускорению физики.

Досуг обладателя Geforce (Battlefield 3).

Quadro — видеокарты для пользователей профессиональных приложений 2D и 3D.
Если вы занимаетесь с пакетами 3д моделирования, CAD, сложной векторной графикой — то Вам подойдет Квадра.
Сложные модели на экране рендерятся быстрее, меньше «рывков».
Квадры, сравнимые по производительности с Жефорсами в играх будут в несколько раз дороже.
На картинках сайта nvidia можно увидеть уже больше Куды, чем на жефорсах.
То бишь, видеокарты профессиональные, даже вычислениям общего назначения быть!

Работа обладателя Quadro (Autodesk Alias Studio).

Tesla — вычислительные системы для научных и технических вычислений общего назначения.
Тут во всю рекламируется CUDA, как крутейший инструмент вычислений общего назначения. Всюду плакаты с аэродинамическими вычислениями, воксельным сканнированием человеческого тела, графические модели нагрузок, и нереально быстрый рендеринг на iRay.
На Tesla отсутствуют видеовыходы, так же как и нету аппаратной растеризации: не работает ни OpenGL, ни DirectX.

Работа обладателя Quadro + Tesla (Quadro — 3d графика, Tesla — молекулярная динамика).
***

НЕБОЛЬШОЕ ИССЛЕДОВАНИЕ

Когда начал разбираться в их различии, был удивлен тем фактом, что видеокарты GeForce, Quadro, Tesla используют одинаковые графические чипы.
Рассмотрим видеокарты с одинаковым, уже не самым новым, чипом GF100 имеет (512 CUDA ядер):

Одночиповые:
GeForce: GTX465, GTX470, GTX480
Quadro: 4000, 5000, 6000
Tesla: C2050, C2070, M2050, M2090

Рассмотрим по одному представителю с каждого семейства поподробнее.

GeForce GTX480
Некогда топовая игровая видеокарта.
Стоимость: на момент выпуска около 500$ (сейчас бу и за 300 видел), на данный момент не выпускается (на смену пришли GTX580 512 ядер, и GTX680 1536 ядер)
Количество ядер CUDA — 480.
Объем памяти 1.5 Gb.
Производительность float:
Одинарная точность: 1344,9 Гфлопс.
Двойная точность: 168,1 Гфлопс.
(Существует более урезанная версия GTX470, сейчас можно найти по цене меньше 250$, 448 ядер CUDA, 1.25 Gb)

Quadro 5000
Одна из лучших видеокарт для профессиональных приложений.
Стоимость: по данными Amazon около 1700$. Выпускается.
Количество ядер CUDA — 352.
Объем памяти 2.5 Gb.
Производительность float:
Одинарная точность: 718.08 Гфлопс.
Двойная точность: 359.04 Гфлопс.
(Стоит обратить внимание на Quadro 6000, 448 ядер, 515 Гфлопс двойной точности, 4000$)

Tesla C2075
Стоимость: по данными Amazon около 2200$. Тоже выпускается.
Количество ядер CUDA — 352.
Объем памяти 6 Gb.
Производительность float:
Одинарная точность: 1030 Гфлопс.
Двойная точность: 515 Гфлопс.

Что мы видим?
Заметим, что по float производительности выигрывает GeForce GTX480. Причиной тому самое большое количество рабочих ядер и самые высокие частоты среди аналогов. Это нужно для преобразования координат объектов в играх, расчета теней, расчета пиксельных и вершинных шейдеров. В конечном итоге — чтобы игра «летала».
Но, чтобы для научных исследований, моделирования динамики жидкостей и газов покупали Теслы и Квадры — в двойной точности производительность сильно урезана, и уступает аналогам.
Соотношение производительности:
GeForce: double/float — 1/8
Quadro и Tesla: double/float — 1/2
Кроме того, самым малым объемом памяти обладает тот же GTX480. Для игр достаточно, но если хотите провести расчет аэродинамики — покупайте что-то посерьезнее.
***

ЧЕГО НУЖНО?
(Людям, занимающимся 3d графикой)
1. Поменьше тормозов во время редактирования 3d модели.
2. Некоторых интересует возможность быстрого рендеринга на GPU.

3D производительность GeForce vs Quadro
Из информации изложенной выше может показаться, что профессиональными приложениями на GeForce не пользуются из-за того, что имеет малый объем памяти, но это не так.
Ролик покажет Вам, почему «плохая Квадра» лучше «хорошего Жефорса» в профессиональных приложениях.

Quadro 600: 1Gb, 96 ядер CUDA, 150у.е.
GTX560Ti: 1Gb, 384 ядра CUDA, 250у.е. (Цены взяты из Amazon)
Выходит, Nvidia тщательно следит, чтобы 3d производительность в профессиональных приложениях Geforce уступали Quadro при соизмеримых ценах.

Как могут быть реализованны тормоза во вьюпорте?
Дело в том, что количество полигонов в играх существенно меньше, чем у профессионалов в профессиональных приложениях. В играх редко доходит до одного млн полигонов, а в профессиональных — десятки миллионов.
Тут можно сделать так: урезать производительность при преобразовании координат вершин. Если вершин больше определенного количества — то поставить задержку перед отрисовкой последующих вершин.
Либо установить задержку при отрисовке треугольников. Если больше определенного количества — то поставить задержку перед отрисовкой каждого последующего треугольника.

Маленькое лирическое отступление, или Nitrous в 3ds Max.
Меня ввел в заблуждение Nitrous движок в 3ds Max, который стоит рядом с OpenGL и DirectX. Это как? В Autodesk есть что-то, что вызывает Нитрос, аппаратная поддержка которого, оказывается, есть на каждой уважающей себя видеокарте, но знает о ней только 3Д Макс?

Ну, можно составить небольшую логическую цепочку. Autodesk является богатой корпорацией, и в хороших партнерских отношениях с производителями ATI и Nvidia. Повышать нужно продажи своего детища же! А как бы заинтересовать потребителей? Производительностью же!

Итак, GeForce GTX580 (да, купил я именно её), 7.3 млн треугольников, 2560 Torus Knot-ов, без теней и без Adaptive degradation.

Nitrous — 42 fps; Direct3d — 13 fps; OpenGL — 2 fps.

OpenGL — тормозит. DirectX — намного лучше. А Nitrous — круче всех, оказывается! Что же нитрос тогда?
Два варианта:
1. Это OpenGL/DX в котором убраны дополнительные тормоза во вьюпорте, созданные умышленно в OpenGL/DX режимах.
2. Это OpenGL/DX, который умеет обращаться к аппаратным функциям игровых видеокарт, и проявлять в них квадровые способности!
И я склонен именно к 2 варианту, т.к. в Blender и в Rhino3D это же самое дико тормозит (2fps).
Выходит, пользователям 3ds Max и других продуктов Autodesk вовсе не так принципиально переходить на Квадру? К сожалению, у меня нету Квадры, чтобы проверить производительность Нитроса по сравнению с OpenGL.

Если же у Вас GeForce или Radeon, нет желания раскошелиться за Квадру, вы Не пользуетесь продуктами от Autodesk, и у Вас очень сложные модели, то:
1. Сложные объекты можно скрыть. Объекты можно показывать во вьюпорте с меньшей плотностью сетки.
2. Вместо объектов можно показывать «контейнеры», их содержащие.
То есть следить за количеством полигонов в вьюпорте, если у вас действительно «тяжелые» модели.
Зато в игры нормально поиграете.

GPU рендеринг
Поскольку коммерческие производители не рассказывают о том, какие типы данных (float или double) они используют — приходится только догадываться.
iRay везде показывают с Quadro и Tesla, может создаться впечатление, что iRay вообще не работает с GeForce.
image
Картинка с оф. сайта nvidia.
Но нет, работает, и еще как. Казалось бы, что может быть лучше для не-графических вычислений, чем видеокарта Tesla, специально заточенная под не-графические вычисления?
image
(Взято с поста: «V-Ray и Iray. Сравнение и обзор»)
GeForce GTX580 является самой быстрой одночиповой видеокартой в iRay рендеринге на GPU. И значительно дешевле «серьезных» аналогов такой же производительности. А если вам не хватает 1.5Гб, существуют GTX580 с 3Гб памяти.
При использовании V-RayRT, Octane, Cycles, Arion также лучше всех себя показывают видеокарты GTX570 и 580. Выходит, все эти рендеры не используют расчет двойной точности для рендеринга?
В любом случае, если вы хотите рендерить на GPU — на GeForce вы сможете хорошо сэкономить.

GTX680
Но корпорация заметила, что для вычислений все чаще начали брать GTX580, производительность double в GTX680 уступает float не в 8 раз, а в 24, что не могло не отразиться на некоторых тестах.
Известно, что в Octane Render производительность возросла на 64%.

ATI Radeon vs FirePro
Аналогично Nvidia, корпорация AMD тоже разделила модели видеокарт. Radeon (аналог GeForce), FirePro (аналог Quadro), FireStream (аналог Tesla). Производительность вычислений с плавающей точкой двойной точности уступает одинарной в 4 раза, во всех моделях ATI. Интересно, что производительность топовых игровых видеокарт ATI (Radeon HD 7970, float — 3.79 Тфлопс, double — 947 Гфлопс) превосходит в двойной точности даже одночиповые Tesla. Надо заметить, что производительность в флопсах, не всегда является показателем производительности железа в конкретных случаях.
Причина, по которой ATI сильно уступает Nvidia на рынке GPGPU мне пока не ясна. Может, игрового сегмента вполне хватает.



Выбор?
Я выбрал GTX580 3Gb. Видеокарта дает возможность насладиться новыми играми и производительностью GPU рендеров. А тормоза во вьюпорте пакетов 3d моделирования для меня не сильно критичны.

Автор статьи с уважением относится к этому производителю, и сам является счастливым обладателем карточки Nvidia.
Подобные маркетинговые ходы являются неотъемлемой частью рыночной экономики, к ним прибегают все производители без исключения.
Но все же, не будем же вестись на маркетинговые уловки корпораций, а вдумчиво покупать то, что действительно полезно для нас!


UPD: спасибо ForhaxeD, Funcraft, podwhitehawk за найденные орфографические и грамматические ошибки.
Станислав Марчевский @Marchevsky
карма
40,0
рейтинг 0,0
Пользователь, дизайнер
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Спецпроект

Самое читаемое Разработка

Комментарии (35)

  • 0
    Воображаю как было бы круто запилить гфорс и квадру в сли и переключать в зависимости от задачи
    • 0
      Мне кажется, они так работать не будут.
      Мне было бы интересно сделать из Жефорса Квадру, только обычно это заканчивается плачевно. И я не настолько богат, чтобы пытаться попробовать.
      • 0
        На студийном рендере квад и GeForce вместе на SLI — никто не жалуется.
        • 0
          А они в SLI подключены? Просто ж вроде, чтобы использовать куда на нескольких девайсах, SLI отключать надо, или я путаю что?
      • –1
        Работать могут, в принципе.
        Если у вас проф. приложение на OpenGL, то вы можете в панеле управления выбрать обработчиком OGL квадру, а в играх GF. К сожалению работать с DirectX такое не будет.
  • +1
    Посмотрите ещё NVIDIA GeForce To Quadro Soft-Mod Guide.
  • –1
    Из ссылки к статье видно, что при сопоставимой цене GTX580 на голову уделывает своего ближайшего противника HD 5870 в тесте на рендер через DirectX.

    Так что не в терафлопсах дело, а у мении ими распорядиться

    image

    Ну и вот еще один говорящий тест:

    image

    • 0
      Согласен, чет не обратил внимание.
    • +3
      а почему вы сравниваете GTX 580 и HD 5870, а не HD 7870, скажем, чтобы хоть и там, и там брать последние поколения?
      • +4
        да, сравнение странное, потому что рыночный конкурент 580 — 6970, а не 5870
        • –2
          Соседа по цене брал.
          Теперь увидел что и шестерки довольно дешевые есть.
          Но GTX рвет и шестерок без проблем.

          Кроме того, если я не ошибаюсь, HD 6xxx — это разогнаная версия 5 серии.

          В тестах это хорошо видно — сколько проц не разгоняй, архитектурные ограничения не дают получить качественный скачок производительности
          • 0
            Ошибаетесь. 6ххх серия среднего и высшего уровня архитектурно отличаются от предыдущего поколения. У 5ххх была архитектура VLIW5, тогда как у 6ххх — VLIW4. Кроме того в 6-й серии заметно усилили производительность тесселяции.
            Лично у меня был и 5870, и 6870 сейчас (он даже медленнее), но их мне хватает выше крыши для игр. Кроме того, есть различия в качестве рендера у NV и AMD/ATI. Юзал и те, и другие карты. «Красные» лично мне больше понравились в режимах 16 AF + 4AA
  • –9
    Nvidia для профессиональных 3D приложений, блаблабла, мы чето тестим, графики, итог — Я выбрал GTX580 3Gb. Браво.
  • 0
    А я купил себе б/у 285 GTX о которой мечтал с самого ее появления. Что странно, она до сих пор на равных тягается с нынешними карточками. Уделывая 560Ti как стоячего. Новые игры идут на максималках. При рендере с той же CUDA никакого дискомфорта не испытываю. И в конечном итоге убедился что лучше поставить 2x285 за 6000 рублей чем покупать 580 GTX за 15-20 тысяч
    • +1
      и да, без каких либо тормозов во вьюпортах.
      • 0
        Кстати, вполне возможно, что старые карточки меньше ограничены в производительности вьюпорта, чем новые.
    • 0
      идеальная карта для хакинтоша, проверена годами работы
      • –2
        Идеальная карта для хакинтоша в настоящий момент AMD 6870 = 6970M в топовом iMac.
        Кроме того, LeeMiller явно заблуждается: 560Ti заметно превосходит 285GTX во всех отношениях.
        Из тестов на вскидку в среднем 285GTX < 5870 < 560Ti.
        Но что правда — реальной необходимости в новых видеокартах нет, пока не обновится поколение консолей.
        • 0
          Господа, в чём из сказанного я хоть раз ошибся? Я слежу за этой темой уже много лет.
      • 0
        Меня Corel останавливает от перехода на мак и хак в том числе. А вообще наслышан о хакинтошах на GTX
    • 0
      А как же шум, энергопотребление и температура?
      • 0
        Вы не поверите но за почти год использования, я услышал ее рёв всего на 1 игре. Это недавновышедший в Warface от Crytek. Хотя на Crysis 2/NFS/Mass Effect 3/Diablo 3/Battlefield 3 и прочих, на полных настройках ее вообще не слышно. Как будто ее вообще нет.

        Тоже касается и рендера.
        Вообще самый громкий у меня получается HDD.
        А вот в таком корпусе она стоит (Zalman z9+)
        • 0
          А питание ей какое нужно, не подскажете?
          А то я как раз задумался об апгрейде)
          • 0
            Она старая для апгрейда =) ну или я бы сказал — она самое оно, для извращенного апгрейда.

            Да и найти их довольно сложно. А по питанию читайте тут.

            У меня стоит 500W. Мне хватает.
  • +1
    Мои 3шт 6990 в одном компьютере мне уже порядком надоели :-)
    Ни одной игрушки правда ни разу так и не запустил
    • +1
      Пароли ломаете?
      • +1
        Это дело я уже оставил :-) Все банально… bitcoin-ы :-D
        • +2
          И как, окупает хоть счета за электричество (+ кондиционер летом)?
          Просто пытался с этим делом связаться, по-моему эти копейки не окупают ни затрат на электроэнергию, ни амортизации.
  • 0
    Не так давно Jeff Patton показывал, как работать с iray: Quick intro to iray in 3ds Max — профи высокого полёта, что уж говорить, две теслы и quadro 6000. Просто для информации и позавидовать чтоб.
    • 0
      Товарищ, я не завидую, но человек, можно сказать, очень хорошо поддержал производителя.
      То же самое можно сделать в Blender + Cycles с игровой карточкой. iRay — это разрекламированный продукт.
  • 0
    Спасибо за заметку, но как-то однобоко, согласитесь. На исследование не тянет. Уже бы поделились нами и результатами AMD-видеокарточек. А дело в том, что сам движок Nitrous на базе Direct3D и отлично работает на игровых видеокартах. Более того, на Radeon'ах он работает быстрее. И намного. На 5770 скорость, как у вас на 580 GTX. На 6950 — в 2 раза выше. 60 фпс во вьюпортах на мониторе в 2560х1600 пикселей. Единственное, чего Radeon'ам недостает — так это CUDA — но реально мало плагинов к тому же Максу ее используют.

    Я к чему… AMD карты почему-то даже не рассматриваются, и совершенно зря — у них за ту же цену и выше производительность во вьюпортах, и больше памяти и т.п.

    Так что маркетинговый отдел NVidia хорошо постарался, что AMD даже не воспринимают обычные 3д-ники за видеокарты…
    • 0
      Совершенно согласен на счет Радеонов.
      Получилось однобоко, т.к. купил то я Жефорс (из-а Куды), и испытывал все на нем.
      Но разве я где-то указал, что Нитрос Радеоны тянут хуже? Мало того, у АТИ ведет себя более порядочно на рынке. Если бы все использовали ОпенЦЛ, который был бы оптимизирован под любое железо — я бы брал Радик, из-за превосходства в производительности при соизмеримых ценах.
      • 0
        Кроме того Autodesk очень неплохо внедрила расчеты Physx в свои решения. Те-же самые Apex Tools, детище Nvidia, используют Cuda, а это очень неплохая замена для Reactor… Physx там считает очень так бодро сцены, которые Reactor даже открывать не пытается =))… Собственно только по этой причине я слез с Radeon'ов в пользу Nvidia…

        А вообще если позволяют деньги и руки, плюс есть такая необходимость — никто не мешает поставить Radeon для вьюпорта и к нему воткнуть Жирафа (Geforce) как Physx рассчетную карточку =)))

        (вот только давно не мониторил что там с такой возможностью, когда то давно Nvidia закрывали/открывали такие возможности).
  • +1
    Когда работал в дизайн студии имел возможность на реальных приложениях сравнить Nvidia Geforce и Nvidia Quadro. Geforce мой домашний — gtx 580, модель Quadro к сожалению не помню, но точно она была из линейки на чипах линейки geforce 4xx серии, только ядер куда там 380, кажется было или около того.
    Меряли мы производительность видео карт при отображении разнообразных сцен (одни и те-же сцены с разным наборов ViewPort шейдеров). Сцены запускались на проигрывание анимации и замерялись ФПС.
    Режимов тестирования было 3: Wireframe, SmoothHighlight и EdgedFaces.
    — в случае Wireframe выигрыш был на стороне Quadro, причем в несколько раз (в 2-4 раза в зависимости от сложности).
    — в случае SmoothHighlights Quadro местами шла на равне, местами отрывалась вперед.
    — в случае EdgedFaces Quadro в 1.5 раза опережала обычный Geforce.

    НО!!! для того чтобы Quadro показала такие результаты — необходимы было с сайта NVIDIA скачать специальный драйвер, который подсовывался 3Dsmax в окне выбора Directx/OpenGl/CUSTOM.

    При выборе же обычного режима? Quadro вела себя как обычная игровая карточка соответствующего ей уровня (460 — 470 Geforce)

    Кроме того на тот момент мы рассматривали в VRay возможность рендеринга на видеокартах. Рендеринг сей проходил на ядрах CUDA. полностью описывать нет смысла, скажу только что скорость рендеринга там показала себя в линейной зависимости от количества таковых ядер, соответственно GTX 580 с 512 ядрами CUDA ушел в отрыв.

    На тот момент у меня появилось дикое желание посмотреть КАК с помощью драйвера под ViewPort Nvidia Quadro ускоряет свою работу, и заполучить таковую возможность для обычных видеокарт =))) (тупо конечно, но ооочень хотелось)
    • 0
      спасибо, очень интересно!

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