Страница 4 из 6

Какой язык быстрее?

Добавлено: 23 янв 2014, 15:05
folk
NT писал(а):Source of the post
АУ сутки)
Folk, я давно хотел спросить, что это такое? В нескольких последних постах присутствует.


О это просто - на посты не по теме ставим такую метку сами. Или ее ставит модератор. Например чат в теме - или просто поругались. Через сутки это сообщение типа автоматически удаляется. Вроде как кому адресовано его прочитали - а смысловой нагрузки не несет. С одной стороны можно поболтать с другой стороны тема не засоряется..

Какой язык быстрее?

Добавлено: 23 янв 2014, 17:56
YuriiS
А что такое переносимость, например, для сопроцессора Intel Xeon (несколько десятков ядер, с их появлением пропала головная боль, связанная с программированием видеокарт), который я использую в своих расчетах? Все переносимости, в конечном счете, зависят от использемого железа, чтобы без эмуляции. Хотя не все трансляторы покрывают железо. например, майкрософтовский не поддерживает long double (80 бит).

Какой язык быстрее?

Добавлено: 23 янв 2014, 18:06
folk
Так переносимость это изначально когда мы хотим работать на любом железе и отбрасываем все возможности которые дает специфичное железо. То есть для системных утилит и программ типа MS Excel. В том случае о котором вы говорите переносимость будет на уровне API библиотеки высокого уровня например)

Какой язык быстрее?

Добавлено: 23 янв 2014, 18:14
YuriiS
folk,

я ведь выше исключил эмуляцию: с ней игра не стоит свеч.

Какой язык быстрее?

Добавлено: 23 янв 2014, 19:03
folk
YuriiS писал(а):Source of the post
folk,я ведь выше исключил эмуляцию: с ней игра не стоит свеч.

Я не имею ввиду эмуляцию. Например вы реализуете библиотеку fft на одном железе одним способом на другом другим - на уровне API пользователь думает что все переносимо. То же самое что libc.
А как по другому использовать аппаратное чудо которое есть только на этой платформе? Даже если компилятор это поддерживает? Только если писать непереносимо либо вариант ./configure с тестами и условной компиляцией.
Ваш вариант?
Правда за последние 10 лет медленно прошел еще один вариант - все вдруг подтянули свои процы под стандарты 64 бит) То есть рынок давит на производителей аппаратуры тоже..

Какой язык быстрее?

Добавлено: 23 янв 2014, 19:59
YuriiS
folk писал(а):Source of the post
А как по другому использовать аппаратное чудо которое есть только на этой платформе?

Как Intel: библиотка линейной алгебры (и не только) Intel MKL реализована под каждый хооший интеловский процессор (не Celeron). Идет проверка используемого процессора и из dll используется соответствующий участок кода. Поэтому, например, на процессорах, поддерживающих AVX, скорость перемножения матриц почти в 20 рз быстрей, чем скорость кода, который сгенерирован при использовании добротной библиотеки LAPACK (на самом деле самая важная часть Intel MKL - это и есть LAPACK).

Какой язык быстрее?

Добавлено: 23 янв 2014, 21:19
folk
Ну это тоже самое изоляция на уровне API которое и есть вызовы сего dll - не вижу принципиальных отличий. Просто для удобства распространения разные архитектуры положили в один dll. А если бы сделали под каждую архитектуру свой было бы то самое API о котором я говорю и более ортогонально добавлялись новые архитектуры.

Какой язык быстрее?

Добавлено: 23 янв 2014, 22:05
YuriiS
folk,
архитектуры во многом схожи. и на подмножестве процессоров не совпадает малая часть кода.

Какой язык быстрее?

Добавлено: 23 янв 2014, 22:52
folk
Да я понимаю - по сути эквивалентные решения. Кстати технически как это делается - прописываются инструкции в памяти или все же relocations для функций подменяются?
Мне кстати интересно когда разрешат свой микрокод в проц запузыривать для пущей оптимизации. Вот это был бы шаг вперед)) Правда и сейчас наверняка это есть недокументированно в какой то урезанной части, имхо..

Какой язык быстрее?

Добавлено: 27 янв 2014, 17:31
Wild Bill
Странный вопрос поставил ТС... :whistle: Есть же стандартные тесты для определения быстродействия для различных языков и платформ. Например, самый дубовый стандартный тест для Mathematica мне показывает, что на одной и той же версии продукта, на CentOS 6.5 x64 (Linux) выполняется на 15% быстрее, чем на Win7 Ult x64... Многие тесты указывают на то, что компиляторы Intel создают гораздо более быстрый код, чем компиляторы GNU, и даже PGI. О Бейсике говорить вообще неприлично... это, как я помню, интерпретатор, именно все вирусы в Видах именно из-за него (пусть не все, но большинство).

Вопрос надо ставить так, я работаю под ОС ХХХХХХХХ, на языке YYYYYY, какой мне следует выбрать компилятор для лучшего быстродействия. Хотя здесь надо учитывать и модель процессора, так как многие фишки заточены под новые процессоры.