The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Выпуск компилятора ISPC 1.26, развиваемого Intel для языка Си с расширениями SPMD"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Выпуск компилятора ISPC 1.26, развиваемого Intel для языка Си с расширениями SPMD"  +/
Сообщение от opennews (??), 08-Фев-25, 11:13 
Компания Intel опубликовала компилятор ISPC 1.26 (Implicit SPMD Program Compiler), предназначенный для сборки кода на языке Си с расширениями  параллельного программирования SPMD (Single Program, Multiple Data), позволяющими добиться параллельного выполнения нескольких экземпляров одной программы с разными наборами входных данных. Код проекта написан на языке С++ и распространяется под лицензией BSD. Поддерживается работа в Linux, Windows, macOS и FreeBSD...

Подробнее: https://www.opennet.me/opennews/art.shtml?num=62692

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по ответам | RSS]

1. Сообщение от Аноним (1), 08-Фев-25, 11:13   –3 +/
> компилятор для сборки кода на языке Си
> код проекта написан на языке С++

Хехе, это настолько типично))

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #2, #3

2. Сообщение от Аноним (2), 08-Фев-25, 11:20   +2 +/
А системы сборки пишут на питоне, представь себе!
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1 Ответы: #5, #9

3. Сообщение от Семен (??), 08-Фев-25, 11:30   +1 +/
Да, так как ISPC использует как ядро LLVM. Нет смысла писать компилятор с нуля, когда LLVM дает очень удобный API для написания компиляторов. Скорость разработки в разы выше будет и 80% работы сделает LLVM. ISPC похож в работе на polly из LLVM, только может гибче и лучше векторизировать код.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1

4. Сообщение от 12yoexpert (ok), 08-Фев-25, 11:51   +/
> параллельного выполнения нескольких экземпляров одной программы с разными наборами входных данных

микросервисы задолбали даже самих интел. видимо, только так можно с ними бороться

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #38, #39

5. Сообщение от 12yoexpert (ok), 08-Фев-25, 11:51   +6 +/
cmake и make не на питоне, а других не бывает
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2 Ответы: #7, #8, #23, #25, #36, #37

7. Сообщение от Аноним (7), 08-Фев-25, 12:09   –1 +/
gnome/gtk, wayland, xorg, mesa, systemd и др., использующие meson (на питоне), глядя на твой комментарий, тихонько недоумевают
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #5 Ответы: #14, #34

8. Сообщение от openssh_user (ok), 08-Фев-25, 12:19   –3 +/
Meson для вас шутка
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #5 Ответы: #31

9. Сообщение от Аноним (-), 08-Фев-25, 12:34   +/
> А системы сборки пишут на питоне, представь себе!

Система сборки чуток проще чем оптимизирующий компилятор. Совсем чуть-чуть))

Ну и тот факт, что на сегодняшний день нет ни одного оптимизирующего компилятора на сишке, а только на плюсах - это просто показательно.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2 Ответы: #11

11. Сообщение от Аноним (11), 08-Фев-25, 13:30   –1 +/
Показательно что? С++ там только из-за STL контейнеров, с которыми сильно проще строить AST. Это единственная причина почему Си компилятор написаны на С++. Но вообще есть ещё pcc и tinycc, которые написаны на Си.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #9 Ответы: #13, #19, #20

13. Сообщение от Аноним (2), 08-Фев-25, 14:01   –1 +/
На С++ кодеры медленно работают. Джава и лучше. Если мешают GC и проверки - можно по идее для компилятора сделать сборку jre без этого, компилятору не обязательно убирать мусор - он один файл собирает и завершается, память ОС обратно забирает сама.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #11

14. Сообщение от Аноним (14), 08-Фев-25, 14:16   +8 +/
Meson - не система сборки, там на самом деле собирает ninja. И он на C++.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #7 Ответы: #47

17. Сообщение от Ю.Т. (?), 08-Фев-25, 15:15   +/
Править не буду, лень, но SPMD это не "несколько экземпляров входных данных". Это то, что на практике делают со средой MPI, которая формально MIMD - распределенное исполнение с физически разделенной памятью. То есть данные не "входные", а те, которые поданы на соответствующий процесс из программы.
Ответить | Правка | Наверх | Cообщить модератору

19. Сообщение от Bottle (?), 08-Фев-25, 15:28   –2 +/
О да! Видимо, по какой-то причине сишники не осилили написать собственные STL-контейнеры! Казалось бы, что им мешало, если Сишка такой хороший язычок?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #11

20. Сообщение от Аноним (-), 08-Фев-25, 15:49   –1 +/
> Показательно что?

Показательно что на сишке не осилили)))

> С++ там только из-за STL контейнеров, с которыми сильно проще строить AST.

