LINUX.ORG.RU

Вопрос к гентушникам (или спецам по gcc)


0

2

Задумал пересобрать gtk со своими флагами, вместо стандартных в слаке 486-686 Но какие флаги не ставил, native, еще кучу, даже О3 пробовал, по результатам gtkperf результаты хуже, чем у патрика с его простейшими флагами. Пересобирал pixbuf и отдельно и вместе c gtk со всякими оптимизациями, результат все равно хуже
Причем, что удивило, пересборка qt с native по тестам дала хоть и маленький , но прирост.
В чем причина разницы в результатах для gtk и qt, в gcc, в самих тулкитах, в чем то еще ?
ЗЫ Насчет раздела, может и не сюда, но первое что попалось

Не туда копаешь. Смотри наличие/отсутствие композитинга, архитектуру ускорения и драйверы.

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

А что gcc -O2 -march=i486 -mtune=i686 -Q --help=optimizers говорит? Лучше, конечно, diff между этим выводом и тем, который получается при ваших оптимизациях.

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

Мм, при всей моей горячей любви к мегабаксу у меня тоже рендеринг был быстрее с native.
К тому же это никак не объясняет такую разницу

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

Тем не менее он есть, маленький но есть. Но есть только для qt, для gtk напротив ухудшение. Меня, собственно, интересует не сам по себе прирост, а почему он есть в qt и есть ухудшение в gtk , при тех же флагах.

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

Может быть за счет того, что C++.

Вообще можно профайлером посмотреть, если тест нормальный

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

бытует мнение, что играться с флагами gcc — только искать приключений на свою попу.

явных и неявных багов в gcc вагон и маленькая тележка. и особенно много их в редко используемых флагах и комбинации оных. т.ч. выбор патрика в данном случае — самый мудрый.

даже если при этом выборе теряются 0.001% производительности, но зато гораздо меньше шансов нарваться на какой-нибудь феерический баг gcc.

beastie ★★★★★ ()
Последнее исправление: beastie (всего исправлений: 1)

все дело в том, что ускорение гентушечки за счет оптимизации под свой процессор - форсед миф гентушников, у которых счета за электричество оплачивают родители.

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

форсед миф гентушников

Ты хотел сказать «форсед миф не-гентушников», так как гентушники, как правило, разумные люди.

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

да нет, как раз только гентушники страдают задрачиванием флагов gcc, причем исключительно из-за этого своего мифа.

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

Ну, я бы не сказал что native это такой уж редчайший флаг :-) Но тем не менее gtk с ним хуже. Интересно почему так, в gtk хуже а в qt лучше, сам пос себе прирост копеечный и интереса особого не представляет. Интересно почему именно такое различие, косяк gcc, особенности тулкитов или что то еще.

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

Бери профилировщик, и смотри сгенерированный ассемблерный код для «горячих мест», очевидно же.

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

начнём хотя бы с того, что это два разных языка, два разных компилятора, две разные стандарные библиотеки и два разных тулкита. и где и как они там пересекаются и что и где оно там оптимизирует, занают только разработчики gcc. да и не всякая оптимизация оптимизация.

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

да нет, как раз только гентушники страдают задрачиванием флагов gcc, причем исключительно из-за этого своего мифа.

Я - гентушник, расскажи мне чем я страдаю

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

кхм... как и в любом социуме на 1-го разумного приходятся 9 не очень и 90 дебилов. ;)

Просто этот миф как правило слышно из уст тех, кто либо читал про Gentoo либо планирует переходить. Опытный гентушник знает реальную цену флагам компиляции и никогда не скажет что это что-то такое супер- мега- из-за чего увеличивается скорость. Получается как в анекдоте: «Ненавижу Битлз! - А ты их слышал? - Конечно! Мне Вася напел.»

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

ну, знаешь, вся селёдка — рыба, но не вся рыба селёдка. т.е. очевидно, что если др*чиш на флаги — то гентушник, но наоборот не обязательно... ;)

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

ладно, пошутили и хватит — не принимай в серьёз. гентушники тоже хорошие люди.

beastie ★★★★★ ()

пересобрать gtk со своими флагами

вместо стандартных

какие флаги не ставил даже О3 пробовал

Вопрос к гентушникам (или спецам по gcc)

Гентушники обычно так не делают, а смотрят Safe Cflags.

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

«Смотрим в книгу видим фигу» (с) :-) native это как раз из гентушных рекомендаций, но с ними gtk медленне. Так что фтопку ваши вики, курите патрика :-)

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

ты логику путаешь «только гентушники» -ne «все гентушники»

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