LINUX.ORG.RU

Новые версии компиляторов Intel C++ 7.0 и Intel Fortran 7.0 под Windows и Linux


0

1

Только что прочёл на iXBT эту новость:
http://www.ixbt.com/news/hard/archive...
Смотрите информацию от самой Intel по линку в подробностях.
Также можно попробовать 30 дневную версию каждого из компиляторов:
http://www.intel.com/software/product...

Самое интересное, список возможностей и требований к системе каждого
из них, можно узнать тут:
Intel C++ Compiler 7.0 for Linux
http://www.intel.com/software/product...
Intel C++ Compiler 7.0 for Windows
http://www.intel.com/software/product...
Intel Fortran Compiler 7.0 for Linux
http://www.intel.com/software/product...
Intel Fortran Compiler 7.0 for Windows
http://www.intel.com/software/product...

>>> Подробности

anonymous

Проверено: maxcom

Хорошо, что теперь не надо запускать сервер лицензий. Правда как подключить к Интелю Цэ++, например, /usr/lib/librt.so не знаю - может быть кто знает.

P.S. А почему нет компилятора Intel ocaml для Itanium 2? Неужто никому из тех, кто _реально_ занимается _делом_, функциональные язычки программирования не нужны? ;-( ;-)))

NikS
()

Немножечко конкретизирую свою задачку для Intel C++ 7.0 for Linux

На gcc написано следующее:

#include <time.h>
#include <stdio.h>

main ()
{
  struct timespec *ts;

  clock_gettime(CLOCK_REALTIME, ts);
}

Естественно, все легко на первый взгляд:

gcc i_love_posix.c -o i_love_posix -lrt
./i_love_losix

А теперь тоже самое в icc. И без Segmentation fault.

Заранее признателен за решение.



NikS
()

Ошибка у Вас, молодой человек. В исходном коде. Объявлять наде не указатель на структуру, а структуру. И передавать ейный адрес, а не указатель "в никуда".

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

2 NikS
> Неужто никому из тех, кто _реально_ занимается _делом_,
> функциональные язычки программирования не нужны?

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

А где наш "старый пионЭр", который эти компилеры ломал, как семечки лузгал ... ? :)

anonymous
()

Эх была бы тулзень, которая преобразовывала скажем Makefile для GCC в Makefile для icc ;) Или хотя бы, скрипт, который прикидывается GCC, преобразует полученную командную строку в формат ICC и вызывает уже его.
:))))

А еще бы научился бы ICC ядро собирать! :)

Eugeny_Balakhonov ★★
()

надо или

#include <time.h>
#include <stdio.h>

main ()
{
  struct timespec ts;

  clock_gettime(CLOCK_REALTIME, &ts);
}

или

include <time.h>
#include <stdio.h>

main ()
{
  struct timespec *ts;

  ts = malloc(sizeof(struct timespec));
  clock_gettime(CLOCK_REALTIME, ts);
  free(ts);
}

ananas ★★★★★
()

я фигею))) всегда знал что niks балабол, но так облажаться в коде - висячий указатель сувать куда попало - это надо особо уметь :-))))

anonymous
()

Цитата: "The Intel C++ Compiler 7.0 for Linux also includes additional language features that provide the capability to build the Linux kernel with some minor modifications". Вопрос: интересно такой кернел попробовать и сравнить с собраным gcc.

anonymous
()

...могу поспособствовать с полной версией...

MakcuM
()

MakcuM govori gde brat' ;) ili patch kuda-nit' bros' ;)

anonymous
()

Говори куда кидать :)

И какой надо, конкретнее... :)

MakcuM
()

2MaksiM:

Кинь сюда, пожалуйста:

for_kylix@fromru.com

Спасибо!

anonymous
()

2Makcim:

Вдогонку к предыдущему: а надо бы С и Фортран версии 7.0...

anonymous
()

Народ, мыло не покатит :(
Найдите ftp...
40мег -- CPP под Вин, 15 -- под Лин.
Под фортран тоже есть -- и тот и тот -- только размер не смотрел

Давайте место -- выложу

MakcuM
()

2MakciM: давай мыло, сделаем тебе ftp!

если не хочешь мыло тут светить, намыль мне на for_kylix@fromru.com

anonymous
()

2 anonymous (*) (2002-12-04 21:20:06.55)

встречай

MakcuM
()

2MakcuM:

Взаимно :)

