Компания NVIDIA объявила (http://nvidianews.nvidia.com/Releases/NVIDIA-Contributes-CUD...) об обеспечении в LLVM (http://www.llvm.org) поддержки NVIDIA GPU в качестве целевой платформы, что позволяет значительно упростить интеграцию средств GPU-акселерации выполнения вычислительных задач в широком спектре приложений, написанных на различных языках программирования.
Поддержка NVIDIA GPU в LLVM стала возможной благодаря передаче проекту кода CUDA-компилятора, основанного на наработках проекта LLVM и позволяющего сгенерировать GPU-инструкции из кода, написанного на языках Си, Си++ и Fortran. Благодаря модульной структуре LLVM список языков может быть легко расширен, например, LLVM-фронтэнды также доступны для таких языков, как Objective-C, Ada, Haskell, Java (байткод), Python, Ruby, ActionScript, GLSL и Rust. Несмотря на то, что CUDA-компилятор изначально позиционировался как открытый, исходные тексты ранее можно было получить только после заполнения определённой формы на сайте и одобрения от компании NVIDIA. Отныне CUDA-компилятор интегрирован в ядро LLVM и бэкенд для обеспечения параллельного выполнения нитей.<center><img src="http://www.opennet.me/opennews/pics_base/32561_1323886331.jp... style="border-style: solid; border-color: rgb(233, 234, 214); border-width: 15px;" title="" border="0"></center>
По словам Яна Бака (Ian Buck), генерального менеджера NVIDIA по развитию GPU-акселерации для программных систем, интеграция CUDA Compiler в LLVM является переломным моментом в развитии GPU-вычислений - исследователям и разработчикам предоставлена невероятная гибкость, а также возможность выбора языков программирования и аппаратных архитектур для своих приложений, которые могут использовать в процессе работы полный вычислительный потенциал CPU и GPU. Переданный в LLVM код уже используется в проприетарных CUDA-продуктах NVIDIA, что даёт основание утверждать о высокой надёжности и полной совместимости с сотнями миллионов установленных на ПК видеокарт NVIDIA.
URL: http://nvidianews.nvidia.com/Releases/NVIDIA-Contributes-CUD...
Новость: http://www.opennet.me/opennews/art.shtml?num=33800
> интеграция CUDA Compiler в LLVM является переломным моментом в развитии GPU-вычислений, предоставив исследователям и разработчикам невероятную гибкость и возможность выбора...Ian Buck делает вид, что про OpenCL он никогда не слышал.
> Ian Buck делает вид, что про OpenCL он никогда не слышал.Проприетарщики, LLVM, вендор-локи, несовместимые стандарты, полные штаны счастья.
Вы так говорите словно это что-то плохое
> Вы так говорите словно это что-то плохоеЯ так говорю, потому что меня это не беспокоит :)
А причем тут OpenCL?
CUDA, OpenCL, DirectCompute - все это библиотеки/API для ускорения вычислений силами ГПУ (если ГПУ нет или не поддерживается, то исполььзуется ЦПУ).
Читаем к чем относится данный комментарий. Речь идёт про CUDA, поэтому вопрос ещё раз - причем тут OpenCL?
> Читаем к чем относится данный комментарий. Речь идёт про CUDA, поэтому вопрос ещё раз - причем тут OpenCL?OpenCL - типа стандарт для всех. CUDA - контр-стандарт от нвидии. Чтоб несовместимость была, и вендор-лок.
Ещё раз...
Причем тут OpenCL? Иен Бак говорил исключительно о CUDA, причем тут OpenCL?
И если что, OpenCL появилась позже CUDA и некоторые разработчики стандарта говорят, что за основу бралась CUDA, поэтому это не контр-стандарт.
> Ian Buck делает вид, что про OpenCL он никогда не слышал.А может наоборот, сливают то что неперспективно? Ну как это обычно бывает у проприетарщиков - выбрасывают в опенсорс только то в чем не видят перспектив.
OpenCL - стандарт
CUDA - закрытая технология
читать до просветеления
>...интеграцию средств GPU-акселерации выполнения вычислительных задач...Это не то же что и FP-сопроцессор?
> Это не то же что и FP-сопроцессор?Нет. Это немного из другой оперы.
Нет, ФПУ не требует (и не требовал) для использования дополнительных библиотек.Использование ФПУ:
В коде программы присутствуют команды ФПУ и когда эти команды поступают на выполнение в процессор, то сразу же без посредников выполняются на ФПУ.Использование CUDA и др.:
К программе подключаются сторонние библиотеки, в коде программы присутствуют вызовы функций этих библиотек. Библиотеки используют доступные устройства для выполнения команд (приоритет ГПУ).Как-то так.
>>...интеграцию средств GPU-акселерации выполнения вычислительных задач...
> Это не то же что и FP-сопроцессор?Это скорее целый массив (!!!1111) SIMD-сопроцессоров. Ну если мы о GPU. На фоне такой штукенции реализация SIMD в x86 - так, детский лепет :)
Напоминает историю Microsoft и Mono: дальнеперспективная цель (уконтрапупить конкурентов в лице СПО) временно приносится в жертву ближнеперспективной цели (продвинуть свои технологии и занять господствующее положение на рынке, пусть даже и с помощью СПО).Впрочем, вторая цель, будучи достигнутой, вновь открывает прямую дорогу для достижения первой цели.
История с AMD: "2D работает в xf86-video-ati — и ладно, до настоящего 3D всё руки не доходят — разработчики заняты Каталистом. В СПО бросают только обглоданными костями.".
Кто о чем, а Изя о бзд, на которой ати не работает. Чем тебе opengl 2.0, 3.0 и opengl es 2.0 не настоящее 3D?
> Кто о чем, а Изя о бзд, на которой ати не работает.
> Чем тебе opengl 2.0, 3.0 и opengl es 2.0 не настоящее 3D?Тем что у него драйвер окаменелой версии. Ну невдомек ему что за пару лет нынче меняется целая эпоха, и если пару лет назад Ryan Gordon проходился по открытым драйверам молотком по пальцам, то теперь он довольно позитивного мнения о оных и прогрессе там.
Bonus: изен, расскажи, через сколько лет у вас там hd7000 заработает? Да, у фрибсд отличная поддержка оборудования. От других...
Пилять, сто тыщь питсот раз говорили, почему ни Нвидия,
ни АМД не могу открыть код и спеки. У них, как в чипах,
так и в дровах используются патентные технологии, которые
авторы им продали под NDA лицензиями, с условиями не раскрытия.В авторах этих алгоритмов, тот же Texas Instriments, Analog Devices,
National Algorithm Group (NAG), которые не отличаются особой симпатией
к опенсорсу.А вы-то думали, почему Нвидия кладёт большой болт на реверс-драйвер?!
Вот именно поэтому! Им - профит, и лицензии не нарушены. А чтоб доказать
нарушение, Техасу и Аналогам надо открывать алгоритмы, а может и код.
Поди, объясни это школоте. Они ведь думают, что это все из-за вредности, заговора сионистов и проделок доктора Зло.
> Поди, объясни это школоте. Они ведь думают, что это все из-за вредности,
> заговора сионистов и проделок доктора Зло.Вот только публикация амдшниками спеков на чипы и написание ими открытых дров в эту красивую теорию от любителей нвидии что-то не вписываются. Незадача.
>> Поди, объясни это школоте. Они ведь думают, что это все из-за вредности,
>> заговора сионистов и проделок доктора Зло.
> Вот только публикация амдшниками спеков на чипы и написание ими открытых дров
> в эту красивую теорию от любителей нвидии что-то не вписываются. Незадача.Были у нивиди открытые дрова, они на них тоже забили, ибо получалось
тоже самое, что и при реверсе.
> ибо получалось тоже самое, что и блоб.Я исправил, можешь не благодарить.
Тот ужас, что был в nv невозможно назвать реверсом. Там всё было obfuscated. Никто, кроме самой нвидии, ничего не понимал в этом драйвере.
Оба не в теме. Это ни тот драйвер, который - nv
> Были у нивиди открытые дрова, они на них тоже забили, ибо получалось
> тоже самое, что и при реверсе.Так может нефиг было код то обфусцировать? А то обфусцированная болванка на си - это такая открытость, конечно... :)
как, вкусно у корпорастов подлизывать?
> Пилять, сто тыщь питсот раз говорили, почему ни Нвидия,
> ни АМД не могу открыть код и спеки.Амд вообще-то открыли спеки на большинство фич их чипов, как минимум до HD6xxx - характерный такой пдфник на ~900 страниц. И драйвера открытые нынче пишут перцы нанятые в АМД из числа тех кто этим занимался. А нвидия какие-то огрызки бросает, спеков - нет, по поводу чего nouveau плетется где-то в хвосте с реализацией 3D ускорения, например.
Поскольку все приходится реверсить - ну ты догадываешься как хорошо работает код писаный методом проб и ошибок, без спеков, да? :)
>> Пилять, сто тыщь питсот раз говорили, почему ни Нвидия,
>> ни АМД не могу открыть код и спеки.
> Амд вообще-то открыли спеки на большинство фич их чипов, как минимум до
> HD6xxx - характерный такой пдфник на ~900 страниц.Sun и Co. в лице JCP.org тоже в своё время держали спецификации Java (JSR) отскрытыми, но сейчас почему-то Oracle судится с Google из-за нарушения какой-то там интеллектуальной собственности, хотя спорный код java-классов вроде бы открыт под GPLv2 в OpenJDK6.
> И драйвера открытые нынче пишут перцы нанятые в АМД из числа тех кто этим занимался. А нвидия какие-то огрызки бросает, спеков - нет, по поводу чего nouveau плетется где-то в хвосте с реализацией 3D ускорения, например.
И не будет. CUDA Compiler — это в некотором роде протокол-связь с закрытым движком-процессором 2D/3D/Phys-акселерации, и команда LLVM его получила. Intel, например, ведь тоже не выкладывает топологию своих микропроцессоров в свободный доступ, но делает всё возможное для популяризации и продвижения системы команд x86. Так и здесь.
> Поскольку все приходится реверсить - ну ты догадываешься как хорошо работает код писаный методом проб и ошибок, без спеков, да? :)
Разработчики nouveau, вообще говоря, занимаются не тем, чем нужно. Скорее всего, разработчики это поняли и осознали, поэтому никаких подвижек больше не происходит.
>отскрытымиКакое _верное_ слово!! Бравушки!
>>отскрытыми
> Какое _верное_ слово!! Бравушки!iZEN жжот сегодня напалмом. Epic lolz.
> например, ведь тоже не выкладывает топологию своих микропроцессоров в свободный доступ,Я что-то не помню чтобы для запуска чего-то на интелском проце обязательно требовался бы закрытый драйвер ;) И спеки у интеля на проц и чипсет - есть. Так что желающие могут в принципе свой BIOS (EFI, coreboot, или что там еще) писать. Гугль даже вот написал поддержку для coreboot.
>И спеки у интеля на проц и чипсет - есть.
>Так что желающие могут в принципе свой BIOS (EFI, coreboot, или что там еще) писать.Ты б поинтересовался поддержкой интеля в коребуте, чтоль. Прежде чем нести такое.
>Гугль даже вот написал поддержку для coreboot.
Ни до того, ни после _никаких других интелей (почти?) в коребуте не было. Не парадокс совсем.
прикинь, а меня вот эти проблемы проприетарщиков совершенно не волнуют. лично с моей точки зрения — они не открывают, ибо жадные уродцы. вот и всё. впрочем, если они заплатят мне определённую сумму — я согласен «войти в положение и понять». nothing personal, это просто зеркальная копия их отношения ко мне.и таких, как я, далеко не один.
> впрочем, если они заплатят мне определённую сумму — я согласен «войти в положение и понять».Т.е. за небольшую комиссию меняем мораль? Вот это да!
>>они заплатят мне определённую сумму — я согласен «войти в положение и понять».
> Т.е. за небольшую комиссию меняем мораль? Вот это да!Во-первых, не "небольшую", а "определённую". Во-вторых, не "меняем", а "понять"... И нет, тех пяти человек, которые пилят продажу новых чипов в открытых дриверах и ядре -- не-дос-та-точ-но. //Ага, "раскаяться за содеянное и отсидеть" за wintel и проч. монопольные игрушки.
> История с AMD: "2D работает в xf86-video-ati — и ладно, до настоящего
> 3D всё руки не доходятЧувак, у них руки вполне доходят. Вплоть до того что в xonotic побегать можно на средних настройках запросто. Просто у тебя драйвер по возрасту догоняет помет мамонта. Патамучта гладиолус^W KMS у некоторых слоупоков нету. Ну вот у тебя и остался окаменелый вариант драйвера из доKMSного мезозоя.
>> История с AMD: "2D работает в xf86-video-ati — и ладно, до настоящего
>> 3D всё руки не доходят
> Чувак, у них руки вполне доходят. Вплоть до того что в xonotic
> побегать можно на средних настройках запросто. Просто у тебя драйвер по
> возрасту догоняет помет мамонта. Патамучта гладиолус^W KMS у некоторых слоупоков нету.
> Ну вот у тебя и остался окаменелый вариант драйвера из доKMSного
> мезозоя.Причём тут KMS? У NVIDIA нет никакого KMS, а уделывает xf86-video-ati любой версии в 3D — только в путь.
Кстати, в AMD Catalyst тоже нет никакой поддержки KMS. Учи матчасть, прежде чем бросаться необоснованными выводами.
Пользователи GNU/Linux не в восторге от последней версии драйвера xf86-video-ati 6.14.4: http://www.opennet.me/opennews/art.shtml?num=33483
У меня предпоследняя версия xf86-video-ati-6.14.3. Это о чём говорит?
> Причём тут KMS? У NVIDIA нет никакого KMS, а уделывает xf86-video-ati любой
> версии в 3D — только в путь.А еще блоб уделывает открытые драйвера по геморрою с ним.
> Кстати, в AMD Catalyst тоже нет никакой поддержки KMS. Учи матчасть, прежде
> чем бросаться необоснованными выводами.А я разве утверждал обратное? Да, в этом куске блобятины - его нет. Лишний повод выбросить. И вообще, под фряхой он IIRC не работает, так что не понятно чего ты им козыряешь. А еще меня в нем доканывает тупой баг. Я бы с удовольствием позырил сорц и отдебажил эту дрянь, но - не судьба. Обожаю блобы за вот такие вот обломы. Надеюсь что он сгорит синим пламенем в пользу открытых дров.
> Пользователи GNU/Linux не в восторге от последней версии драйвера
Что-то не понял - откуда это следует из приведенной ссылки? Ну про драйвер там. И чего? Не вижу массовых воплей.
>> Причём тут KMS? У NVIDIA нет никакого KMS, а уделывает xf86-video-ati любой
>> версии в 3D — только в путь.
> А еще блоб уделывает открытые драйвера по геморрою с ним.Вот так: http://www.linux.org.ru/forum/linux-hardware/7726825
???
Ж)На FreeBSD сколько раз менял блоб от NVIDIA, проблем особых не было. При перекомпиляции базовой системы оставшийся блоб всё равно работает, а в Linux почему-то ломается. Вот почему, а? Объясни.
>> Кстати, в AMD Catalyst тоже нет никакой поддержки KMS. Учи матчасть, прежде
>> чем бросаться необоснованными выводами.
> А я разве утверждал обратное?Это к вопросу нужности KMS, о котором ты тут последовательно печёшься.
> Да, в этом куске блобятины - его нет. Лишний повод выбросить.
Чего выбросить? KMS или проприетарный драйвер, который по эффективности использования GPU уделывает всё открытое?
> И вообще, под фряхой он IIRC не работает, так что не понятно чего ты им козыряешь.
Ты козыряешь KMS, которая под FreeBSD не работает. Зато под FreeBSD работает достаточно эффективно драйвер NVIDIA [i386] и [amd64], которому KMS не упёрлась ни во что. Так что нужно: KMS с мифически-полезными фичами или то, что реально эффективно работает? (У меня и xf86-video-ati эффективно работает на моих задачах, не визжит вентилятором - просто нет вентилятора). Так объяснись, в чём ты видишь эффективность? Я вижу эффективность в качественном выполнении заявленных функций, а ты?
> А еще меня в нем доканывает тупой баг. Я бы с удовольствием позырил
> сорц и отдебажил эту дрянь, но - не судьба. Обожаю блобы
> за вот такие вот обломы. Надеюсь что он сгорит синим пламенем
> в пользу открытых дров.Они такие, высокие технологии. И опенсурсу им как до Луны пешком, пока вендор не откроет. А открытие надо как-то заслужить что ли.
>> Пользователи GNU/Linux не в восторге от последней версии драйвера
> Что-то не понял - откуда это следует из приведенной ссылки? Ну про драйвер там. И чего? Не вижу массовых воплей.Вкратце: в дистрибутивах GNU/Linux при смене версии видеодрайвера или ядра Linux всё не слава богу подразумевается за обычное дело.
в смысле геморрой? ставится из коробки... работает лучше чем открытые
по крайней мере у нвидии
Хмм, а причем тут производительность в играх и KMS? =D
> Хмм, а причем тут производительность в играх и KMS? =DНаверное при том что page flipping без него не работает, а это как раз о производительности, очень даже...
прям как гугл
ох ну нвидия в рамках общих тенденций выправляться стала... хоть это хорошо.
Думаю НВИДИА сделала это для конкуренции с ОпенСЛ.Лучше бы Физикс открыли.
> Думаю НВИДИА сделала это для конкуренции с ОпенСЛ....попутно реализовав оный в своем драйвере. Хм... интересный подход к конкуерции. Конкуренция самих с собой? :)
Щастя какое привалило-то. Вендор лок наше все. Вот откроет код дров для видюх тогда и поговорим о полезности.
Я чего-то не понял. Это все равно надо все ручками делать как и прежде? Я сначала подумал, что они это всунули где-то между байткодом и нативным кодом, т.е. автоматический выхлоп cpu или cpu+gpu по-вкусу. Или просто llvm компилятор теперь понимает cuda инструкции и усе? Так не интересно.
> Или просто llvm компилятор теперь понимает cuda инструкции и усе?LLVM теперь может генерить код выполняемый GPU. Правда ... куда этот код девать? У проприетарного блоба и так генерация кода есть. У открытого пока довольно хило с инфраструктурой и извлечь с этого что-то они смогут еще не скоро.
>> Или просто llvm компилятор теперь понимает cuda инструкции и усе?
> LLVM теперь может генерить код выполняемый GPU. Правда ... куда этот код
> девать? У проприетарного блоба и так генерация кода есть. У открытого
> пока довольно хило с инфраструктурой и извлечь с этого что-то они
> смогут еще не скоро.LLVM теперь генерит PTX, для перевода в бинарный формат все равно потребуется ptxas компилятор.
(задумчиво) nVidia решила, что на неё тоже могут бесплатно поработать. теперь эту фиговину будут поддерживать и фиксить ребята из команды llvm — следовательно, половину своих китайцев можно уволить.
Мейнтейнером этой части llvm, nvptx, все равно был и есть человек из nVidia
> Мейнтейнером этой части llvm, nvptx, все равно был и есть человек из
> nVidiaразве я с этим спорил?
> (задумчиво) nVidia решила, что на неё тоже могут бесплатно поработать. теперь эту
> фиговину будут поддерживать и фиксить ребята из команды llvm — следовательно,
> половину своих китайцев можно уволить.А точнее человек в NVIDIA, которого NVIDIA специально взяла на работу и который до этого занимался реализацией PTX в LLVM. Проще говоря - оплатить его работу в рамках LLVM.
я не совсем понял, но судя по всему данный щаг не приблизил CUDA к OpenCLпоясните, по-прежнему OpenCL является единственным "от и до" платформонезависимым стандартом и реализацией для CPU+GPUшных вычислений, так?
а это CUDA+LLVM это так... интернесно, есть плюсы, а в целом технология закрытая? да?
Шикарная штука под FreeBSD 9