The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Анализ проблем оптимизации для конкурирующих CPU в компиляторе Intel

04.01.2010 20:00

В статье "Will Intel be forced to remove the "cripple AMD" function from their compiler?" разбираются особенности работы компиляторов Intel, приводящие к понижению производительности собранных программ на процессорах AMD и VIA. По заявлению Intel различия в производительности объясняются преимуществами процессоров Intel, но Федеральная торговая комиссия США считает, что замедление вызвано искусственно с целью понижения конкурентоспособности процессоров других компаний.

Компилятор Intel предусматривает возможность включения в итоговый исполняемый файл нескольких оптимизирующих блоков кода, используемых в зависимости от CPU на котором выполняется приложение. В качестве примера приводится задействование инструкций SSE2 и SSE3 для поддерживающих их процессоров. При выборе стратегии оптимизации учитывается не только тип поддерживаемых наборов дополнительных инструкций, но и идентификатор производителя. Если в качестве производителя фигурирует Intel используется заведомо более оптимальный набор кода, а в противном случае - не оптимизированный вариант, даже если процессор полностью поддерживает технологии, позволяющие активировать более оптимальный набор кода.

Так как набор компиляторов Intel рекламируется как генерирующий наиболее производительный код, а тесты на CPU Intel это подтверждают, то многие разработчики используют для генерации итоговых исполняемых файлов ICC, не подозревая, что их приложения могут потерять в производительности при работе на CPU AMD и VIA. Например, один из тестов для процессора "VIA Nano" показал, что при подмене CPUID идентификатора данного процессора на одну из моделей CPU AMD производительность улучшилась на 10%, а при изменении на Intel производительность возросла на 47% (за счет использования SSE).

Детальный разбор алгоритма работы ICC показал, что подобное поведение скорее всего не является злым умыслом и связано с особенностью выбора плана оптимизации, при котором выбор делается на основании модели процессора (CPUID), а не списка поддерживаемых наборов инструкций. Иначе говоря, компилятор знает только об известных в момент подготовки релиза компилятора моделях CPU. Если попытаться выполнить на новейшем CPU программу, собранную старой версией компилятора, то оптимизация не будет активирована, даже для новых моделей процессоров Intel. Тем не менее, подобный подход не оправдывает то, что SSE-оптимизации для процессоров AMD не активируются даже в самом последнем релизе ICC (11.1.054).