Ахаха, это еще более показательно!

> pcc и tinycc...

... не являются оптимизирующими компиляторами.

pcc 1.1.0 поддерживает только x86 и x86-64, последний раз релизился 10 лет назад (читай нет поддержки современных процов) и его выкинули даже из бзди.
tinycc чуть лучше, он еще в арм смог, но все равно никаких оптимизаций

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #11

23. Сообщение от Семен (??), 08-Фев-25, 17:22   –3 +/
Уже как много лет в большом количестве проектов отказываются от cmake в сторону meson + ninja, так как даже на простых проектах cmake сценарии очень сильно раздувает и они становятся не читаемыми, их сложно поддерживать. make сам по себе не сильно умеет динамические сценарии сборки, для этого используют automake и autoconf. Плюс у meson более приятный и удобный синтаксис чем в m4, можно на python легко реализовать любую логику сборки, и сложные сценарии сборки. При этом сборочные скрипты будут легковесными и понятными любому.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #5 Ответы: #26

25. Сообщение от Аноним (7), 08-Фев-25, 19:10   +/
SCons
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #5

26. Сообщение от Аноним (26), 08-Фев-25, 20:14   +3 +/
Ох уж эти фантазеры, прям много лет и на большом количестве, да?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #23 Ответы: #35

27. Сообщение от Аноним (27), 08-Фев-25, 20:37   +/
Удобно для реализации алгоритмов обучения нейронных сетей (в частности, ресурсоемких градиентных). А вот это
> Поддерживается работа в Linux, Windows, macOS и FreeBSD

достойно.

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #33

31. Сообщение от 12yoexpert (ok), 08-Фев-25, 23:46   +3 +/
именно, причём несмешная
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #8

33. Сообщение от Аноним (33), 09-Фев-25, 06:39   +/
Приличные люди проприетарные системы поддерживать не будут. У сабжа пермиссивная лицензия. Неудивительно.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #27 Ответы: #42

34. Сообщение от Аноним (-), 09-Фев-25, 08:55   +/
> gnome/gtk, wayland, xorg, mesa, systemd и др., использующие meson (на питоне), глядя
> на твой комментарий, тихонько недоумевают

К счастью есть такая штука как muon - реализация языка meson на си, так что можно и без питона к счастью :)

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #7

35. Сообщение от Аноним (7), 09-Фев-25, 10:27   –1 +/
Много лет и на большом количестве, да.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #26

36. Сообщение от Гром (?), 09-Фев-25, 13:27   +1 +/
Cmake - это не система сборки, а конвертор конфигов из своего формата в форматы конфигов для систем сборки. Сам он ничего не собирает.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #5

37. Сообщение от Аноним (37), 09-Фев-25, 23:30   –1 +/
На M4 бывает.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #5 Ответы: #41

38. Сообщение от Аноним (38), 10-Фев-25, 02:12   +/
Нет, это чтобы во всяких ffmpeg обойтись без ассемблерных вставок.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #4

39. Сообщение от Аноним (39), 10-Фев-25, 09:34   +/
Микросервисы это не про параллельность обработки данных, а про разбиение кода и его изоляцию друг от друга. Иначе миллионы строк когда нереально поддерживать, а сборка проектов может длиться днями на средних компах. В общем хотя бы первые курсы универа закончи с дабами на c++ и переходи на что-то серьезнее.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #4

40. Сообщение от Аноним123 (?), 10-Фев-25, 13:04   +/
Зачем он нужен? Чтобы компилировать С программы под видеокарту?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #43

41. Сообщение от Аноним (41), 11-Фев-25, 12:07   +/
autotools
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #37

42. Сообщение от bOOster (ok), 11-Фев-25, 13:25   +1 +/
Гамно-человек ничего не отдает просто так, ему постоянно нужно что-то с этого поиметь. Код например.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #33

43. Сообщение от Ivan7 (ok), 12-Фев-25, 19:11   +/
нет, ты не угадал. И для CPU, и для GPU
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #40

44. Сообщение от Аноним (44), 13-Фев-25, 03:11   +/
Прикольно. Оно даже в портах фряхи есть. Огонь.
Ответить | Правка | Наверх | Cообщить модератору

46. Сообщение от AMD (??), 14-Фев-25, 09:07   +/
они специально не стали оптимизировать под 3DNow!
это мировой заговор wintel
Ответить | Правка | Наверх | Cообщить модератору

47. Сообщение от Аноним (47), 18-Фев-25, 19:37   +/
А, Windows в статье - никакой не Windows...
Т.к. Windows - это Windows 1.0...
(и что то я сомневаюсь о совместимости с ней)

(Автор статьи - л_х. Искренне надеюсь надеюсь что, такое больше не повторится).

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #14


Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру