Entry tags:
Компиляторное внезапное
Скачал триал-версию компилятора от Intel. В своё время на криптокомовском коде он давал прирост производительности раза в два (без учёта асемблерных вставок, которые шансы выравнивали). Одновременно скачал компилятор от AMD и устроил недобенчмарк на том, что под руку попалось — машинка с AMD-шным процессором и машинка с Intel ATOM. Результат меня удивил.
Во-первых, разница между icc, aocc и gcc на новом хеше оказалась пренебрежимо малой, а на Intel-овом процессоре так даже в пользу gcc. Лёша Дегтярёв в своё время код оптимизировал неплохо.
Во-вторых, по подписи AMD-шный компилятор оказался быстрее процентов на 10 (на нашей арифметике), чем gcc, на обеих архитектурах, а Intel неожиданно отстал фатально даже от gcc на AMD-шных процессорах и пришёл ноздря в ноздрю c aocc на Intel-овом.
В-третьих, по шифру (который «старый» ГОСТ) AMD-шный компилятор быстрее gcc на 12% на AMD и примерно одинаков на Intel.
В-четвёртых, AMD-шный профайлер (который CodeXL) отказался показывать мне, что за код генерит AMD-шный компилятор, что отдельно смешно.
Что с этими данными делать, я пока не знаю. Ну то есть мы кое-что учтём в политике распространения, я надеюсь. А вообще я хочу об этом поговорить, но пока не знаю, с кем.
Предыдущая запись про сравнение компиляторов.
Update: Максим Дунин убедил меня, что скорее всего это эффект нового clang по сравнению с не новым gcc, но вопрос о целесообразности компилятора от Intel, пожалуй, закрыт.
Во-первых, разница между icc, aocc и gcc на новом хеше оказалась пренебрежимо малой, а на Intel-овом процессоре так даже в пользу gcc. Лёша Дегтярёв в своё время код оптимизировал неплохо.
Во-вторых, по подписи AMD-шный компилятор оказался быстрее процентов на 10 (на нашей арифметике), чем gcc, на обеих архитектурах, а Intel неожиданно отстал фатально даже от gcc на AMD-шных процессорах и пришёл ноздря в ноздрю c aocc на Intel-овом.
В-третьих, по шифру (который «старый» ГОСТ) AMD-шный компилятор быстрее gcc на 12% на AMD и примерно одинаков на Intel.
В-четвёртых, AMD-шный профайлер (который CodeXL) отказался показывать мне, что за код генерит AMD-шный компилятор, что отдельно смешно.
Что с этими данными делать, я пока не знаю. Ну то есть мы кое-что учтём в политике распространения, я надеюсь. А вообще я хочу об этом поговорить, но пока не знаю, с кем.
Предыдущая запись про сравнение компиляторов.
Update: Максим Дунин убедил меня, что скорее всего это эффект нового clang по сравнению с не новым gcc, но вопрос о целесообразности компилятора от Intel, пожалуй, закрыт.
no subject
И gcc какой - свежий (8.2, 7.4) или древний?
no subject
no subject
Попробуй сравни с последним, который в текущей не-LTS убунте или Debian Testing.
И с 7.3 который в текущем LTS. Не зря же они сейчас первую цифру в версии меняют.
no subject
no subject
no subject
Сколь я помню, не впечатлило.
Но можно еще раз попробовать.
no subject
То есть вплоть до того, что апстрим постгреса вынужден был некоторые ворнинги поотключать. Иначе слишком много пришлось бы возиться с чисткой кода.
no subject
no subject
Поэтому у меня сейчас warning free начиная с 6-й. Ну и clang тоже - у него паранойя в другую сторону.
Заодно в процессе выучил какие модификаторы форматов нужно использовать для печати size_t и прочих интересных типов, чтобы warning-ов не было ни на 32, ни на 64 битных платформах. Вот бы еще визуалковый ворнинги победить...
no subject
no subject
no subject
no subject
no subject