anonymous
()

Если не трудно, напишите и мне на ratter@personal.mgn.ru. Очень хочется icc. Готов предоставить ftp если что...

ratter
()

Готов у себя выложить 2xOC3 - дам на скачку всем желающим

пишите на lomega@yandex.ru

L.L

anonymous
()

Народ, а кто ядро таки собрал интеловским компилером?
Что именно делал? Какие шаги предпринимал или где нашел описание как это сделать?

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

> P.S. А почему нет компилятора Intel ocaml для Itanium 2? Неужто
> никому из тех, кто _реально_ занимается _делом_, функциональные
> язычки программирования не нужны? ;-( ;-)))

OCaml и Itanium
http://caml.inria.fr/archives/200007/msg00022.html
http://caml.inria.fr/archives/200103/msg00081.html

Intel ocaml это из области Microsoft perl

anonymous
()

Eugeny Balahonov

> А еще бы научился бы ICC ядро собирать! :)

А на кой хрен ?? Что, он превратит ATA-33 в ATA-133 ??? ;-))))))

LamerOk ★★★★★
()

LamerOk

Раньше по тестам код выдаваемый icc был значительно (чуть ли не на 20-40% в ряде тестов) быстрее чем от gcc.

NiKel
()

2Nikel и что толку, эти 40%(весьма оптимистично, особенно если учесть обильное использование "ручного" асемблерного кода в ядре) надо умножать на долю времени процессора, которую ядро проводит в "вычислениях", так вот, почти при любой реальной нагрузке эта доля невелика, откуда делаем вывод, что выигрыш получится совсем незначительный.

anonymous
()

anonymous (*) (2002-12-05 02:31:26.801)

для ядра это так
но для общих задач Intel компилятор может дать ощутимый выигрыш - там где код не так вылизан и оптимизирован как в случае ядра и драйверов и там где приложения писались с учетом возможностей SSE и HyperThreading.

Насчет HT - пара-четверка виртуальных процессоров в системе скоро будет вполне обычным явлением и полезно было бы получить эффект от их наличия, хотя бы разводя потоки интенсивно работающие с целочисленной и дробной арифметикой. Частенько программные продукты переживают несколько поколений процессоров так что неплохо бы уже сейчас взять установку на подобный эффект. Хуже не будет, а шанс получить нахаляву 20-30% в скорости вычислений не так плохо звучит :)

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

<А теперь тоже самое в icc. И без Segmentation fault.
Заранее признателен за решение.>

О, и эти люди запрещают нам ковыряться в носу:) И придираются к точке с запятой, и написанию слова "синглетон". Эй, "реальный enterprise-программист", автор книжек и прочия, вы там как, что такое адрес, как выделять память, что такое указатель и чем передача по значению отличается от передачи по ссылке когда-нибудь выучите? Аль только новым TLA хвастаться будете.
И он еще, е, типа с умным видом рассждает про "функциональщину" и intel ocaml:)
А так, на будущее, новые версии интела вроде позволяют линковаться даже с С++ библиотеками, компиленными gcc 3. В отличие от старых версий и KAI.






AC
()

AC: будем новую эпопею тестирования всего подряд разворачивать как в прошлый раз или лень? :) у меня остался кусок какого-то мутного кода пользующего mtl и boost afair который ты/вы давал в тот раз.

anonymous
()

Дурацкий вопрос конечно. Кто-то пользовался ихним отладчиком (который idb)? А то у меня он чё-то валится (SuSe 8.1). А gdb не умеет нормально отлаживать проги скомпиленные интеловым фортраном :( Если у кого он работает, скажите дистр и версию ядра/libc.

anonymous
()

Вопрос всем: Кто нибудь уже куда выложил версию компилятора фортрана для линуха для некоммерческого использования? Дело в том, что я не могу достучаться до их сервера. Выдает: 501 Not Implemented The requested method 'CONNECT' is not implemented by this server. thttpd/2.20b 10oct00 Кто может помочь?

anonymous
()

Господа. Кто скачает нормальную, не 30-дневную версию - может, выложите куда-нибудь?

anonymous
()

Повторяю.

Выдайте ftp, с расшаренным доступом -- вылью туда.
Будете пользоваться хоть до усрачки :)

MakcuM
()

эхх, когда ж amd выпустит компилер под свои процы заточенный

