Про HD7970

Договорился с жабой и купил новую грелку для ног.

Вкратце:

  • OpenCL 1.1, поддерживается, работает. Посмотреть что там за код не получается, Kernel Analyzer не умеет это место.
  • Драйвера: под винды есть, бета, в основной Catalyst не включены (и, похоже, войдут не раньше чем в 12.3 т.е. через два месяца т.к. даже в 12.2-preview поддержки 79xx нет). Драйвера под линукс поискал для проформы (мне не надо) - и не нашел.
  • Сцуко, быстрая. Один и тот же OpenCL-код (написанный с оглядкой на NVidia Fermi) работает в-среднем раза в полтора быстрее, чем на GTX480 (single precision). Предыдущая моя ATI-шная карта, HD5870 была в 1.5-2 раза медленнее 480-й нвидии.

    На примере MatrixMultiplication из AMD APP - быстрее в 4 раза (single).

    С double не все так радужно - нужно явно как-то иначе оптимизировать, а может просто драйвера кривые. На всем что попробовал, 7970 получается непринципиально быстрее GTX480, а на каких-то задачах и помедленнее.

  • Сцуко, холодная. Idle temp 44C, прогреть больше чем до 80 счетным кодом не удалось. Наверное, если получше пооптимизироваться, то удастся подогреть больше. Ноги, короче, не греет.
  • Сцуко, тихая. Ну то есть если вручную вентиляторы поставить на 100%, то громкая, как и любая современная видеокарта со штатным охлаждением, но вышеуказанные 80 градусов были при скорости вентилятора чуть больше 2500RPM, это меньше половины (100% - 5400) и на этой скорости она тихая.
Заодно выяснил, что за тот год, что я туда не заглядывал - AMD'шный гайд по OpenCL стал из вообще никакого - довольно интересным чтением. Сижу, читаю. Про Tahiti там пока мало и невнятно, но какой-то раздел по оптимизации уже есть.

P.S. В игры - не играю, ничего не проверял. С картой был купон на DiRT3, но годный до 31 декабря. Смешно, в продаже они появились за неделю до этого....

P.P.S. Lux Render отчего-то вторую карту не видит, как и 5870 не видел. Все прочие разумные тулзы, вроде clinfo и CPU-Z - видят. Прямо хоть в сорцы лезь....

Comments

А в фшопе от нее прирост есть?

А как померять?

Не говоря о том, что фотошоп видит у меня только первую карту, а это вовсе NVidia.

фшоп ладно, 1с актуальнее

Тут для постгреса сделали ускорение на GPU. http://wiki.postgresql.org/wiki/PGStrom
1С может на постгресе работать?

ну на каком-то работает.
но она и без него умеет ускоряться http://ithappens.ru/story/6407

Чудо природы.

А вот тут спрашивают про это: http://forum-1c.ru/index.php?topic=10842.0

байки

Ну, не знаю, есть же волшебные свойства ускорения OpenGL.

Adobe использует пока только OpenGL, для ускорения перерисовки (при том в большей степени - в Premiere Pro, AfterEffects). Учитывая, какими темпами внедрялся у них OpenGL, дожидаться OpenCL можно будет до CS7, чувствую. При том они достаточно уверены в правильности такой неторопливости.
(Вообще, что с головой у Adobe не очень, стало ясно по сайту, который был поднят перед выпуском CS5. На нем не было ни грамма полезной информации о тех. характеристиках будущего релиза, но были трансляции твиттеров программерских тим-лидов и получасовые видео с мычащими гиками, рассказывающими о процессе разработки.)

Судя по вот этому тексту: http://kb2.adobe.com/cps/405/kb405745.html
кроме показа еще что-то там считается с цветом (Adobe Color Engine)

Результаты временами бывают ужасающие и рекомендуют это дело отключать.

Алексей, а что вы на них считаете?

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

Во-вторых, пока я всякий imaging девелоплю для души, но контуры продукта (с OpenCL-ем внутри), который хочется сделать для народа - в голове уже почти сложились.

Неужели полноценный raw-конвертер?

Пока нечего показать - не о чем и говорить.

уточню из любопытства :) есть спрос на консалтинг:
1)непосредственно вычисления? (т.е. отдают терабайты данных с просьбой "посчитай")
2)..консультирование (назовём для краткости так) . в стиле заказчик "нам нужно решить задачи 1,2,3", ты им, почесав репу: "это в сделаете так и так" и помогаешь им сделать

Вариант 2.

А вариант 1 в чистом виде никогда не встречался, обычно данными очень дорожат, скорее заплатят за разработку чего-то (но я сам вряд-ли возмьмусь девелопить на заказ)

В линуксе судя по последним коммитам активно ковыряют cayman. (это в открытых, разумеется)

Про открытые речи нет. Только закрытые, только хардкор!

Потому что кроме OpenCL мне под линуксом от этой карты ничего не надо.

Открытый OpenCL походу в очередной раз загнулся ;(
А как дышал, как дышал.

На десктопе - для всех разумных сочетаний ОС-железо вендоры их бесплатно раздают. В чем большой смысл иметь это еще и в опенсорсе?

А какой тогда вообще смысл опенсорса? Мне вот сейчас в порядке самообразования интересно, как устроены opengl, mesa и gallium. (еще бы какой туториал на opengl найти, примеры которого будут на современном линуксе собираться без шаманских бубнов)

PS Ну и выкидывание всего что меньше R600 из fglrx меня порадовало в свое время.

Если не искать смысла в опенсорсе, то и проблемы нет - автор волен творить что хочет, как хочет и под какой угодно лицензией.
Если искать смысл - то надо заниматься "свободными рыночными нишами", даже если под этим подразумевать полное убийство собственно рынка (как gcc убил производителей кросс-средств в 90-е).

И для OpenCL я "рынка" не вижу, по меньшей мере на десктопах:
- под все, где это имеет смысл (CPU, APU, GPU) - есть решения от вендоров, на вид неплохие и бесплатные.
- стандартность в OpenCL важнее, чем всякие пищалки и перделки. Вот поддерживают все 1.1 сейчас - и прекрасно.

C одной стороны ты прав, с другой стороны вендору нафиг не уперлись железки предыдущего поколения -- поэтому EOL в драйверах вендора может наступить ВНЕЗАПНО.
btw амд кодогенератор из fglrx отдало mesa/gallium, его сейчас рефакторят и вливают понемногу.

А какой смысл OpenCL на CPU? (Clover вроде бы до состояния работает-на-цпу запилили, а а дальше у них все замерло -- то ли галлиум еще готов это втянуть, то ли студент курсач сдал ;) -- там LLVM jit внутри).

Кстати при убитом рынке компиляторов таки умудрились родить llvm и clang

Смысла в OpenCL на CPU много:
- jit-компиляция под конкретный горшок
- совместимость по коду (но не производительности) между кучей устройств (и jit-компиляции)
- векторизация, которую нормально не сделаешь в C/C++ без сильного переписывания кода т.к. aliasing.

А LLVM дошел до приличного состояния усилиями Apple в очень большой степени. Думаю, что если бы gcc был не под GPL, то apple мог и туда усилия направить.

Ну llvm и "на вид" более человечный (в gcc хватает кусков про которые на их сайте написано -- "никто не знает как оно работает")

Кстати -- а порекомендуй что нибудь почитать про OpenGL (2.1/3) и OpenCL заодно.

Про OpenGL вообще ничего не знаю.

С OpenCL-ем у меня получилось сложно, я сначала освоил CUDA (книжек не было, были всякие форумы, слайды с конференций), а потом выяснил, что OpenCL 1.0 от CUDA Device API ничем не отличается по смыслу. Ну то есть я прямо по манам от вендоров учусь, по сути.

А так - книжки есть. OpenCL Programming Guide у меня тошноты не вызвала (брал с library.nu впрочем я всю техническую литературу там тырю).

А library.nu -- источник тайных знаний? Оно пароль-логин хочет ;)

О блин. Ну значит проверяйте периодически, что регистрация появилась. Инвайтов там нема.

Да, llvm более человечный и очень клево, что на нем делают всякие кунштюки, вроде того же OpenCL или ISPC.

А ISPC это что за зверь?

Вот этот зверь

Я про него писал несколько раз

Спасибо,

Без напилинга не собирается ;)

Надо им патч заслать, чтобы с коробочным clang'ом/llvm-3.0 из дебиана собиралось (у меня он почти образовался случайно как-то)

Я готовые бинарники (виндовые) использую. Собрать в свое время тоже нормально не вышло, а потом я бросил это дело.

А патч зашлите - они там с благодарностью их воспринимают, я пробовал.

Штука прикольная. Она хоть и не JIT и не мультиплатформенная, зато живет в том же пространстве памяти, что и основное приложение, никаких clEnqueueBuffer и подобных глупостей. И профайлится нормально, что тоже ценно.

А вот у меня в букмарках нашлось Portable OpenCL.
На вид - живой, крайний коммит - вчера. Кодогенерация - LLVM.

Честно говорю - не смотрел внутрь.

Теоретически (ну очень теоретически), если туда приделать тот кодогенератор для ATI GPU, который AMD выдало сообществу (для LLVM 2.9) - получится OpenCL для HD5xxx/6xxx

Я имел в виду вот это -- git://people.freedesktop.org/~steckdenis/clover
Но там последний коммит в ноябре.

Это -- попробую скачать/собрать/посмотреть

а какие linux-приложения уже умеют работать супершустро на таких многочисленных 2048 ядрах?

darktable, например. Любые с OpenCL (под линуксом - когда появятся драйвера)

ну а для хедлесс серверов есть? виртуализация какая-нибудь?

Headless - это тебе NVidia Tesla надо. С виртуализацией там уже что-то есть, есть и всякие rCUDA, когда карта на другой машине, а ходят туда по infiniband.

У AMD с этим (серверами) сильно хуже - приходится честно X11 запускать с выключенной авторизацией. Без X11 - железо не инициализируется и не видно приложениям.
Как следствие, несмотря на очень приличное по price/perf железо у AMD, подавляющее количество GPU-кластеров юзает NVidia.

Хех. У галлиума кстати в этом плане лучше -- можно собрать без иксов, работающих прямос /dev/dri (но compile time пока)

> Один и тот же OpenCL-код (написанный с оглядкой на NVidia Fermi) работает в-среднем раза в полтора быстрее, чем на GTX480 (single precision)

Это потому что Tahiti - почти как Fermi.

P.S, Только, наверное, не 7870, а 7970?

Угу. Я в магазине сегодня тоже требовал 7870, а меня не понимали.

Еще бы два DVI оставили. А так среднему двухмониторщику или с переходниками прыгать, или устраивать зоопарк из карт.

Переходники в комплекте. С HDMI, c DP.

Это они молодцы, но сам факт необходимости втыкать промежуточный адаптер напрягает, пусть он даже весь из себя simple passive.

Для любителей всего большого - будет Асусовский трехвентиляторный (и трехслотовый!).
2 DVI, 4DP (не мини).

Их правда нету пока в продаже у нас.

Если не секрет, то почем и где взяли?

Так как они сейчас вообще все одинаковые (все что есть в продаже - референсные карты), я просто Яндекс-маркет отсортировал по возрастанию цены и в первую по цене и ткнул.

18710, xpert, на Савеле.

Спасибо =) Успехов в общении с карточкой!

CAL-программы под ней работают?

Не должны бы.

С учетом того, из APP SDK 2.6 вычистили поганой метлой, а линуксных драйверов нет - быстро проверить не могу, у меня из CAL-программ кроме CALDGEMM ничего и нету.