Блог им. AUR1S

Самый шустрый язык программирования

    • 19 ноября 2015, 03:45
    • |
    • aura
  • Еще
Наиболее производительный язык программирования в рамках предложенных тестов. Но конечно, лучшее решение будет показывать не менее впечатляющие результаты и в большинстве прикладных проектов. 

Победила реализация Фортрана от Intel. Приблизиться к ней не смог вообще никто, даже GNU C и GNU C++ (и что еще более удивительно, чистый Си немножко проиграл «плюсам»). 
На четвертом месте язык Applied Type System, про который я к стыду своему слышу в первый раз. Представляет он систему автоматического доказательства теорем, расширенную средствами прикладного программирования. Почему так шустр, даже не знаю, но активно применяется для системного программирования. 

Пятое место давно шлифуемой Ada немудрено, а вот 6-7-е места Java — отличный аргумент против унылого мнения «java тормозит». 

Даже Pascal и C# Mono сильно от Java отстают, в полтора-два раза! В отношении Паскаля это совсем странно. Причина, видимо, в активно развивающихся промышленных технологиях оптимизации кода, ориентированных на поддержку в первую очередь виртуальных машин. 

Довольно быстро работают функциональные Lisp и F#, относительно несильно отстает и JavaScript. А вот классические скрипт-языки Lua, Ruby, Python и PHP тормозят уже в 30-50 раз. 

Резюме. 
Если пишем под линуху нагрузочную математическую прогу — однозначно Фортран. 
Если обычная логика — Си/С++. 
Специализированные и встраиваемые системы — ADA. 
Низкоуровневый системный код — ATS. 
Корпоративные системы — Java. 
Что-то легковесное-скриптовое — JavaScript. 
(Ассе́мблера почемута нет в списках — №1 по производительности)
Материал с сайта: http://www.pcweek.ru/idea/blog/idea/2329.php
Данная публикация является личным мнением автора. Мнение владельца сайта может не совпадать с мнением автора.
    972 | ★9
    29 комментариев
    Мои «тяжелые» алгоритмы (арифметика) при переходе с LUA (QUIK, режим интерпретации) на С++ (DLL) ускорились в 30 раз. Ассемблер на моих формулах уже не помог бы. Выжимать уже нечего.
    Кроче, С/С++ по скорости хватит везде и за глаза.  А Python Секрета — вообще тормоз :)
    avatar
    vito2000, он же говорит что на дельфи программирует. врёт штоле?
    avatar
    Ассемблера нет в списках, потому что это по сути тесты компиляторов на этапе перевода ЯВУ в ассемблер =). То есть тест отвечает на вопрос: насколько хорошие конструкции кода на ассемблере может строить компилятор из своего ЯВУ.

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

    Ява обходит, потому что мой друг приложил руку =))). Он лично писал всю оптимизацию под 64-битные AMD и Intel, а до этого работал над x86 для компилятора Оракал (его код реюзали по полной).

    В целом это всё очень бредовые тесты… И вообще, причём тут трейдинг? =)
    Fry (Антон), фигасе, друг какой молодец.
    А нельзя ли у него компилятором разжиться?
    avatar
    Йоганн, корпоративный продукт. Я его спрашивал, мол что да как, в чём изюм. Он сначала отмалчивался, говорил, типа, да кому он нужен, наш компилятор, так — для внутреннего пользования, а потом я догадался (ну связать-то не трудно Оракл > Ява) и он раскололся и объяснил суть своей работы.

    Живёт в Питере, работает аутсорсом. Биржу презирает. Гнилое это дело, говорит =)
    Кодом не делится, но зато подарил на ДР офигенную книгу — Алгоритмы: построение и анализ. Фундаментальная вещь! Правда, очень тяжёлая, в смысле больше 3кг =(
    Fry (Антон), правильно делает.
    Делиться кодом — приближать глобальный Армагеддон.
    Ничего хорошего нет в закручивании спирали развития.
    Наоборот, надо ее распрямлять на бОльший радиус)))

    А чем нынче заняты в трейдинге? Какие идеи?
    avatar
    Йоганн, сейчас каждый день пишу бота. Он уже работает (на фьючь сбера на 2 контракта для отладки поставил), но ещё сырой.
    Продолжаю свои эксперименты на виксе (VX CFE).
    Вот думаю, взять лонг сипы (санта-ралли), но на балансе уже есть поза на виксе, а маржи свободной нет.
    Fry (Антон), а бот на какой стратегии?
    avatar
    Йоганн, трендследун-интрадейщик. Наколбасил +8% за 8 дней испытаний — тренд сбера радует =), жаль, что так не всегда будет
    Fry (Антон), а тренд указывается вручную или сам определяет?
    В позу входит при достижении области поддержки-сопротивления?
    А стоп определяет по ширине диапазона «шума» в районе уровня?
    avatar
    Йоганн, для тренда один мувинг. Стоп в параметрах назначаю (точка отсчёта от экстремума). В позу входит по сигнальному индюку. Всё очень просто… если опустить некоторые моменты =)
    Fry (Антон), 1% в день — хорошо.
    А на флете как себя ведет? Распознает его7
    avatar
    Йоганн, всё как у всех — сам по себе флет безобиден.
    Но на переходе между состояниями (аптренд<>даунтренд<>флет), понятное дело, будут потери. Ничего принципиально нового.
    Андрей Аурис, для HFT-бота, который эксплуатирует фактор скорости критическими местами является:
    1) маршрут (нужно убрать всё лишнее)
    2) работа со строковыми типами данных
    3) проверки ошибок (придётся пожертвовать гибкостью и устойчивостью кода в пользу скорости)

    Чтобы решать кодерские задачи для HFT, лучше всего, на мой взгляд, подходит интеловский компиллер C++.

    В HFT обычно на уровне кода нет никаких таких циклических математических рассчётов, главные задержки которые реально убрать программисту — это избавиться всяких конекторов-адаптеров-трансляторов-проверок.
    Например, важнее всего избавиться от библиотеки-посредника, которая безумно тупо проверяет строковые значения и очень-очень дебильно парсит их в float'ы и int'ы, когда на самом деле надо получить родные для x64 даблы и лонги.
    А затем максимально быстро обратно сгенерировать строку из даблов без всяких проверок, но с кучей оговорок (с фиксированной точностью и не полным диапазоном допускаемых входных значений).
    С#, я так понимаю, использовался в безопасном виде, мало кто пишет результаты при использование # в небезопасном виде.
    avatar
    вы бы еще учли скорость написания и скорость поддержки всего этого хлама. вне зависимости от уровня разраба, которого под всякую кривую экзотику еще найти надо.
    avatar
    Для каждой задачи и сроков — свое средство разработки. Давно уже разрешенный вопрос это
    Какая разница на чем писать… за деньги, хоть на папирусе)
    Просто через месяц, в ваш супер быстрый код, вставят костыль, и будет пофиг что на чем вы писали, а будет тормозить, памяти добавят)
    avatar
    Давно заметил в ваших постах, гоняетесь за скоростью. Интересно, что за стратегию хотите алгоритмизировать? Насколько понял из давнего — стаканы анализировать. Просто не сталкивался с такими сверх задачами, где зачастую нужно гоняться за скоростью.
    avatar
    Андрей Аурис, а теоретически подкованы? Если да, с чего бы можно начать изучать?
    avatar
    Андрей Аурис, не правильно поняли. Я программировать способен. Я больше про нейронные сети. Чтобы их делать, нужна хорошая теоретическая база по ним. Не знаю пока как подступиться и с чего начать.
    avatar

    На четвертом месте язык Applied Type System,...., но активно применяется для системного программирования.

    Я тоже не слышал. Ты точно понимаешь что подразумевается под «системным программированием»??

    avatar
    Если говорить о «быстроте» языка — это скорость-удобство написания и структурирования кода. А производительность — это качество компилятора. Статью писали дебилы..

    А для ИИ я создал специальный класс «Перцептрон» на плюсах с оптимизированными на асме методами — все летает.

    С++ — форева !

    avatar

    Читайте на SMART-LAB:
    Фото
    Т⁠-⁠Банк представил новое поколение супераппа
    В приложении появились новые сферы и данные о счетах и кредитах в других банках, а с главного экрана убрали лишнее Т⁠-⁠Банк объявил новый...
    Фото
    🏪 Жизнь компании между отчётами
    Финансовая отчётность подводит итог работы за несколько месяцев. А сам результат складывается постепенно — из повседневных обращений...
    Фото
    «ЛУКОЙЛ» будоражит рынок: дивиденды и сделка драйвят акции
    Акции «ЛУКОЙЛа» сегодня снова в фокусе рынка – на пике дня они достигали отметки 5687,5 рубля, то есть фактически вернулись на уровни 6...
    Фото
    Хэдхантер. Рынок труда в сентябре: hh.индекс снизился до 8,5 - становится лучше?
    Вышла статистика рынка труда за сентябрь 2026 года (за август можно почитать здесь ), которую Хедхантер публикует ежемесячно, что же там...

    теги блога aura

    ....все тэги



    UPDONW
    Новый дизайн