anonymous
()

gcc все-таки более кривой, чем Intel.

>> но так облажаться в коде - висячий указатель сувать куда попало

;))

Вопрос был не в этом (ответ-то я знал заранее;)). А в том, что gcc допускает такие конструкции ("struct timespec *ts" вместо "struct timespec ts") причем скомпилированная gcc программа НЕ выдаст Segmentation fault. Вывод - все-таки использовать Intel компайлер.

(Личные выпады я, естественно, пропускаю - можете посмотреть мои результаты теста по ANSI C и C++. Может быть, Вы конечно, Master Level;))

NikS
()
Ответ на: gcc все-таки более кривой, чем Intel. от NikS

<Вопрос был не в этом (ответ-то я знал заранее;))>

Знали бы -- не спрашивали, и не валили на проблемы с линковкой. Или это такая новая форма мазохизма?

<А в том, что gcc допускает такие конструкции ("struct timespec *ts" вместо "struct timespec ts") причем скомпилированная gcc программа НЕ выдаст Segmentation fault.>

Ничего он такого специфического НЕ допускает. Значение указателя по умолчанию не определено. Вам просто повезло, что он смотрел куда-то, куда можно писать.

AC
()

>> вроде позволяют

"Вроде". Уже позволяют - перечитайте мой явно провокационный вопросик, теоретик Вы наш!

Не скрою - я очень хотел спровоцировать именно AC! Только вот в Java в отличие от C/C# память выделять не надо - вот почему все-таки _реальные_ программы требуют в писАть на Java, а не на C++. И минимум JNI. (Хотя если Вы найдете в моем JNI коде ошибочку - сообщите пожалуйста.;))

P.S. Уважаемый AC, не умирайте, пожалуйста, с голоду после закрытия Фонда Сороса во Франции. Иначе мне будет очень скучно без любителей самодельных язычков программирования.

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

>> и не валили на проблемы с линковкой. >> Или это такая новая форма мазохизма

Нет, это форма показать Вам, что это есть нонсенс перенос "алгоритмов с ocaml на C++" (извините, если я Вас неправильно цитирую). В gcc Вы даже Segmentation fault не получите.

Так что Java все-таки подходит даже и для счетных задач - про JIT и HotSpot читали? А ошибки в Java асимптотически приближаются к нулю;)

>> Ничего он такого специфического НЕ допускает

Э, нет! Естественно, я проверил примерчик-то. У Вас хоть gcc на машине установлен? Проверьте - никакого Segmentation fault в gcc! В том то весь и вопросик был!;)

>> новая форма мазохизма

Естесственно, я предполагал переход на мою личность. Но ради такого удовольствия пообщаться с настоящим чистым программистом, а не кодером-ремесленником ... ;)))

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

>> и не валили на проблемы с линковкой. >> Или это такая новая форма мазохизма

Нет, это форма показать Вам, что это есть нонсенс перенос "алгоритмов с ocaml на C++" (извините, если я Вас неправильно цитирую). В gcc Вы даже Segmentation fault не получите.

Так что Java все-таки подходит даже и для счетных задач - про JIT и HotSpot читали? А ошибки в Java асимптотически приближаются к нулю;)

>> Ничего он такого специфического НЕ допускает

Э, нет! Естественно, я проверил примерчик-то. У Вас хоть gcc на машине установлен? Проверьте - никакого Segmentation fault в gcc! В том то весь и вопросик был!;)

>> новая форма мазохизма

Естесственно, я предполагал переход на мою личность. Но ради такого удовольствия пообщаться с настоящим чистым программистом, а не кодером-ремесленником ... ;)))

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

>> и не валили на проблемы с линковкой. >> Или это такая новая форма мазохизма

Нет, это форма показать Вам, что это есть нонсенс перенос "алгоритмов с ocaml на C++" (извините, если я Вас неправильно цитирую). В gcc Вы даже Segmentation fault не получите.

Так что Java все-таки подходит даже и для счетных задач - про JIT и HotSpot читали? А ошибки в Java асимптотически приближаются к нулю;)

>> Ничего он такого специфического НЕ допускает

Э, нет! Естественно, я проверил примерчик-то. У Вас хоть gcc на машине установлен? Проверьте - никакого Segmentation fault в gcc! В том то весь и вопросик был!;)