В качестве вариантов решения проблемы предлагается:

  • Использовать другой компилятор, например, GCC;
  • Заменить в исполняемом файле код диспетчера выбора плана оптимизации. Код альтернативного диспетчера был в частности представлен в руководстве по оптимизации для C++;
  • Для AMD процессоров подменить CPUID на близкий по возможностям процессор Intel, воспользовавшись технологией виртуализации.


  1. Главная ссылка к новости (http://www.agner.org/optimize/...)
  2. OpenNews: Федеральная торговая комиссия США обвинила Intel в недобросовестной конкуренции
  3. OpenNews: Выпущен релиз Linux версии компилятора Intel C++ Compiler 11.0
  4. OpenNews: Linux ядро адаптировано для сборки компилятором Intel C/C++
Лицензия: CC BY 3.0
Источник: osnews.com
Короткая ссылка: https://opennet.ru/24891-intel
Ключевые слова: intel, icc, gcc, compile, amd
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (107) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (-), 20:56, 04/01/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • –7 +/
    GCC и рядом не стоял по производительности с Intel
     
     
  • 2.2, hatewindows (ok), 21:13, 04/01/2010 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Ой, спасибо, глаза открыл, а я вот сижу на скомпиленном GCC ПО в любимом линуксе с системой, собранной на АМД и бед не знаю. Виндавозники любите дальше своих божков
     
     
  • 3.6, Аноним (-), 21:23, 04/01/2010 [^] [^^] [^^^] [ответить]  
  • –14 +/
    Даже тут не обошлось без виндовс :)
    Люби и дальше свой тормозной АМД, отстающий от intel на год.
     
     
  • 4.7, hatewindows (ok), 21:29, 04/01/2010 [^] [^^] [^^^] [ответить]  
  • +11 +/
    о да, конечно, отстающий )))) лужи хорошь газифицировать. Компания, которая первой выпустила 64 бита в массы для десктопов, компания, которая единственная на данный момент выпустила видеокарту с поддержкой самой современной графики... и отстает "не смешите мои подковы"
     
     
  • 5.16, що (?), 21:45, 04/01/2010 [^] [^^] [^^^] [ответить]  
  • +10 +/
    Кстати AMD убила Itanium до конца с его неадекватными $5K за камень.
     
     
  • 6.19, Аноним (-), 21:55, 04/01/2010 [^] [^^] [^^^] [ответить]  
  • –7 +/
    У AMD нет аналогов итаниуму. И если его не используете вы, то это не означает, что его убила AMD
     
     
  • 7.21, gogo (?), 22:28, 04/01/2010 [^] [^^] [^^^] [ответить]  
  • +2 +/
    А его уже никто не использует... Ибо производительность имеет свою цену.
     
  • 7.25, Аноним (-), 22:55, 04/01/2010 [^] [^^] [^^^] [ответить]  
  • +9 +/
    Надо отдать должное, что без AMD удалось бы доказать нужность Итана. Чисто маркетинговыми ходами промыть мозги и доказать.

    Но сегодняшний Итан уже давно на фиг никому не нужен. Его тихо сольют, а технологии перельют в новые процессоры, которые от 32-х разрядных идут. Заслуга AMD в том, что она показала реалистичность использования 64-х бит и 32-х бит на одном процессоре без существенной потери производительности. Это и было началом конца Итана. Конец, собственно мы уже и наблюдаем. Через пару лет мало кто вспомнит, что был такой процессор.

     
     
  • 8.92, liks (??), 20:33, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Да ладно Вам После того как выяснили, что производительность эмуляции x86 на in... текст свёрнут, показать
     
  • 6.69, liks (??), 12:16, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Itanium убил IBM'овский Power. Изначально HP позиционировал Itanium как убийцу рисков. Не убил, доля IBM на Unix-рынке растет.
     
  • 4.15, alecs (??), 21:45, 04/01/2010 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >Даже тут не обошлось без виндовс :)
    >Люби и дальше свой тормозной АМД, отстающий от intel на год.

    http://www.ixbt.com/cpu/intel-ci5-660.shtml

    Комментарии излишни :)

     
     
  • 5.23, Аноним (-), 22:41, 04/01/2010 [^] [^^] [^^^] [ответить]  
  • +3 +/
    из статьи:"... могут стоить на треть (а то и в полтора раза) дешевле" ??? с математикой не дружим.
     
     
  • 6.31, CAHbKA (?), 00:32, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • –6 +/
    >из статьи:"... могут стоить на треть (а то и в полтора раза)
    >дешевле" ??? с математикой не дружим.

    оу. мусьё школьник ?
    треть это 1 разделить на 3, а полтора это 3 разделить на 2.

     
     
  • 7.37, К слову (?), 01:40, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Судя по всему ник соответствует возрасту )
    Вы или осильте школьный курс алгебры или внимательно читайте написанное.
    Если предыдущие предложения вас не устраивают, то попробуйте опровергнуть:
    (х-1/3)=(х/1.5)


     
     
  • 8.56, Анонимоус (?), 08:05, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Да запросто Данное утверждение не верно для любого х отличного от 1 Правильно ... текст свёрнут, показать
     
     
  • 9.58, miha (??), 09:44, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    непойму, подставляем вместо х число 2 получаем, 2-1 6 2 1 5 1,83333333333... текст свёрнут, показать
     
     
  • 10.60, pavel_n (?), 10:29, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Неправильно подставляете Формула читается как x-1 3 x x 1 5 а не как x-1 ... текст свёрнут, показать
     
     
  • 11.82, ололо (?), 17:35, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    А x 3 сразу не дано было написать ... текст свёрнут, показать
     
  • 11.97, pavlinux (ok), 22:58, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Мля В полтора раза меньше - это половина половины - 1 2 2 1 4 1-3 4... текст свёрнут, показать
     
     
  • 12.110, ABorland (?), 04:22, 08/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    тупить вредно В полтора раза меньше - не половина половины Половина половины тож... текст свёрнут, показать
     
     
  • 13.113, pavlinux (ok), 01:08, 09/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Пол ладони, два вершка и ноготок, пойдёт Вот и думай как хошь ... текст свёрнут, показать
     
  • 8.84, CAHbKA (?), 18:40, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    от блин возвращаю Ваше предложение - внимательно Вы попробуйте читать речь и... текст свёрнут, показать
     
  • 5.30, CAHbKA (?), 00:30, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • –3 +/
    >http://www.ixbt.com/cpu/intel-ci5-660.shtml
    >
    >Комментарии излишни :)

    почему же? постоянные читалели Вам подтвердят, что иксбитовцы хронически любят AMD, порой в ущерб объективности

     
     
  • 6.40, User294 (ok), 01:56, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +3 +/
    А я вот хронически не люблю интель. За глюкавые и грабельные чипсеты, например. Вполне достаточный повод. И нвидию вон нагнули не лицензировав им новую шину. Т.е. жрите, дескать, наше кривенькое дерьмо. Без альтернатив.
     
  • 6.49, 23123321 (?), 05:19, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Глупости, читаю хобот с момента основания, КОРЖ всегда был интеловцом, но сейчас и у него аргументов не осталось.
     
     
  • 7.86, CAHbKA (?), 19:03, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >Глупости, читаю хобот с момента основания, КОРЖ всегда был интеловцом, но сейчас
    >и у него аргументов не осталось.

    хобот? а у меня вот впечатление по статьям о процессорах и иже, что их отношение к интелу такое, как в побасенке "мимо тёщиного дома я без шутки не пройду"

     
  • 5.115, nagual (ok), 00:56, 07/09/2011 [^] [^^] [^^^] [ответить]  
  • +/
    >>Даже тут не обошлось без виндовс :)
    >>Люби и дальше свой тормозной АМД, отстающий от intel на год.
    > http://www.ixbt.com/cpu/intel-ci5-660.shtml
    > Комментарии излишни :)

    А в каких среднеотфанарных попугаях там цифры с синих или еленых ? :-))

     
  • 4.20, Tav (ok), 21:58, 04/01/2010 [^] [^^] [^^^] [ответить]  
  • +7 +/
    Срач Intel vs AMD — смешно. Оба выпускают процессоры убогой архитектуры x86, о чем тут вообще спорить?

    Отстает на год? Это не школа, чтобы отставание на год что-то значило. Технологии развиваются далеко не так быстро, как производители хоте ли бы, чтобы вы думали. Может быть, вы каждый год новый процессор покупаете?

     
     
  • 5.99, pavlinux (ok), 00:24, 06/01/2010 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >Срач Intel vs AMD — смешно. Оба выпускают процессоры убогой архитектуры x86,
    >о чем тут вообще спорить?
    >
    >Отстает на год? Это не школа, чтобы отставание на год что-то значило.
    >Технологии развиваются далеко не так быстро, как производители хоте ли бы,
    >чтобы вы думали. Может быть, вы каждый год новый процессор покупаете?
    >

    Филосаф ... технологии развиваются настолько быстро, что у народа денег столько нет.


    уже есть 32 и 64-х ядерные процы для МинОбороны США,
    и BIO-DVD диски есть на 260, 540 и 1400 Гигов,
    и Nvidia Fermi уже юзается как 3 года....

    Ах да, SBC (System on board computer) на 1024 SMP ARM 12 не видали?

     
     
  • 6.103, Tav (ok), 05:14, 06/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > Филосаф ... технологии развиваются настолько быстро, что у народа денег столько нет.

    Просто производители из кожи вон лезут, чтобы заставить нас покупать новое железо чаще, чем это необходимо.

    > уже есть 32 и 64-х ядерные процы для МинОбороны США,

    Это не есть что-то принципиально новое. Экстенсивное развитие.

    > и BIO-DVD диски есть на 260, 540 и 1400 Гигов,

    Вы что-то путаете. Или имелись в виду голографические диски? Ничего качественно нового.

    > и Nvidia Fermi уже юзается как 3 года....
    > Ах да, SBC (System on board computer) на 1024 SMP ARM 12 не видали?

    И что?

    Да, и все вами перечисленные технологии далеко не за 1 год созданы.

     
     
  • 7.104, pavlinux (ok), 06:23, 06/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Исхитрись-ка мне добыть То-Чаво-Не-Может-Быть Запиши себе названье, Чтобы в спе... большой текст свёрнут, показать
     
     
  • 8.111, Анонимус интернетикус (?), 11:13, 08/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    gt оверквотинг удален Эк тебя прёт товарищ Не нужно экономить на хорошей водк... текст свёрнут, показать
     
     
  • 9.114, Sokoloff (?), 13:10, 11/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    gt оверквотинг удален Или не закусывать ее пищелюлями ... текст свёрнут, показать
     
  • 3.50, ximaera (?), 06:58, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Всё познаётся в сравнении :)
     
  • 2.3, FPGA (ok), 21:18, 04/01/2010 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > GCC и рядом не стоял по производительности с Intel

    Ты сейчас так газанул в лужу сам того не зная что ICC есть под Linux и им можно собрать и ядро и софт.

    Вопрос: где скачать крутейший компилятор ICC для MIPS или ARM??? Что? Нету? Вот и в тряпочку! =)

     
     
  • 3.4, Ariel (??), 21:21, 04/01/2010 [^] [^^] [^^^] [ответить]  
  • –3 +/
    вы собираете свою программу под MIPS?
     
     
  • 4.9, JackYF (?), 21:32, 04/01/2010 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Я собирал под ARM(el) одну из своих программ.
     
  • 4.18, FPGA (ok), 21:55, 04/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > вы собираете свою программу под MIPS?

    Хочешь угадаю сколько тебе лет? В твоем вопросе так и кричит возраст, образование, кругозор, компетенция. Таких как ты я вижу насквозь.

    Да, под ARM и Blackfin собираю - это GCC. Скажи, ну что я буду делать с этим ICC? Да, он быстр и крут. Но как, хотя бы даже теоретически, я могу обойтись одним ICC???

     
     
  • 5.94, аноним (?), 21:23, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >Хочешь угадаю сколько тебе лет?

    А хочешь, угадаю, сколько тебе?

    >В твоем вопросе так и кричит возраст, образование, кругозор, компетенция.
    >Таких как ты я вижу насквозь.

    Рентген протри :-)

    >Скажи, ну что я буду делать с этим ICC? Да, он быстр и крут.

    Пользовать там, где это оправдано. Если +30% для тебя ничего не значат, то о чем тогда говорить?

     
     
  • 6.95, FPGA (ok), 22:23, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >Пользовать там, где это оправдано. Если +30% для тебя ничего не значат,
    >то о чем тогда говорить?

    Вот уж нет, 30% это очень даже важно. А особенно важно то, что я потеряю 50% производительности когда я не знаю на каких процессорах будет работать программа. Если -50% ничего не значат для некоторых, то о чем тогда говорить?

    Ну а тема про "GCC vs ICC" вообще не имеет смысла, так как ICC доступен только для интела - сюрприз?..

     
  • 6.96, FPGA (ok), 22:24, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >Пользовать там, где это оправдано. Если +30% для тебя ничего не значат,
    >то о чем тогда говорить?

    Вот уж нет, 30% это очень даже важно. А особенно важно то, что я потеряю 50% производительности когда я не знаю на каких процессорах будет работать программа. Если -50% ничего не значат для некоторых, то о чем тогда говорить?

    Ну а тема про "GCC vs ICC" вообще не имеет смысла, так как ICC доступен только для интела - сюрприз?..

     
  • 4.41, User294 (ok), 01:59, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >вы собираете свою программу под MIPS?

    Я вот собираю софт под мипс. А что, OpenWRT прикольная штука :P. А интель с их проприетарным блобом с подозрительным поведением "работает только на процессораходной фирмы" - специально созданы для фруктов типа вас, которые думают только о том как бы сиюминутно урвать а о последствиях подумать - кишка тонка.

     
     
  • 5.83, Аноним (-), 17:36, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >созданы для фруктов типа вас, которые думают только о том как бы сиюминутно урвать а о последствиях подумать - кишка тонка.

    Следите за своим языком уважаемый.

     
     
  • 6.112, Анонимус интернетикус (?), 11:17, 08/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >>созданы для фруктов типа вас, которые думают только о том как бы сиюминутно урвать а о последствиях подумать - кишка тонка.
    >
    >Следите за своим языком уважаемый.

    Он прав, нехрен на язык тыкать. Таких интелолюбов давить как тараканов надо, набижали тут

     
  • 2.45, bircoph (?), 02:47, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >GCC и рядом не стоял по производительности с Intel

    Как сказать, как сказать... Graphite на ряде задач рвёт Intel.

     

  • 1.5, Аноним (-), 21:23, 04/01/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Ну сделали компилятор для себя. Всем остальным вообще не обязаны помогать, да ещё и разбирать, что их поделки умеют, включили всё по умолчанию и на том спасибо.
    В качестве единственного верного варианта решения проблемы предлагается: писать код на ассемблере.
     
  • 1.8, 123456 (??), 21:30, 04/01/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    компилятор от интел оптимизирован под процессоры интел. ну надо же, какое сенсационное открытие сделала желтая пресса!
     
     
  • 2.17, Tav (ok), 21:52, 04/01/2010 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Еще раз внимательно прочитайте новость. Компилятор от Интел приводит к понижению производительность программ на процессорах, CPUID которых указывает на то, что это не Интел. При подмене CPUID производительность на том же процессоре возрастает.
     
     
  • 3.28, MinimumLaw (?), 23:25, 04/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > Компилятор от Интел приводит к понижению производительность
    >программ на процессорах, CPUID которых указывает на то, что это не
    >Интел. При подмене CPUID производительность на том же процессоре возрастает.

    Слушайте, я в этой жизни многого не понимаю, но по моему мнению у интеловского компилятора очень специфические задачи. Кто в здравом уме решиться плодить им код общего назначения? Для этого есть MS Visual Studio, GCC, SunStudio наконец...
    А вот ежели нужна пиковая производительность в конкретной задаче на конкретном железе... За такая что 2-3% в плюс архиважно... Да и если нужна пиковая производительность на архитектурах i386 или x64 - то у интела конкурентов нет. Все остальное - бюжетный десктоп, но это ж тема совсем другого разговора.

     
     
  • 4.32, CAHbKA (?), 00:43, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >Слушайте, я в этой жизни многого не понимаю, но по моему мнению
    >у интеловского компилятора очень специфические задачи. Кто в здравом уме решиться
    >плодить им код общего назначения?

    Ну канешна.
    openmp, mpi, всяческие разумные оптимизации, и т.д. и т.п. - специфика нашего времени.
    Опять же инфраструктура, да хоть та же parallel studio
    Тем не менее - про код пожалуй что и верно. Из соображений лицензирования.

     
  • 4.46, bircoph (?), 02:56, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Вы, батенька, не прониклись идеей антимонопольной политики корпорация _не_ имее... большой текст свёрнут, показать
     
     
  • 5.48, aZ (ok), 04:55, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • –1 +/
    На продукции конкурентов компилятор от интел вообще не обязан работать.
     
     
  • 6.70, liks (??), 12:21, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >На продукции конкурентов компилятор от интел вообще не обязан работать.

    С одним НО.. Он не должен заявлять, что работает где-то помимо Intel.

     
  • 5.51, ximaera (?), 07:02, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >Вы, батенька, не прониклись идеей антимонопольной политики: корпорация _не_ имеет права *сознательно*
    >ухудшать работу своего компилятора на продукции конкурентов. Речь идёт именно о
    >сознательном ухудшении кода в зависимости от CPUID. И здесь я полностью
    >поддерживаю антимонопольщиков США. Хочется пожелать нашим быть не хуже.

    Вот если бы больше компиляторов не было в природе, тогда, наверное, да. А так это просто алгоритм оптимизации -- способ оптимизации выбирается по CPUID, для неизвестных CPUID не выбирается ничего. Всё логично.

     
  • 2.24, Demo (??), 22:43, 04/01/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >компилятор от интел оптимизирован под процессоры интел. ну надо же, какое сенсационное
    >открытие сделала желтая пресса!

    Да и хрен с ним. Я icc скомпильнул тут одну DDL-ку (софт-модем). И что же? Практически мизерные отличия от VC компилятора. Увеличения производительности ---- никакого.

     
     
  • 3.29, MinimumLaw (?), 23:39, 04/01/2010 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Эх Люди Софт-модем DLL от него Вы задумывались что эта либа делает ... большой текст свёрнут, показать
     
     
  • 4.52, ximaera (?), 07:04, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >Результат работы интеловского компилятора заметен на вычислительных задачах. И не просто на вычислительных, а на алгоритмически оптимизированных вычислительных задачах. При этом, скорее всего Вам не удастся отделаться только ключем -O<что там у интела?> и понадобится еще пара-тройка ключей управляющих размещением и выравниванием.
    >
    >Другое дело, что таких задач практически нет. Большинство програм всего-лишь вызывают определенные
    >функции ОС или DirectX/OpenGL. А при таком раскладе все компиляторы плодят
    >примерно один и тот же код.

    Абсолютно согласен, но всё-таки "вычислительная задача" не всегда значит "графическая задача" :) Счётных задач хватает.

     
  • 4.73, Demo (??), 12:49, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >Эх... Люди... Софт-модем... DLL от него... Вы задумывались
    >что эта либа делает? Она ж двоичный блок для другого проца через
    >интерфейс перегоняет и только.

    Битовый поток с эфира демодулируется и декодируется программно. В DLL-ке всякие ф-ии вроде FFT, Viterbi, Turbo Code и т. д. Чисто вычислительные задачи. Писано каким-то финским студентом на голом C для linux, адаптировано под виндовую DLL.

     
  • 2.26, FPGA (ok), 23:11, 04/01/2010 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > компилятор от интел оптимизирован под процессоры интел. ну надо же, какое сенсационное открытие сделала желтая пресса!

    А новость вдумчиво прочитать? Готов спорить: твоя ОС - windows. Я в этом даже не сомневаюсь. Это и характерные заявления, характерная степень анализа прочитанного...

     
     
  • 3.35, Читатель (?), 01:22, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Я не писатель, я больше читатель, но иногда такой бред пишет основная масса наро... большой текст свёрнут, показать
     
     
  • 4.36, Читатель (?), 01:25, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Просто ожидал тут прочитать что-нибудь умное именно про ICC думал мож в комментах что появится заслуживающего внимания.

    А тут чушь какуюто пишут.

     
  • 4.44, FPGA (ok), 02:31, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +4 +/
    >Есть факты. Интел плюс ICC при правильном подходе дают выигрыш в скорости
    >на процессорах интел. Это значит только то что значит.

    Ха-ха, ровно то что я и ожидал, будто подтверждение моих слов. А теперь ЕЩЕ РАЗ ВНИМАТЕЛЬНО прочитай текст новости.

    Если прочитаешь еще раз и не увидишь в чем состоит нешуточная проблема - не нагружай себя мыслями, только зря время потратишь... =(

     
  • 2.42, User294 (ok), 02:00, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +4 +/
    >компилятор от интел оптимизирован под процессоры интел. ну надо же, какое сенсационное
    >открытие сделала желтая пресса!

    Да, и именно поэтому замена CPUID с одного на другой так меняет результат :).Сказки это круто но в данном случае смахивает на некий саботажик. Что бы там интель не пиндел.

     

  • 1.12, alexxy (?), 21:33, 04/01/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    зато большая часть вычислительного софта на gcc работает стабильнее =)
     
     
  • 2.33, CAHbKA (?), 00:48, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >зато большая часть вычислительного софта на gcc работает стабильнее =)

    с чего бы? стабильНЕЕ то?
    Знаю большой и вполне себе вычислительный софт, под линукс, компиленный ICC - БД Oracle.

     
     
  • 3.39, К слову (?), 01:45, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +2 +/
    И все таки возраст )))
    Во-первых, Oracle не БД, а СУБД ("найдите 10 отличий" :) ).
    Во-вторых, БД - не вычислительный софт и быть им не может.
    Учитесь, учитесь, учитесь... как завещал великий дедушка... )

     
     
  • 4.71, liks (??), 12:24, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >И все таки возраст )))
    >Во-первых, Oracle не БД, а СУБД ("найдите 10 отличий" :) ).
    >Во-вторых, БД - не вычислительный софт и быть им не может.
    >Учитесь, учитесь, учитесь... как завещал великий дедушка... )

    Очень даже вычислительный. Это MySQL не вычислительный, Вы просто наверное Оракла не видели :-)

     
  • 4.85, CAHbKA (?), 18:52, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >И все таки возраст )))
    >Во-первых, Oracle не БД, а СУБД ("найдите 10 отличий" :) ).
    >Во-вторых, БД - не вычислительный софт и быть им не может.
    >Учитесь, учитесь, учитесь... как завещал великий дедушка... )

    А может РСУБД ? Многие и многие этой букве "Р" придают большое значение.

    Нормальный, даже отличный, и вполне себе вычислительный софт.
    И что про стабильНЕЕ ?

     
  • 3.75, alexxy (?), 15:04, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ну про оаркл я не в курсе ибо его исходников не видел.
    А вот всякие квантовые химиии, молекулярные динамики и тд лучше пашут  именно на gcc
    И что характерно пашут не только на x86 а на большой пачке архитектур (mips, ppc, ppc64, sparc, ia64) включая даже векторные компы от NEC которые сильно любят японцы
     
     
  • 4.88, CAHbKA (?), 19:16, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >архитектур (mips, ppc, ppc64, sparc, ia64) включая даже векторные компы от
    >NEC которые сильно любят японцы

    дык и причем тут intel-овский компилятор ?

     
     
  • 5.105, alexxy (?), 16:45, 06/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    при том что ан x86 сей софт собранный интелом работает не стабильно и медленно.
    а вот если браьт gcc >=4.2 для новых версий то все хорошо быстро и корректно
     
     
  • 6.106, CAHbKA (?), 18:04, 06/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >при том что ан x86 сей софт собранный интелом работает не стабильно
    >и медленно.
    >а вот если браьт gcc >=4.2 для новых версий то все хорошо быстро и корректно

    Странно. Настоящие научные чуваки пишут другое.
    Погуглил малость и вот в статье "High Performance Computation and Interactive Display of Molecular Orbitals on GPUs and Multi-core CPUs"  есть пара табличек. Взгляните
    http://www.ks.uiuc.edu/Publications/Papers/PDF/STON2009/STON2009.pdf

    Я там вижу разницу В РАЗЫ.

    Или теперь будет акцент на том, что именно 4.2+ ого-го? Типа до 4.2 наука стояла? (:

     
     
  • 7.107, CAHbKA (?), 18:26, 06/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >Или теперь будет акцент на том, что именно 4.2+ ого-го? Типа до
    >4.2 наука стояла? (:

    А вот и по gcc 4.2, и тоже научники пишут, там atlas-ы шматласы всякие
    http://www.cs.utsa.edu/~qingyi/papers/gemm07.pdf

     
  • 2.76, _umka_ (??), 15:22, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    давно gcc с опциями -O2 или -O3 стал генерировать рабочий код ?
    А то регулярно натыкаюсь что -O2 генерит мусор и приходится уходить на -O1..
     
     
  • 3.80, Карбофос (ok), 16:50, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    он может и на -O0 хрень делать. зависит от кривости кода. так в чем заключается выражение "генерит мусор"? прога вываливается?
     
  • 3.108, tupka (?), 10:35, 07/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >А то регулярно натыкаюсь что -O2 генерит мусор..

    А на входе что ?

     

  • 1.13, Аноним (-), 21:35, 04/01/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    > не подозревая, что их приложения могут потерять в производительности при работе на CPU AMD и VIA

    Вообще то здравомыслящему программисту не составит труда дизассемблировать сгенерированной код и посмотреть. Я так и зделал года 4 назад. Я тогда "еще один все понял", и использовал мелкософтовский компилятор (извините, кодил под винду в то время)

     
     
  • 2.34, dq0s4y71 (??), 01:17, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >Вообще то здравомыслящему программисту не составит труда дизассемблировать сгенерированной код и посмотреть.

    Ни один здравомыслящий программист не будет заниматься дизассемблированием без особой на то нужды. Ему что, делать больше нечего? С другой стороны, по ссылке написано:

    "The problem is that they are trying to hide what they are doing. Many software developers think that the compiler is compatible with AMD processors, and in fact it is, but unbeknownst to the programmer it puts in a biased CPU dispatcher that chooses an inferior code path whenever it is running on a non-Intel processor."

    Во-первых, почему они решили, что Интел пытается что-то там "скрыть"? От них-то Интел это почему-то скрыть не смог. :) Во-вторых, если программист _не_знает_, что какой-то компилятор генерит более качественный код для какого-то процессора, то производитель данного компилятора за это ответственности не несет.

     
     
  • 3.64, Карбофос (ok), 11:38, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +2 +/
    а зачем дизасмить, если есть исходники и в компиляторе можно задать опцию "сохранять транслированный в ассемблер код"?
     

  • 1.14, Карбофос (ok), 21:36, 04/01/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    интел уже повторно засветился на этом поприще...
     
  • 1.22, atesterev (?), 22:34, 04/01/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Создали бы консорциум... И дело с концом :)
     
  • 1.38, Аноним (-), 01:40, 05/01/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    на пустом месте раздули детектив прям, хуже желтой прессы айтишники пошли блин
     
     
  • 2.43, User294 (ok), 02:02, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +4 +/
    На пустом? Историю с сливом i915 барахла как "vista ready" мы еще помним. Вот такие вот методы у интеля. Ну и их давнего партнера заодно. Так что нагнуть этих гавриков лишний раз - самое то что надо, а то зарываются что-то с их методами.
     
     
  • 3.72, anonymous (??), 12:24, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    не напомните про i915?
     

  • 1.47, Аноним (-), 04:00, 05/01/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Вообще американские антимонопольщики правы - CPUID не может быть конкурентным преимуществом.
     
  • 1.53, ximaera (?), 07:20, 05/01/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Чёрт побери, это логично. Ло-гич-но. Ребята из Интела, скорее всего, мыслят в терминах моделей процессоров. Как они планируют оптимизацию? Очень просто: "Для модели A нужно выбрать такой-то сет инструкций, потому что он там быстрее. Для модели B лучше использовать другой сет, потому что он там есть. А в модели C когда-то был баг в реализации операции SHUFPD, поэтому мы используем третий сет таким образом, чтобы баг влиял поменьше, зато в модели D можно отыграться по полной". Как это выглядит в коде?

    switch(cpuid) {
    case MODEL_A: /* такой-то сет */ break;
    case MODEL_B: /* другой   сет */ break;
    case MODEL_C: /* третий   с воркэраундом сет */ break;
    case MODEL_D: /* третий   сет */ break;
    default: /* чёрт-те что, ничего не знаю, делаем по старинке */
    }

    Вот все эти AMD, VIA -- это вот этот default. А как иначе? В каждом релизе ходить в AMD за списком спецификаций и багов и тратить на них время? Или менять методологию разработки? Это всё дорого и не стоит того.

    И, в конце концов, логично, что default особенно и не обновляют. Он слабо интересует инженеров, так как на интеловских процессорах ecs:eip туда не попадает никогда. Теперь, наверное, его немного обновят. Но это маразм безумный.

     
     
  • 2.61, Аноним (-), 10:57, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Самый адекватный и логичный коммент.
    Ведь даже в новости написано что "Если попытаться выполнить на новейшем CPU программу, собранную старой версией компилятора, то оптимизация не будет активирована, даже для новых процессоров Intel." Другими словами даже на процессорах интел компилятор от интел может не дать высокой производительности.
     
  • 2.63, northbear (??), 11:24, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Ага... Новое веяние в области оптимизации кода!
    Вместо того, чтобы патчить микрокод, обходить свои собственные грабли в компиляторе. А потом в случае глюков камней заявить что, мол, это у всего остального компиляторы кривые, мол на нашем icc все работает нормально.

    Экономия бешенная...

     
  • 2.90, vkni (?), 19:45, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >Чёрт побери, это логично.

    Нет, это не логично. Вот в 2000-м году я покупаю PIII и современный на тот момент Intel C++ Compiler. И всё хорошо оптимизируется и работает до перехода на PIV. А на этих процессорах выполняется default код с соответствующими провалами. Хотя все необходимые инструкции поддерживаются.

     

  • 1.54, Аноним (-), 07:30, 05/01/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Если предыдущие предложения вас не устраивают, то попробуйте опровергнуть:
    (х-1/3)=(х/1.5)

    (1/3)(2x) = (1/3)(3x - 1) [x = 1]

    :)

     
     
  • 2.81, anon2 (?), 16:52, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >Если предыдущие предложения вас не устраивают, то попробуйте опровергнуть:
    >(х-1/3)=(х/1.5)
    >
    >(1/3)(2x) = (1/3)(3x - 1) [x = 1]
    >
    >:)

    вы не поняли.
    (х-1/3)=(х/1.5) читаем как x-(1/3)*x = x/1.5 или (2/3)*x = (2/3)*x.

     

  • 1.55, anthonio (ok), 07:59, 05/01/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Мда... Intel -- зло ещё то.
    К примеру, у меня есть знакомый, который свято любит процы Intel и никакие доказательства того, что можно купить за те же деньги более производительный вариант его не интересуют. И таких как он, я позодреваю, немало... :(
     
     
  • 2.59, Карбофос (ok), 09:56, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    к сожалению, таких много. но когда начинают считать деньги и умеют это делать, не основываясь на фанатизме, тогда обычно покупают AMD. для особо упертых есть тестовые программы для сравнения производительности. есть, конечно, кекусы, которым западло покупать что-то, окромя интела. например, много амеров не знают ничего, кроме интела.
     
  • 2.89, CAHbKA (?), 19:22, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >Мда... Intel -- зло ещё то.

    AMD безусловное зло -- помню когда интел буксовал с пнями4, ну перед выпуском кор, AMD задирало цены на свои камни до небес. (;

     

  • 1.57, vkni (?), 09:06, 05/01/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Очень я рад, что вскрылась чудовищная несправедливость по отношению к AMD ;-). Понятно, есть ещё один метод работы с AMD - генерировать программы БЕЗ "обходного" кода, только с оптимизированным (там есть ключик для этого).

    Но, честно говоря, меня больше волнует следующее:

    The Intel CPU dispatcher does not only check the vendor ID string and the instruction sets supported. It also checks for specific processor models. In fact, it will fail to recognize future Intel processors with a family number different from 6.

    По-русски, это означает, что если вы купили компилятор Intel, оттранслировали на нём программу и думаете, что на будущих Intelовских процах она будет работать быстро, вас жестоко накололи. С выходом следующей генерации процов код придётся перекомпилировать на НОВОЙ версии компилятора, либо мириться с уменьшенной производительностью по сравнению со старыми CPU. Т.е. компилятор нужно обновлять и, естественно, держать исходный код расчётной программы неподалече.

    И это, на мой взгляд, поучительно.

     
  • 1.62, northbear (??), 11:15, 05/01/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    А что в компиляторе icc нет возможности явно указать под какой проц осуществлять сборку?


     
     
  • 2.66, const86 (ok), 11:58, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > А что в компиляторе icc нет возможности явно указать под какой проц осуществлять сборку?

    Есть. Но для этого пользователю нужно иметь на руках исходники и компилятор.

     
  • 2.100, pavlinux (ok), 01:27, 06/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Code Generation --------------- -x code1 , code2 , generate speci... большой текст свёрнут, показать
     

  • 1.65, Colizium (?), 11:53, 05/01/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Ребят, вот вы тут спорите Интел-АМД-Интел-АМД, сказал кто-то то, сказал кто-то сё...
    А вот хоть тресни, но на той же фрюхе 7.2  интеляка показывает (кордуо обычный) производительность, например в маршрутизации и в роли VPN сервака, выше чем АМД (феном тот же...) При небольших нагрузка разница не заметна, а вот когда начинает нагрузка "подпирать под крышку", - стабильности Интеловских мозгов выше.. (на АМД пробовали 386 и AMD64, и тюнил по различным мануалам, и производителей менять пробовали)... Да АМД дешевле, но не всегда в этом счастье (дороговизна до разумных пределов) =)
     
     
  • 2.68, Карбофос (ok), 12:04, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    это профилировщиком выясняется. в основном зависит от размерности структур. если данные оптимально ложатся в кэш с минимальными промахами, то это есть гуд.
     
  • 2.91, mma (?), 20:05, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Если откинуть новые интелы(i7/i5) то ситуация такова:
    1) Если приложение сумеет нагрузить 4 ядра то выбор между амд и интел зависит от задачи.
    2)В случае если приложение эффективно работает в один поток или "двух-поточное" то два ядра от корки буду почти всегда лучше.
    3)У корки приемущество чисто в более современной архитектуре - он умеет более эффективно производить выборку и за один такт в большинстве случаев сможет выполнить больше команд.
    4)У амд приемущество в нативной четырехядерности(а не как у корок спареный двухядерник) и в точ что ядра умеют заглядывать друг к дургу в L2.
    5)В случае интенсивных операций ввода-вывода корка опять будет лучше за счет 3
     
     
  • 3.98, Ariel (??), 23:34, 05/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    можете несколько подробнее о core i7?
     

  • 1.67, Colizium (?), 11:59, 05/01/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Хотя и инфа с ссылки http://www.ixbt.com/cpu/intel-ci5-660.shtml довольно интересные результаты тестов показывает...
     
  • 1.77, Аноним (-), 15:33, 05/01/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    С Intel все понятно. Была новость, что AMD поможет оптимизации GCC или что-то в этом роде. Это происходит давно и целенаправленно - http://developer.amd.com/CPU/GNU/Pages/default.aspx. Intel похоже больше вкладывается в свой компилятор, но про совместимость с GCC они тоже пишут.
     
     
  • 2.101, pavlinux (ok), 01:37, 06/01/2010 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > но про совместимость с GCC они тоже пишут.

    Compatibility
    -------------

    -gcc-name=<name>
              name and location of gcc if not where expected
    -gxx-name=<name>                                        
              name and location of g++ if not where expected
    -gcc-version=<version>                                  
              specify the <version> of gcc compatibility.  Default value matches
              gcc version installed.  Major/Minor versions listed but patch    
              levels (i.e. 345) are permissible                                
                320 - gcc 3.2.x compatibility                                  
                330 - gcc 3.3.x compatibility                                  
                340 - gcc 3.4.x compatibility                                  
                400 - gcc 4.0.x compatibility                                  
                410 - gcc 4.1.x compatibility                                  
                420 - gcc 4.2.x compatibility                                  
    -fabi-version=<val>                                                        
              directs the compiler to select a specific ABI implementation      
                0 - most recent ABI implementation                              
                1 - g++ 3.2 compatible ABI implementation                      
                2 - most conformant ABI implementation    

     
  • 2.102, CAHbKA (?), 04:57, 06/01/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >С Intel все понятно. Была новость, что AMD поможет оптимизации GCC или

    О, AMD видими хороший буржуин? Напоминает грязные деньгам оракла и чистые санок в затёртой теме про майsql.
    Ужели они, AMD, научат gcc правильно оптимизировать под VIA-шные процы, ну под те аппаратные расширения, что у них есть (кажется был аппаратный aes и что-то там еще) ?
    А может под упомянутые mips'ы ? Держите карман шире!
    Скорее уж интелу следует сказать спасибо за кампанию о пользе параллельных/многоядерных вычислений. Многие задумались и двинулись. И многие пользу ощутили от этого.

     

  • 1.93, liks (??), 20:37, 05/01/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Забавно, AMD уже получило кучу бабла от Intel, только вроде Intel вздохнул, что суда не будет, а тут тебе опять проблема.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру