Компания Intel опубликовала компилятор ISPC 1.25 (Implicit SPMD Program Compiler), предназначенный для сборки кода на языке Си с расширениями параллельного программирования SPMD (Single Program, Multiple Data), позволяющими добиться параллельного выполнения нескольких экземпляров одной программы с разными наборами входных данных. Код проекта написан на языке С++ и распространяется под лицензией BSD. Поддерживается работа в Linux, Windows, macOS и FreeBSD...Подробнее: https://www.opennet.me/opennews/art.shtml?num=62059
на гитхабе раздают версию 1.24, а не 1.25
это в меню под плашкой "загрузка", а по первой ссылке уже лежит 1.25
> под плашкойплашка-то с какой резьбой?
Вот после таких поделок и появляется софт который работает только на Интел. Короче мало кому такое необходимо.
не зачем распыляться, когда есть софт только для CUDA.
А если что, то качаешь этот CUDA с гита и доделываешь под своё железо ))
https://www.clearlinux.org
> предназначенный для сборки кода на языке Си
> Код проекта написан на языке С++Штош, это не удивительно.
Скорее даже предсказуемо.
шёл 2024 годсишники всё ныли что их смешивают с плюсами ?)
always has been (c)
Но тут скорее интереснее то, что "на СИ можно писать скол угодно сложные программы! бла-бла!"
А потом "ну... для нас ГЦЦ написан на плюсах, ну да и ллвм тоже.. пуук-среньк"
GCC начали переписывать с Си на С++ только в 2008г. До этого он был на чистом Си. А делать это начали из-за контейнеров в С++, с которыми сильно проще строить AST
> GCC начали переписывать с Си на С++ только когда понадобились современные оптимизации и человеко-читаемый вывод ошибок, как в шланге. До этого он был на чистом Си.Пофиксил, не благодари.
> человеко-читаемый вывод ошибок
> С++Взаимоисключающие вещи.
> только в 2008г
> толькоme: cмотрю на календарь...
Ну, как сказать. Учитывая что первый нормальный стандарт на с++ появился в 2003, как исправление с++98, то это еще быстро произошло.
Сколь-нибудь серьёзных оптимизирующих компиляторов Си написанных на Си больше не существует. Тот же GCC уже давно перешёл на C++.
Я ничего в новости не понял. Перевод чтоль корявый?
"позволяющими добиться параллельного выполнения нескольких экземпляров одной программы с разными наборами входных данных."
А набор ядер в 128 штук, например, не позволяют этого чтоли выполнить?
Интел ещё что-то развивает? Я думал их со дня на день купить Qualcomm
цену набивают
ISPC - это проект ресёрчера Matt Pharr, который в Интел давно не работает. А дальнейшее сопровождение ISPC возложено, как это водится, на русских программистов. Почему ISPC объективно не нужен для CUDA объясняется в его блоге: https://pharr.org/matt/blog/2018/04/18/ispc-origins Блог вообще очень увлекательный, явтор с иронией и сарказмом рассказывает как Интел десятилетями создавал монополию на мировую технологическую платформу, не понимая что люди собственно хотят на его платформе делать.
Спасибо. Интересная ссылка.Как на нее вышли?
>C/C++Это оскорбительно. Смешивать в одной аббревиатуре чистый и божественный Си, вместе с ужасным Си плюс-плюс. Линуксоиды никогда так не делайте!
Откуда хейт плюсов? Великий Страуструп сделал лучшее: соединил две прекраснейшие вещи, Си и ООП. Не даром почти всё крутое написано на C++: игры, винда
ООПЭ переоценено и в частности в плюсах кривое (инклуды приватных объектов встраиваются в хидер и включаются в месте использования этого класса, что кроме своей неуместности, замедляет конпеляцию), медленное (виртуальные функции) и неудобное (нет утиной типизации).
И при этом что Винда (идеальная ОС), что большинство игр - на C++.
Как эту идеальную ос запустить на stm32 или на ардуино?
недавно было сообщение, что её запустили на intel 4004
Это был линукс на мипсе через эмуляцию 4004, а не винда
А зачем запускать идеальную ОС на неидеальных (то есть не x86-64) процессорах? Впрочем, Винда NT вполне портируема - винда на армы есть, а когда была и на DEC Alpha. Просто смысл использовать не лучшие камни?
На STM32 операционная система не нужна. Не благодари.
Кто вообще запускает ОС на STM32 и Arduino? Это конечно реально, но неуместно.
Большинство игр на юнити.
А AAA-игр? А Unreal Engine игр? Индюшатники и на Питоне игры пишут.
Да по сути всё равно на чём бездуховные ААА обмылки делать - основная работа приходится на видеокарту, а там dx/vk/ogl. Обновлять состояние объектов игрового мира игрового мира рациональнее на вычислительных шейдерах, чем на cpu.
Что значит бездуховные обмылки? ААА - это эффект присутствия и полное погружение. Не вижу смысла тратить деньги на что-то меньшее, чем премиальные игры
> хидер/ˈhed.ɚ/
Через четверть века произносить, возможно, будут через настоящую "е", а не это ваше "э".
Плюсы у С++ это классы? (Си с классами)
Плюсы у C++ это constexpr, шаблоны, ieee-754 float с C++20, когда-нибудь и модули вместо хедеров.
В С23 constexpr тоже есть.
Нужны шаблоны и ООП из С++, правда в доработанном виде. А вот исключения не нужны.
После десятка лет присутствия в C++. Поезд ушёл, к тому же, очень далеко.
Лучше б этот паровозик под мост ушёл. Постоянно ошибки компиляции в нужных библиотеках. Так достало. Вот известная библа, onnxruntime например, прямо сейчас не билдится. Ошибки видите ли в коде. В релизной ветке. Свежим шлангом.
А это и не хейт вовсе. Просто это разные языки, разделившиеся и развивающиеся параллельными курсами уже более трёх десятилетий. Философия и методология разработки принципиально отличаются.Когда смешивают в одну кучу — это либо банальная демонстрация безграмотности и отсутствия опыта разработки на обоих языках в актуальном их виде, либо унылые попытки в троллинг.
> Великий Страуструп сделал лучшее…
То что он попытался сделать называется аббревиатурой из трёх букв: EEE. «Embrace, Extend and Extinguish».
> Просто это разные языки, разделившиеся и развивающиеся параллельными курсами уже более трёх десятилетий.Но до этого, в момент создания, это был "си с классами", даже был надмножеством языка.
И как результат он впитал в себя все недостатки сишки и это легаси тянут уже те самые 30+ лет.
>Но до этого, в момент создания, это был "си с классами"И чо?
>даже был надмножеством языка.
Строго говоря, "Си с классами" со дня своего появления, уже был уже отдельным языком. Строго говоря, C++ никогда не был надмножеством языка Си. Байки про "надмножество" и "подмножетсво" обычно распространяли Си плюс-плюсники поражённые ООП головного мозга.
>он впитал в себя все недостатки сишки и это легаси тянут уже те самые 30+ лет.
Тупая и жирная ложь.
> Строго говоря ... уже был уже отдельным языком.Строго говоря - нет.
В статье "A History of C++: 1979−1991" за авторством некого Bjarne Stroustrup описываются ранние годы С++.
И там автор называет С++ - "C with Classes" и "C as a subset""Having C as a subset dramatically reduced the support and documentation work needed."
"Having all C features available further ensured that no limitations introduced through prejudice or lack of foresight on my part would deprive a user of features already available in C. Naturally, portability to machines supporting C was ensured."
"C with Classes was still seen as a dialect of C. Furthermore, classes were referred to as ‘‘An
Abstract Data Type Facility for the C Language’’"
stroustrup.com/hopl2.pdf
Хотя... с чего бы нам верить какому-то Страуструпу, когда у нас есть анон Копираст)))> Байки про "надмножество" и "подмножетсво" обычно распространяли Си плюс-плюсники поражённые ООП головного мозга.
Т.е. сам господин Страуструп?))
> Тупая и жирная ложь
Чистейшая правда!))
Проблеметично сочетать амбиции на замену Си и сильную несовместимость с ним же.Изначально С++ был сделал максимально совместимым с Си, но с Си того времени, кроме явных противоречий с именам.
А уже позже языки разошлись в развитии более значительно.
>И как результат он впитал в себя все недостатки сишки и это легаси тянут уже те самые 30+ лет.Меня достала эта ложь, которая кочует из форума на форум из треда в тред. Си плюс-плюсники вините комитет и Страуструпа, в том, что ваш язык такой проблемный! Сишка тут не причём. Чистый Си самодостаточен, её не нужен Си плюс-плюс! Чистой сишке "Си плюс-плюс" исторически никогда не был нужен. Это другой язык, другая парадигама.
> ваш язык такой проблемный!По сути претензии Си'шников к C++ сводятся в возрастающим со временем несовместимостям языков, и ладно когда что до делается чуть иначе, но когда в ряде моментов C++ ещё и отстаёт, то это как красная тряпка для быка.
С++ мультипарадигменный, не хочешь писать в объектном стиле, так и не заставлят же.
Тем более,что программист на Си - может "писать на Си" на любом языке программирования.(с)>>Чистый Си самодостаточен
Си очень низкоуровневый, и написание прикладного ПО на нем часто выливается в исходники из трёхэтажного мата, хотя и на чистом Си.
>По сути претензии Си'шников к C++ сводятся в возрастающим со временем несовместимостям языковНет, претензии сишников сводятся к неприятию того факта, что сишку отождествляют с мерзким Си плюс-плюс. А недостатки Си плюс-плюс оправдывают тем, что он якобы происходит от Си. Хамство и только.
> Нет, претензии сишников сводятся к неприятию того факта, что сишку отождествляют с мерзким Си плюс-плюс.Что очень странно.
Ведь СИшка это мерзкий недоязык, который пытались улучшить в С++.
Наверное это как в пословице про бревно в глазу.> А недостатки Си плюс-плюс оправдывают тем, что он якобы происходит от Си.
Именно! Без нормально фундамента дом не построишь.
А тут взяли просто ужасный ЯП и попытались исправить недостатки, с предсказуемым результатом.> Хамство и только.
Полностью согласен, коллега.
> Философия и методология разработки принципиально отличаются.Он может и так, только смысл придерживаться отсталой Сишной методологии? История нас учит, что всё идёт по прогрессии - от плохого и примитивного к хорошему и передовому. ООП - во всех отношениях лучше процедурного, потому что ближе к реальному миру: процедуры вы в реальном мире едва ли найдете, а вот классы и объекты - пожалуйста
> То что он попытался сделать называется аббревиатурой из трёх букв: EEE. «Embrace, Extend and Extinguish».
Если для вас любого улучшение жизни и разработки, любой прогресс - EEE, то так можно вообще ничем не пользоваться.