>> новая форма мазохизма

Естесственно, я предполагал переход на мою личность. Но ради такого удовольствия пообщаться с настоящим чистым программистом, а не кодером-ремесленником ... ;)))

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

>> и не валили на проблемы с линковкой. >> Или это такая новая форма мазохизма

Нет, это форма показать Вам, что это есть нонсенс перенос "алгоритмов с ocaml на C++" (извините, если я Вас неправильно цитирую). В gcc Вы даже Segmentation fault не получите.

Так что Java все-таки подходит даже и для счетных задач - про JIT и HotSpot читали? А ошибки в Java асимптотически приближаются к нулю;)

>> Ничего он такого специфического НЕ допускает

Э, нет! Естественно, я проверил примерчик-то. У Вас хоть gcc на машине установлен? Проверьте - никакого Segmentation fault в gcc! В том то весь и вопросик был!;)

>> новая форма мазохизма

Естесственно, я предполагал переход на мою личность. Но ради такого удовольствия пообщаться с настоящим чистым программистом, а не кодером-ремесленником ... ;)))

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

>> и не валили на проблемы с линковкой. >> Или это такая новая форма мазохизма

Нет, это форма показать Вам, что это есть нонсенс перенос "алгоритмов с ocaml на C++" (извините, если я Вас неправильно цитирую). В gcc Вы даже Segmentation fault не получите.

Так что Java все-таки подходит даже и для счетных задач - про JIT и HotSpot читали? А ошибки в Java асимптотически приближаются к нулю;)

>> Ничего он такого специфического НЕ допускает

Э, нет! Естественно, я проверил примерчик-то. У Вас хоть gcc на машине установлен? Проверьте - никакого Segmentation fault в gcc! В том то весь и вопросик был!;)

>> новая форма мазохизма

Естесственно, я предполагал переход на мою личность. Но ради такого удовольствия пообщаться с настоящим чистым программистом, а не кодером-ремесленником ... ;)))

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

>> и не валили на проблемы с линковкой. >> Или это такая новая форма мазохизма

Нет, это форма показать Вам, что это есть нонсенс перенос "алгоритмов с ocaml на C++" (извините, если я Вас неправильно цитирую). В gcc Вы даже Segmentation fault не получите.

Так что Java все-таки подходит даже и для счетных задач - про JIT и HotSpot читали? А ошибки в Java асимптотически приближаются к нулю;)

>> Ничего он такого специфического НЕ допускает

Э, нет! Естественно, я проверил примерчик-то. У Вас хоть gcc на машине установлен? Проверьте - никакого Segmentation fault в gcc! В том то весь и вопросик был!;)

>> новая форма мазохизма

Естесственно, я предполагал переход на мою личность. Но ради такого удовольствия пообщаться с настоящим чистым программистом, а не кодером-ремесленником ... ;)))

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

>> то у меня он чё-то валится (SuSe 8.1)

У Вас gcc 3.2. Там это пофиксили. (В Mandrake 9.0 будет: "Segmentation fault (core dumped)").

Естественно я вычитал про эту проблемку из Internet, а не сам ее придумал - я то на Java пишу, C++ мне вроде бы как и не к чему. Просто веселят меня аргументы типа "сам дурак" от господина AC. ;)

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

<"Вроде". Уже позволяют - перечитайте мой явно провокационный вопросик, теоретик Вы наш!>

Вы вообще прочитали мой пост? А чем линковка с библиотекой C и с библиотекой С++ отличаются, хорошо себе представляете? Master Level такие познания дает? Ну, а то, что _теперь_ позволяют -- это очень хорошо. Честно -- я на шестерку и семерку ICC под линуксом не смотрел -- под линуксом они меня не интересуют, поскольку есть KAI, все аспекты совместимости которого я и так прекрасно знаю. ICC меня интересует только под Win -- а там никаких проблем бинарной совместимости с MSVC не наблюдается.

<Только вот в Java в отличие от C/C# память выделять не надо>

Ай, не надо, не надо. Ну в таком случае попробуйте в джаве распределить объект без new. В С++ -- раз плюнуть:)

<все-таки _реальные_ программы требуют в писАть на Java, а не на C++.>

Это вы в какой книжке такую чушь вычитали -- теперь для _реальных_ программ и C++ не подходит?

<Хотя если Вы найдете в моем JNI коде ошибочку - сообщите пожалуйста.>

