PARALLEL.RU

Дискуссионный клуб по параллельным вычислениям
Текущее время: 28 сен 20 14:28

Часовой пояс: UTC + 4 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 74 ]  На страницу Пред.  1, 2, 3, 4, 5
Автор Сообщение
 Заголовок сообщения: Re: Фортран - как он есть?
СообщениеДобавлено: 29 авг 08 22:43 
Не в сети

Зарегистрирован: 16 фев 05 21:36
Сообщения: 16
Откуда: Москва & Leeds
Вопрос может и не в тему, но Фортрана косается.

Стоит ли переходить на С++ + BOOST, с Фортрана90/95?
+ Старые коды написаны на Ф90, работа с многомерными масивами
- Большинство современных (графических и не только) библиотек имеют С++ интерфейс, кажется более перспективным на долгую перспективу


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Фортран - как он есть?
СообщениеДобавлено: 13 сен 08 20:55 
Не в сети

Зарегистрирован: 13 сен 08 18:39
Сообщения: 74
Откуда: Москва
Ну тут важно понять, чего нехватает в фортране. Если код большой и сложный по своей структуре и, главное, требует ОО-подхода, да так, что без этого просто кикуда, тогда да. Но (надеюсь) довольно скоро появятся нормальные компиляторы полностью поддерживающие стандарт Fortran 2003, и тогда смысла уже, наверное, не будет. И проблема будет лишь проблемой личного предпочтения.

На данный момент в современных реализациях компиляторов (с учетом расширений из 2003-го стандарата)
ощутимо не хватает, пожалуй, только поддержки конструкторов (автоматического вызова конструктора и деструктора при создании объекта и его выходе области видимости) и шаблонов. Без всего остального "ООП", учитывая область применения языка, вполне можно (часто в научных приложениях и нужно) жить.

_________________
Дмитрий О. Коломиец.
IBM // МГУ, физфак, каф. математики.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Фортран - как он есть?
СообщениеДобавлено: 8 ноя 08 17:27 
Не в сети

Зарегистрирован: 27 ноя 05 2:09
Сообщения: 28
Откуда: Институт физической химии и электрохимии РАН
Можно (и нужно) если Ваш Фортран-код хорошо работает и выполняет свои задачи, его поддерживать, но что при этом мешает использовать BOOST или другие C/C++ библиотеки? Освоив BIND(C), я уже не задумываюсь над отказом от Фортрана в сторону C++, а сочетаю возможности этих языков.

_________________
С уважением, Попов Д.А.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Фортран - как он есть?
СообщениеДобавлено: 7 фев 09 15:28 
Не в сети

Зарегистрирован: 7 мар 08 0:47
Сообщения: 30
Откуда: Sunnyvale, CA
Antoni писал(а):
Фортран - анахронизм... гм.. Тем более, что для *научного* программирования куда логичнее применять ФП языки. Или хотя бы с элементами оного. Как язык Фортран - никакой.

С Фортраном идет борьба и борьба успешная :-)
Например:
Python гораздо изящнее и выразительнее, для него портировали известные Fortran библиотеки. Для научных разработок все чаще применяют Python вместо Fortran а.

Мне кажется вы несколько поспешны в суждениях ;)

Теперь по сути вопроса. Ценность Фортрана определяется в первую очередь его ограниченностью. Да-да, не удивляйтесь. В Фортране - 77 отсутствуют указатели на переменные и адресная арифметика, упрощен алиасинг, применена статическая схема выделения памяти для аргументов процедур, что позволяет весьма агрессивную оптимизацию кода компилятором, существенно превосходящую по возможностям С и С++, причем превосходящую принципиально. Интерпретируемые языки типа Питона и Джавы в этом контексте вообще не обсуждаются. Массивы в фортране организованы по столбцам (в С/С++ они построчны), что значительно лучше использует кэш процессора. И так далее.

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

Безусловно у Фортрана достаточно тяжелый синтаксис, но это скромная плата за его возможности.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Фортран - как он есть?
СообщениеДобавлено: 9 фев 09 10:00 
Не в сети

Зарегистрирован: 12 янв 06 11:26
Сообщения: 98
Откуда: Хабаровск, ВЦ ДВО РАН
Андрей Ершов писал(а):
существенно превосходящую по возможностям С и С++ ...

Да нет там никакого _существенного_ превосходства. Упрощенность фортрана на современных компиляторах если и позволяет выбиться ему вперед (на некоторых задачах), то не настолько сильно, чтобы жертвовать преимуществами других языков. Впрочем - выбор инструмента - это всего лишь выбор инструмента.

Андрей Ершов писал(а):
Интерпретируемые языки типа Питона и Джавы в этом контексте вообще не обсуждаются.

Python-код можно откомпилировать при желании.

Андрей Ершов писал(а):
Фортран был создан как язык программирования высокопроизводительных вычислительных машин

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Фортран - как он есть?
СообщениеДобавлено: 9 фев 09 15:56 
Не в сети

Зарегистрирован: 7 мар 08 0:47
Сообщения: 30
Откуда: Sunnyvale, CA
ShapovalovTS писал(а):
Андрей Ершов писал(а):
существенно превосходящую по возможностям С и С++ ...

