LINUX.ORG.RU

C, C++, Fortran, если важна скорость работы кода.

Python, если важна скорость разработки кода.

Norgat ★★★★★ ()

Нынче модно писать числодробилки на OpenCL.

tim239 ()

угрюмое высокопроизводительное ядро на С/C++/FORTRAN/Paskal (к чему душа лежит), в виде so-шки, верхний управляющий слой (интерфейс буде он есть, задание параметров, автоматическое построение отчетов и пр фигню) на питон/руби/... - производительность определяется ядром, удобство работы верхним слоем, из которого дергаются ф-ии ядра.

Мы пишем ядра на плюсах, но не факт что это пример для подражания - во первых у нас задачи специфичные, во вторых писать эффективный код на плюсах таки нетривиально (там гораздо проще пишется неэффективный код).

AIv ★★★★★ ()

Кто что знает, на том и пишет. Обычно же C/C++ + CUDA или OpenCL. Если на CPU считать, используем OpenMP.

Eddy_Em ☆☆☆☆☆ ()
Ответ на: комментарий от kitar

Я на нем в школе писал, это было давно - мог и забыть как называется;-)

AIv ★★★★★ ()

На чем нынче модно писать многопоточные угрюмые числодробилки? Интересуют инструменты для высокопризводительных вычислений.

Весь ужас в том, что кроме фортрана нихера нету.

Инструменты есть, mpi или openmp, например. Но, опять же, под фортран, или под C/C++, прости хоспади.

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

Гхм... «На С++ написать эффективную программу сложно, на фортране невозможно» (мнение не мое, а человека являющегося лидером в области моделирования у-й Максвелла, Власова-Максвелла и ур-й упругости для синтетических сейсмограмм).

С новым фортраном я не работал, со старым - ужас-ужас-ужас. То что видел в плане нового фортрана - на коленке сделать простую числодробилочку удобно, а для чего то серьезного... не комильфо.

AIv ★★★★★ ()

А вообще то... для какой задачи числодробилка то?

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

Весь ужас в том, что кроме фортрана нихера нету.

4.2: все фортрановские библиотеки уже давным-давно работают в сях.

Eddy_Em ☆☆☆☆☆ ()
Ответ на: комментарий от AIv

С новым фортраном я не работал, со старым - ужас-ужас-ужас

++

Пытался я как-то понять алгоритм один по фортрановским исходникам (их страниц 50 было). Оказалось проще с нуля написать свое. И места меньше занимает.

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

А я как то работал с фортрановским исходником на 4000 строк одним куском... работал-работал, плюнул, прогнал через f2c и стало мне щастье;-)

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

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

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

О да, числодробилки на виртуальных машинах или тормознутом хаскеле.

Если про Erlang, то мимо. У меня работает VoIP-транскодер в реалтайме, побивающий на commodity hardware по пропускной способности и по фичастости дорогостоящее аппаратное барахло на DSP и ассемблерах. Ну т.е. по стоимости точно уделывает, а так - 4-ядерный xeon загружен по полной.

«Вы просто не умеете их готовить». По секрету - в Erlang математику можно написать на Си, и учитывая параллельность оно втопит так, что вы со своими асемблерами и фортранами только-только выкатите первую глючную версию в пре-альфа-лимитед демо, а я уже буду год-два как получать бонусы.

Правда у меня серьезное подозрение, что аппаратное барахло спецом программно ограничивают в прошивках, чтоб покупали Тру Энтерпрайз Кэрриер Класс Транскодинг Хардвэр Солюшенс задорого. Думаем, что надо комбинировать оба подхода, как делают финансовые спекулянты.

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

И долго ли придется ботать C что бы начать что-то дельное писать для Erlang'a ?

Я думаю, что независимо от языка надо чутка подучиться, чтоб писать что-то дельное. Так оно везде.

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

С новым фортраном я не работал

Он очень неплох. На по нему нет вменяемой литературы и все библиотеки на F77, так что можно сказать «не взлетел».

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

Фортрана понять не смог? Ну, тупой, не твое это. Не надо тебе программировать. Иди улицы подметать.

anonymous ()
Ответ на: комментарий от Eddy_Em

Процентов 80 кода я пишу именно на фортране. Причем, на 77, без новомодного говна. И до сих пор получается существенно быстрее аналогичного кода на C++.

anonymous ()
Ответ на: комментарий от AIv

Слабаки. Типичный хардкорный код на Фортране, возрастом от тридцати лет и выше, будет более двух миллионов строк. И ничего, поддерживаем, никаких проблем. Просто нынешние сопливые «программисты» - это не программисты вовсе, а так, сосунки.

http://lib.ru/ANEKDOTY/non_pas.txt

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

А я и не называю себя программистом. Мне мой быдлокод нужен для решения определенных задач. Не больше.

Eddy_Em ☆☆☆☆☆ ()
Ответ на: комментарий от plm

По секрету - в Erlang математику можно написать на Си

Ну то есть ответ на вопрос ТС: «числодробилку следует писать на Си».

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

Я и так Octave во всю использую для матмоделей. Только считает он ну очень медленно. Поэтому, когда алгоритм отлажен, он переписывается на С. И работает намного шустрей.

А был бы я программистом, наверняка, скорость сишного кода была бы еще на порядочек выше…

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

Фортран по-моему один из самых простых языков в мире. И для первого вхождения он уж куда проще чем, например, C (синтаксис без кучи миллиона «{}» и «*»).

А начиная с F90 он еще и более высокого уровня, чем C (код становится похож скорее на Matlab, чем на первые императивные языки и очень просто пишется/читается).

Slackware-ch ()
Ответ на: комментарий от anonymous

Просто кое-у-кого низкоуровневые мозги, неспособные к абстрактоному мышлению, кто-то не знает, какие вещи вызывают тормоза в С++ и не может в профайлер. Обычно фортрановский код быстрее где-то на проценты, чем правильный сишный.

dmfd ()
Ответ на: комментарий от Slackware-ch

С трудом представляю себе GUI на фортране… Хотя, CGI, конечно, можно и на нем по идее написать…

Хорошо хоть никто этот мерзкий питон не вспомнил…

Eddy_Em ☆☆☆☆☆ ()
Ответ на: Мерзкий питон! от staseg

После фрикада я этот питон видеть не хочу. А приходится еще скриптики допиливать…

Eddy_Em ☆☆☆☆☆ ()
Ответ на: комментарий от dmfd

Ладно. Интересно с вами, конечно, но мне еще криостат в 3D дорисовывать и кое-что считать…

Eddy_Em ☆☆☆☆☆ ()
Ответ на: комментарий от dmfd

Не на «проценты», а процентов на 20-30. Код на C++ оптимальный, дальше просто некуда. Просто объективно компиляторы Фортрана сильнее (особенно Intel).

anonymous ()
Ответ на: Мерзкий питон! от staseg

Re: Мерзкий питон!

Слишком узкоспецифично. Если производительность упирается в память, то FPGA не поможет (разве что в block ram все поместится). Суровую double числодробильню эффективно не реализуешь на жалких 100MHz, даже если параллелить во все щели.

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