Я вашего JNI-кода не видел. Впрочем, если вы столь явно не умеете работать с указателями, могу себе представить:))

<е умирайте, пожалуйста, с голоду после закрытия Фонда Сороса во Франции.>

А что, такой есть? И даже успел закрыться? Некому вас больше на конфы приглашать?

<Так что Java все-таки подходит даже и для счетных задач - про JIT и HotSpot читали?>

HotSpot для _реальных_ счетных задач не катит. Вы когда-нибудь про template expressions, template metaprogramming, compile-time polymorphism, generic programming слышали? Идите, почитайте, потом говорите.

<Проверьте - никакого Segmentation fault в gcc! >

Вы читать все-таки не умеете. Я же вам даже объяснил, _почему_. Повторить, или сами прочтете?

AC
()

2 NikS (*) (2002-12-05 12:43:11.108):
со стороны выглядит как попытка отбрехаться от позорной ошибки,
а ваши заявления на счёт явы - вообще нонсенс, нет желания даже комментировать.

anonymous
()

2NikS: Ну у меня мастер левел по с/с++/перлу, причём выше 4,5 (не помню где скока точно). Но это фсё туфта. Писать по неинициализированному указателю -- результат undefined, в стандарте написано. Факт неопределённости последствий нам продемонстрировал пример gcc & icc. В чём проблема-то? Давайте напишем arr[i++]=i (или другое подобное) и поудивляемся, что разные компилеры себя опять по разному повели. Потом гордо скажем "с/с++ сакс" и "а зато я на жабе могу". Блин, чё за дурь-то? Есть совершенно чёткие прописные истины о том как нельзя программировать на с/с++, если тебя интересует результат. Облажался ты, короче.

Casus ★★★★★
()

>> Это вы в какой книжке такую чушь вычитали -- теперь >> для _реальных_ программ и C++ не подходит

Корпоративные Guidelines. Знаете что это такое? Так вот либо COBOL для z/OS либо Java для всех архитектур.

Ну конечно же подходит для написания, например, KOffice - не передергивайте. Только вот пойдите к _реальному_ заказчику и скажите ему, что сервер приложений будем лабать на C++ - и посмотрите на реакцию заказчика, если он не полный лошок. Каково сейчас соотношение на dice.com востребованных C++ vs. Java программеров? А год назад? А какова динамика роста соотношения в пользу Java? >> Вы читать все-таки не умеете.

Аргументация в Вашем излюбленном стиле "сам дурак".

Я Вам в третий раз повторяю, что icc и gcc 3.2 отрабатывают отсутствие выделения памяти корректно, если это можно сказать о сбросе дампа. gcc 2.9x не отрабатывает этого.

>> распределить объект без new

Что такое "распределить объект"? Я знаю что такое "создать объект". И Вы тут опять продемонстрировали поверхностность познаний:

Connection c = DriverManager.getConnection("jdbc:db2:sample");

Где же тут "new", позвольте Вас спросить?

>> Впрочем, если вы столь явно не умеете >> работать с указателями, могу себе представить:))

Вы найдите ошибку (javasphere.hotmail.ru), а потом применяйте Ваш излюбленный аргумент "сам дурак". Договорились?

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

Я не пишу на C/C++ c 1996 года. И, естественно, Master я могу заработать только по Java. Просто я хочу для себя выяснить, какие аргументы надо приводить "pro Java" и насколько я был прав, полностью перейдя на Java.

Так все-таки привидите примеры ошибок в моем, _лично моем_ C коде JNI.

>> Факт неопределённости последствий нам продемонстрировал пример gcc & icc. >>В чём проблема-то?

В отсутствии данной проблемы в Java.

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

>> со стороны выглядит как попытка отбрехаться от позорной ошибки,

Позвольте, но это типичный пример, который приводится в пользу написания mission critical приложений на Java. Нем зря же Алан Голуб теперь консультирует по Java.

Мой же код доступен. Найдите _лично_ мои ошибки в JNI C.

>> а ваши заявления на счёт явы - вообще нонсенс, нет желания даже комментировать.

1. Это, Ваше личное мнение. Сходите на www.dice.com. Посмотрите кто реально востребован.

2. Кроме того, я разделяю мнение, что счетные задачи на C++ - это нонсенс. Для этого есть Фортран.

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