Да нет там никакого _существенного_ превосходства. Упрощенность фортрана на современных компиляторах если и позволяет выбиться ему вперед (на некоторых задачах), то не настолько сильно, чтобы жертвовать преимуществами других языков. Впрочем - выбор инструмента - это всего лишь выбор инструмента.
Есть, и значительное. Отсутствие указателей развязывает руки оптимизатору, позволяя гораздо более эффективные эквивалентные преобразования кода. Результатов сравнения в сети много, можно например здесь посмотреть сравнения тестов написанных на С++, F77 и F90. На некоторых тестах фортрановский код работает в три (!) раза быстрее сишного. Комментарии излишни.
http://www.cs.rpi.edu/~szymansk/OOF90/performance.html

ShapovalovTS писал(а):
Андрей Ершов писал(а):
Интерпретируемые языки типа Питона и Джавы в этом контексте вообще не обсуждаются.
Python-код можно откомпилировать при желании.
Можно. Вопрос лишь какого качества код вы получите на выходе.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Фортран - как он есть?
СообщениеДобавлено: 18 фев 09 19:52 
Не в сети

Зарегистрирован: 22 май 07 12:02
Сообщения: 8
Откуда: оао
Андрей Ершов писал(а):
В настоящие дни, к сожалению, абстракции того фортрана уже не хватает.

Зачем говорить о "том" Фортране, абстракций сегодняшнего Фортрана вполне достаточно для любых сложных вычислительных задач.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Фортран - как он есть?
СообщениеДобавлено: 19 фев 09 15:04 
Не в сети

Зарегистрирован: 13 сен 08 18:39
Сообщения: 74
Откуда: Москва
lex71 писал(а):
Андрей Ершов писал(а):
В настоящие дни, к сожалению, абстракции того фортрана уже не хватает.

Зачем говорить о "том" Фортране, абстракций сегодняшнего Фортрана вполне достаточно для любых сложных вычислительных задач.


С одной небольшой поправкой... это так, если мы говорим от стандарте Fortran 2003. Но компиляторов, полностью реализующих этот стандарт, пока нет. На данный момент наиболее близок к имплементации 2003-го стандарта компилятор IBM Fortran XL, но, во-первых, его цена по каталогу (версия для Linux) $2000 за каждого (!) пользователя, а во-вторых, он работает только под архитектурой POWER, а, как известно, таких машин у нас в доступности крайне мало.

95-ому же фортрану, нехватает довольно многих вещей, которые крайне необходимы при разработке действительно больших и сложных кодов.

C++ в этом плане лет на 10 впереди.

PS. не смотря на вышесказанное, сам я пользуюсь фортраном (если что :)

_________________
Дмитрий О. Коломиец.
IBM // МГУ, физфак, каф. математики.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Фортран - как он есть?
СообщениеДобавлено: 19 фев 09 15:49 
Не в сети

Зарегистрирован: 27 ноя 05 2:09
Сообщения: 28
Откуда: Институт физической химии и электрохимии РАН
Увы, это так... При этом, существовавшие в Союзе школы создания компиляторов (надо заметить, весьма сильные), похоже, канули в Лету. Ну а насчет 2003 стандарта - NAG 5.1 тоже очень неплох и есть под платформу x86 и EM64T.

_________________
С уважением, Попов Д.А.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Фортран - как он есть?
СообщениеДобавлено: 22 фев 09 9:24 
Не в сети

Зарегистрирован: 7 мар 08 0:47
Сообщения: 30
Откуда: Sunnyvale, CA
kolomiec писал(а):
PS. не смотря на вышесказанное, сам я пользуюсь фортраном (если что :)
А я, в свою очередь, в основном пишу на С++, стараясь по возможности использовать параметрические типы и избегать виртуальность методов. Во всяком случае, во внутренних циклах.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Фортран - как он есть?
СообщениеДобавлено: 23 фев 09 1:52 
Не в сети

Зарегистрирован: 27 ноя 05 2:09
Сообщения: 28
Откуда: Институт физической химии и электрохимии РАН
У меня сложнее - связка C++, Fortran 95/2003 и Ada. Ну иногда кое-что ещё использовать приходится. Но без Фортрана я как без рук. По сути основной инструмент.

_________________
С уважением, Попов Д.А.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Фортран - как он есть?
СообщениеДобавлено: 23 фев 09 19:27 
Не в сети

Зарегистрирован: 13 сен 08 18:39
Сообщения: 74
Откуда: Москва
Попов Дмитрий писал(а):
У меня сложнее - связка C++, Fortran 95/2003 и Ada. Ну иногда кое-что ещё использовать приходится. Но без Фортрана я как без рук. По сути основной инструмент.


Довольно экзотический набор.... это подо что? не задачи ли искусственного интеллекта?

_________________
Дмитрий О. Коломиец.
IBM // МГУ, физфак, каф. математики.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Фортран - как он есть?
СообщениеДобавлено: 24 фев 09 0:06 
Не в сети

Зарегистрирован: 27 ноя 05 2:09
Сообщения: 28
Откуда: Институт физической химии и электрохимии РАН
Системы управления

_________________
С уважением, Попов Д.А.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Фортран - как он есть?
СообщениеДобавлено: 15 май 09 21:06 
Не в сети

Зарегистрирован: 15 май 09 19:22
Сообщения: 2
Здравствуйте!!!Срочно(до вечера воскресенья) нужно решить две задачи на фортране:
1. Реализовать стек при помощи динамических структур
2. Реализовать двунаправленный список
За задачи я заплачу) Отзовитесь,пожалуйста, а то будет сложно получить зачет.....((((((((((((((


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 74 ]  На страницу Пред.  1, 2, 3, 4, 5

Часовой пояс: UTC + 4 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB