LINUX.ORG.RU

make и так прекрасно параллелится на несколько ядер. А gcc еще и распределяется через distcc на несколько машин.

anotheranonymous
()

потому что ядро открытой системы не должно зависеть от проприетарных закрытых компонентов, к тому же нагрузка на процессор генерируемая непосредственно ядром - небольшая в сравнении с userspace

неперспективно

Sylvia ★★★★★
()
Ответ на: комментарий от melkor217

в случае NVidia их реализация открытого API все равно внутри закрыта, по сути обертка над cuda, как и OpenGL

Sylvia ★★★★★
()

Сохранение и переключение контекста... И всё не так прекрасно окажется, как кажется школьникам:)

Led ★★★☆☆
()
Ответ на: комментарий от Sylvia

> в случае NVidia их реализация открытого API все равно внутри закрыта, по сути обертка над cuda, как и OpenGL

если реализация сертефицирована - то ей можно доверять )

по крайней мере, можно будет смело предъявлять претензии

melkor217 ★★★★★
()
Ответ на: комментарий от darkshvein

cuda-accelerated gcc ? идея интересна, но зачем ограничиваться только одним лишь ядром? может быть когда-нибудь и реализуют, а вообще хорошо бы если бы кто-то уже и наработки начал какие в этом плане...

Sylvia ★★★★★
()
Ответ на: комментарий от darkshvein

>я тока про пересборку, а не про работу ядра на GPU

тогда при чём тут «пересборка ядра»? Ядро с конфигом «всё включено» и так собирается меньше 15 минут на обычно домашнем десктопе.

Led ★★★☆☆
()
Ответ на: комментарий от x3al

>ccache

дает эффект только на идентичных файлах исходного кода
если собирать ядро несколько раз подряд - да
в остальных же случаях - бесполезная трата места на диске и обсчета контрольных сумм preprocessed source

Sylvia ★★★★★
()

Код на CUDA это не совсем C. В нём имеются некоторые указания относительно распределения вычислений по нитям. Кроме того код на CUDA очень архитектурно зависим. Иными словами всё это чушь. Пересобрать что-либо с помощью CUDA не возможно. Нужно переписать. Практически целиком. И это при том что смысл CUDA в том чтобы быстро выполнять множество операций с плавающей точкой.

KblCb ★★★★★
()

CUDA? Это ускоритель операций с плавающей точкой должен как-то помочь компилятору? %)

tailgunner ★★★★★
()

Потому, что CUDA реализует модель SIMD (одна инструкция, много данных). Например, есть параметр измеренный для 10^9 электронов, необходимо с помощью сложной формулы по этому параметру для каждого электрона вычислить другой параметр. Тогда CUDA подойдет.

При компиляции ядра задача совсем другая: MIMD (много инструкций, много данных). Так что компиляция на CUDA будет проходить даже медленнее, чем на 4-х ядерном CPU.

trex6 ★★★★★
()
Ответ на: комментарий от KblCb

> И это при том что смысл CUDA в том чтобы быстро выполнять множество операций с плавающей точкой.

Опередил

vertexua ★★★★★
()

В быстрых вычислительных приложениях на CUDA своеобразный стиль работы с памятью. Вряд ли он подойдёт для компиляции.

unnamed
()
Ответ на: комментарий от Led

>Ядро с конфигом «всё включено» и так собирается меньше 15 минут на обычно домашнем десктопе.

4.2 :)

tensai_cirno ★★★★★
()

ну сколько надо памяти для одной нити сборки? 100-200 Мб? А где вы столько наберете на видюхе. А ввода/вывод?

namezys ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.