The OpenNET Project / Index page

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



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

В компиляторе PCC обеспечена возможность сборки FreeBSD, opennews (??), 31-Янв-11, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


14. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от Аноним (-), 31-Янв-11, 02:59 
что лучше - иметь два недопиленных компилятора или один допиленный?
Ответить | Правка | Наверх | Cообщить модератору

15. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от anonymous (??), 31-Янв-11, 03:07 
> что лучше - иметь два недопиленных компилятора или один допиленный?

лучше -- два допиленых. что, собственно, и наблюдаем.

Ответить | Правка | Наверх | Cообщить модератору

72. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от Аноним (-), 31-Янв-11, 12:04 
отставание по тестам = недопиленность. gcc тоже есть куда пилить, оптимизации там разные хитрые, разобраться с -О3, какие там "оптимизации" когда во вред, а когда во благо и т.д.
Ответить | Правка | Наверх | Cообщить модератору

75. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от PereresusNeVlezaetBuggyemail (ok), 31-Янв-11, 12:31 
> отставание по тестам = недопиленность. gcc тоже есть куда пилить, оптимизации там
> разные хитрые, разобраться с -О3, какие там "оптимизации" когда во вред,
> а когда во благо и т.д.

Отставание мизерное на самом деле. Оптимизации можно и в PCC крутить, речь шла о наиболее отлаженных настройках, которые по умолчанию. Вы разве не знаете, часом, почему все нормальные ОС собираются с -O2? ;) И потенциал у PCC сейчас больше. Как минимум за счёт его "заточенности".

Ответить | Правка | Наверх | Cообщить модератору

79. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от anonymous (??), 31-Янв-11, 12:49 
> Вы разве не
> знаете, часом, почему все нормальные ОС собираются с -O2? ;)

традиция?

Ответить | Правка | Наверх | Cообщить модератору

97. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от PereresusNeVlezaetBuggyemail (ok), 31-Янв-11, 16:08 
>> Вы разве не
>> знаете, часом, почему все нормальные ОС собираются с -O2? ;)
> традиция?

Потому что это наиоблее отлаженный режим оптимизированной кодогенерации. Я понимаю, на свете много наивных людей, считающих, что компиляторы не ошибаются... К сожалению, ошибаются. Бывают случаи, что сторонний софт приходится вообще под -O0 собирать принудительно. Потому что иначе у него едет крыша, стоит ему попасть в условия, отличающиеся от условий тестов разработчиков.

Ответить | Правка | Наверх | Cообщить модератору

101. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от ананим (?), 31-Янв-11, 16:43 
это от недостатка знаний. вот в моём гентушном make.conf
CFLAGS="-O2 -march=native -ftree-vectorize -pipe -ftree-parallelize-loops"

зы:
к чему я это всё написал? да к тому, что О2 - это далеко не все возможные оптимизации. это только один из старейших флагов.
вот список http://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html того многообразия, который пока и не снился остальным.

Ответить | Правка | Наверх | Cообщить модератору

104. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от PereresusNeVlezaetBuggyemail (ok), 31-Янв-11, 17:03 
> это от недостатка знаний. вот в моём гентушном make.conf
> CFLAGS="-O2 -march=native -ftree-vectorize -pipe -ftree-parallelize-loops"
> зы:
> к чему я это всё написал? да к тому, что О2 -
> это далеко не все возможные оптимизации. это только один из старейших
> флагов.
> вот список http://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html того многообразия,
> который пока и не снился остальным.

Для непонятливых: под ошибками кодогенерации понимаются не ляпы оптимизации как таковой, а генерация _некорректного_ кода (вплоть до invalid opcode). А перечисленные вами флаги оптимизации — это как раз костыли. Вы машину покупаете для того, чтобы на ней ехать, или чтобы доводить до ума? Не, поковыряться, побаловаться — оно, конечно, занятно. Но для реальной работы нужны отлаженные решения. А с отлаженностью как раз и возникают проблемы (зачастую неочевидные, так как срабатывают лишь в каких-то определённых ситуациях), и в среднем тем большие, чем больше применено нестандартных опций оптимизации.

Ответить | Правка | Наверх | Cообщить модератору

109. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от ананим (?), 31-Янв-11, 17:15 
для ещё более непонятливых:
>Отставание мизерное на самом деле. Оптимизации можно и в PCC крутить, речь шла о наиболее отлаженных настройках, которые по умолчанию.

чтобы что-то там можно было крутить, это что-то должно быть в наличии, а его пока нет.

Ответить | Правка | Наверх | Cообщить модератору

110. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от ананим (?), 31-Янв-11, 17:18 
а вот это отдельно прокоментирую:
>А перечисленные вами флаги оптимизации — это как раз костыли. Вы машину покупаете для того, чтобы на ней ехать, или чтобы доводить до ума?

я машину купил с такими вот костылями:
# cat /proc/cpuinfo | grep flags
flags        : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 popcnt aes lahf_lm ida arat dts tpr_shadow vnmi flexpriority ept vpid

что самое интересное - эти костыли я хочу заюзать.

Ответить | Правка | Наверх | Cообщить модератору

113. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +1 +/
Сообщение от PereresusNeVlezaetBuggyemail (ok), 31-Янв-11, 17:34 
>[оверквотинг удален]
> я машину купил с такими вот костылями:
> # cat /proc/cpuinfo | grep flags
> flags  : fpu vme de pse tsc msr pae mce cx8
> apic sep mtrr pge mca cmov pat pse36 clflush dts acpi
> mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp
> lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni
> pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr
> pdcm sse4_1 sse4_2 popcnt aes lahf_lm ida arat dts tpr_shadow vnmi
> flexpriority ept vpid
> что самое интересное - эти костыли я хочу заюзать.

Поздравляю. А вы в курсе, например, что MMX, SSE и иже с ними в обычных программах нафиг не сдались? Обычный код состоит сплошь из ветвлений (в т.ч. циклов), вызовов функций, выделении и освобождении памяти, записи значений в память... Самые частые арифметические операции — сложение, умножение и вычитание, причём над индивидуальными переменными. А все эти SIMD предназначены для сильно специфических мест.

Ну а что такое ACPI, MTRR, APIC и так далее — гугль вам в руки; к оптимизации они вообще отношения не имеют.

Ответить | Правка | Наверх | Cообщить модератору

118. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от ананим (?), 31-Янв-11, 17:54 
у меня уже очень стойкое чувство, что я много где более в курсе чем вы. :D
ха! да это даже не смешно - тут весь мир обсуждает почему флоатингпоинт вычисления на 64-битах требуют sse2, а на 32-х почему-то по старинке.
и уж тем более не мог предположить, что кто-то ещё не в курсе что:
>SSE2 extends MMX instructions to operate on XMM registers, allowing the programmer to completely avoid the eight 64-bit MMX registers "aliased" on the original IA-32 floating point register stack.

ps:
надо срочно интелю и амд рассказать что они не нужны. а то ребята как-то не в курсе.
а ребята из огрызка вообще оборзели - их макось на проц без поддержки ссе3 уже вообще не ставится.

Ответить | Правка | К родителю #113 | Наверх | Cообщить модератору

121. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от PereresusNeVlezaetBuggyemail (ok), 31-Янв-11, 18:04 
>[оверквотинг удален]
> флоатингпоинт вычисления на 64-битах требуют sse2, а на 32-х почему-то по
> старинке.
> и уж тем более не мог предположить, что кто-то ещё не в
> курсе что:
>>SSE2 extends MMX instructions to operate on XMM registers, allowing the programmer to completely avoid the eight 64-bit MMX registers "aliased" on the original IA-32 floating point register stack.
> ps:
> надо срочно интелю и амд рассказать что они не нужны. а то
> ребята как-то не в курсе.
> а ребята из огрызка вообще оборзели - их макось на проц без
> поддержки ссе3 уже вообще не ставится.

Вы таки невнимательно читали. Ещё раз вернитесь и прочитайте мой коммент. Особенно слова вроде "обычных" и "специфических мест".

Ответить | Правка | К родителю #118 | Наверх | Cообщить модератору

124. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от ананим (?), 31-Янв-11, 18:20 
да нет! :D
я всё правильно прочитал. и какими бы специфическими эти задачи не были, но они используются в системе, где установлено >2000 портежей.
и я не собираюсь от них отказыватся. тем более терять в производительности.
вот для примера пакеты с поддержкой sse
# equery h sse
* Searching for USE flag sse ...
[IP-] [  ] app-cdr/dvd95-1.6_p0:0
[IP-] [  ] dev-libs/DirectFB-1.4.5:0
[IP-] [  ] kde-base/kdelibs-4.5.5:4.5
[IP-] [  ] kde-base/ksplash-4.5.5:4.5
[I-O] [  ] media-gfx/blender-9999:2.5
[IP-] [  ] media-gfx/gimp-2.6.11:2
[IP-] [  ] media-libs/babl-0.1.2:0
[IP-] [  ] media-libs/flac-1.2.1-r3:0
[IP-] [  ] media-libs/gegl-0.1.2:0
[IP-] [  ] media-libs/libvpx-0.9.5:0
[IP-] [  ] media-libs/opencv-2.1.0:0
[IP-] [  ] media-libs/qimageblitz-0.0.6:0
[IP-] [  ] media-libs/speex-1.2_rc1:0
[IP-] [  ] media-sound/ardour-2.8.7:0
[IP-] [  ] media-sound/jack-audio-connection-kit-0.118.0:0
[IP-] [  ] media-sound/mpg123-1.13.1:0
[IP-] [  ] media-video/mplayer-1.0_rc4_p20101219:0
[IP-] [  ] media-video/transcode-1.1.5-r2:0
[IP-] [  ] media-video/vlc-1.1.6:0
[IP-] [  ] sci-libs/fftw-3.2.2-r1:3.0
Ответить | Правка | К родителю #121 | Наверх | Cообщить модератору

126. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от PereresusNeVlezaetBuggyemail (ok), 31-Янв-11, 18:29 
> да нет! :D
> я всё правильно прочитал. и какими бы специфическими эти задачи не были,
> но они используются в системе, где установлено >2000 портежей.
> и я не собираюсь от них отказыватся. тем более терять в производительности.

Да никто и не просит от них отказываться. Просто программы, алгоритмы которых _реально_ оптимизируемы с помощью того же SSE, обходятся и без этих ключей — такие узкие места выписываются на ассемблере, который позволяет получить полную отдачу от SIMD. Более того, нормальная программа сама будет использовать нужный вариант реализации алгоритма, в зависимости от процессора, на котором работает; более халтурно сделанные "зашивают" это знание в себя при компиляции.

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

Ответить | Правка | К родителю #124 | Наверх | Cообщить модератору

130. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  –1 +/
Сообщение от ананим (?), 31-Янв-11, 18:47 
ну это вообще слив. при чём двойной:
1) чтобы использовать возможности проца мне нужен только ассемблер и никаких готовых библиотек на языке С/с++. с таким же успехом можно предложить всё на асме писать. при чём я даже соглашусь - в идеальном мире с идеальными программистами так бы и было. но не будет в этой реальности.
2) icc конечно исправит недостатки сабжа, угу.
более полный фэйл мог бы случится только в утверждении - оптимизации вообще не нужны.

зы:
а ведь это был разговор только об особенностях проца.
и мы даже ещё близко не подобрались к таким плюшкам, как openmp - http://ru.wikipedia.org/wiki/OpenMP - который поддерживается гцц начиная с 4.2 и т.д.

Ответить | Правка | К родителю #126 | Наверх | Cообщить модератору

136. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от PereresusNeVlezaetBuggyemail (ok), 31-Янв-11, 19:40 
> 1) чтобы использовать возможности проца мне нужен только ассемблер и никаких готовых
> библиотек на языке С/с++. с таким же успехом можно предложить всё
> на асме писать. при чём я даже соглашусь - в идеальном
> мире с идеальными программистами так бы и было. но не будет
> в этой реальности.
> 2) icc конечно исправит недостатки сабжа, угу.
> более полный фэйл мог бы случится только в утверждении - оптимизации вообще
> не нужны.

Может быть, я действительно тупее паровоза, но идею обоих ваших выражений я не понял.

> зы:
> а ведь это был разговор только об особенностях проца.
> и мы даже ещё близко не подобрались к таким плюшкам, как openmp
> - http://ru.wikipedia.org/wiki/OpenMP - который поддерживается гцц начиная с 4.2 и т.д.

OpenMP — это совсем другой разговор, как и всё многопоточное программирование.

Ответить | Правка | К родителю #130 | Наверх | Cообщить модератору

150. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  –2 +/
Сообщение от anonymous (??), 01-Фев-11, 02:28 
> полную отдачу от SIMD. Более того, нормальная программа сама будет использовать
> нужный вариант реализации алгоритма, в зависимости от процессора, на котором работает;
> более халтурно сделанные "зашивают" это знание в себя при компиляции.

чую запашок проприетарщика.

Ответить | Правка | К родителю #126 | Наверх | Cообщить модератору

165. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +1 +/
Сообщение от PereresusNeVlezaetBuggyemail (ok), 01-Фев-11, 10:42 
>> полную отдачу от SIMD. Более того, нормальная программа сама будет использовать
>> нужный вариант реализации алгоритма, в зависимости от процессора, на котором работает;
>> более халтурно сделанные "зашивают" это знание в себя при компиляции.
> чую запашок проприетарщика.

Да-да, разработчики MPlayer — такие пропиетарщики...

Ответить | Правка | К родителю #150 | Наверх | Cообщить модератору

169. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от anonymous (??), 01-Фев-11, 11:01 
> Да-да, разработчики MPlayer — такие пропиетарщики...

то-то у меня mplayer детектирует камень и собирает специально под него оптимизированый код.

Ответить | Правка | К родителю #165 | Наверх | Cообщить модератору

171. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от PereresusNeVlezaetBuggyemail (ok), 01-Фев-11, 11:03 
>> Да-да, разработчики MPlayer — такие пропиетарщики...
> то-то у меня mplayer детектирует камень и собирает специально под него оптимизированый
> код.

Ему можно сказать и чтобы использовал автодетект в рантайме.

Ответить | Правка | К родителю #169 | Наверх | Cообщить модератору

172. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от anonymous (??), 01-Фев-11, 11:05 
> Ему можно сказать и чтобы использовал автодетект в рантайме.

можно. потому что пользователи can not into building from sources. и для этих несчастных пришлось пилить нафиг никому больше не нужный код. (нет, я не гентушник)

Ответить | Правка | К родителю #171 | Наверх | Cообщить модератору

174. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от PereresusNeVlezaetBuggyemail (ok), 01-Фев-11, 11:24 
>> Ему можно сказать и чтобы использовал автодетект в рантайме.
> можно. потому что пользователи can not into building from sources. и для
> этих несчастных пришлось пилить нафиг никому больше не нужный код. (нет,
> я не гентушник)

Такой автодетект ничего не стоит: при запуске указатели на функции определить, например, и всё. Главная сложность — это как раз реализация алгоритмов, но их-то всё равно надо реализовывать, в любом случае. :)

Ответить | Правка | К родителю #172 | Наверх | Cообщить модератору

176. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от anonymous (??), 01-Фев-11, 11:31 
> Такой автодетект ничего не стоит

ничего не стоит только то, чего нет. а автодетект стоит как минимум:
а) написания кода детекта;
б) векторизации вызовов функций (indirect call вместо direct call).

Ответить | Правка | К родителю #174 | Наверх | Cообщить модератору

178. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от PereresusNeVlezaetBuggyemail (ok), 01-Фев-11, 11:43 
>> Такой автодетект ничего не стоит
> ничего не стоит только то, чего нет. а автодетект стоит как минимум:
> а) написания кода детекта;

cpuid и ветка if'ов в случае x86; на других архитектурах что-то своё тоже есть. Это на самом деле не сложно, плюс в инете есть куча уже готовых решений.

> б) векторизации вызовов функций (indirect call вместо direct call).

В Си (и асме, разумеется) накладных расходов может и не быть, так как для Си принципиальной разницы нет: напишете вы

myfunc(a, b, c);

или
(*myfunc)(a, b, c);

В крайнем случае — одно дополнительное безусловное (т.е., не перезагружающее конвеер) разыменование указателя, время совершения которого — величина пренебрежимо малая, и не только на современных процессорах с их гигантскими кэшами. Ведь основное время проводится внутри этих функций.
Ответить | Правка | К родителю #176 | Наверх | Cообщить модератору

179. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от anonymous (??), 01-Фев-11, 11:51 
тем не менее нельзя сказать, что это "ничего не стоит".

а разница есть. хотя бы в том, что interprocedural optimization накроется медным тазом.

Ответить | Правка | К родителю #178 | Наверх | Cообщить модератору

194. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от PereresusNeVlezaetBuggyemail (ok), 01-Фев-11, 13:24 
> тем не менее нельзя сказать, что это "ничего не стоит".
> а разница есть. хотя бы в том, что interprocedural optimization накроется медным
> тазом.

GCC не трогает ассемблерные конструкции (которые, как уже говорилось, и составляют ядро таких функций). Поэтому ни о какой оптимизации в этих функциях речи и так быть не может.

Ответить | Правка | К родителю #179 | Наверх | Cообщить модератору

195. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от anonymous (??), 01-Фев-11, 13:27 
> GCC не трогает ассемблерные конструкции (которые, как уже говорилось, и составляют ядро
> таких функций). Поэтому ни о какой оптимизации в этих функциях речи
> и так быть не может.

то есть, что такое «interprocedural optimization» ты не знаешь. зачем тогда говоришь?

Ответить | Правка | К родителю #194 | Наверх | Cообщить модератору

198. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от PereresusNeVlezaetBuggyemail (ok), 01-Фев-11, 13:45 
>> GCC не трогает ассемблерные конструкции (которые, как уже говорилось, и составляют ядро
>> таких функций). Поэтому ни о какой оптимизации в этих функциях речи
>> и так быть не может.
> то есть, что такое «interprocedural optimization» ты не знаешь. зачем тогда говоришь?

Это вы не знаете, раз спорите. Повторяю ещё раз: то, что находится в виде ассемблерных вставок (или просто отдельных ассемблерных файлов) GCC НЕ оптимизирует. Поэтому никакие поддающиеся оптимизации паттерны он в них тоже выискивать не будет. Оптимизатор попросту игнорирует этот код. Так понятно?

Ответить | Правка | К родителю #195 | Наверх | Cообщить модератору

200. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от anonymous (??), 01-Фев-11, 14:15 
ну хватит, хватит уже расписываться в незнании. все, кому надо, поняли, что про interprocedural optimization вы прочли у меня в каменте впервые.
Ответить | Правка | К родителю #198 | Наверх | Cообщить модератору

202. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от PereresusNeVlezaetBuggyemail (ok), 01-Фев-11, 14:22 
> ну хватит, хватит уже расписываться в незнании. все, кому надо, поняли, что
> про interprocedural optimization вы прочли у меня в каменте впервые.

Я про них прочёл первый раз в анонсе GCC (уже и не вспомню, какой версии). А вот где вы про них прочли, я не знаю. Сходите, почитайте сами, что ли, что это такое, и почему в данных условиях о них говорить всё равно не приходится. Надоело всё разжёвывать.

Ответить | Правка | К родителю #200 | Наверх | Cообщить модератору

181. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от ананим (?), 01-Фев-11, 12:15 
тогда может разработчик mplayer'а объяснит сии флаги в его коде:

media-video/mplayer-1.0_rc4_p20101219:
...
+ + sse                 : fast floating point optimization for PentiumIII+ class chips
+ + sse2                : faster floating point optimization for SSE2 capable chips
+ + ssse3               : faster floating point optimization for SSSE3 capable chips (Intel Core 2 and later chips)

???

зы:
и заодно - почему они не работают в ppc
ззы:
2anonymous - неужели вы не видите, что этот собеседник обычный популистский трепач?

Ответить | Правка | К родителю #178 | Наверх | Cообщить модератору

182. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от anonymous (??), 01-Фев-11, 12:19 
> 2anonymous - неужели вы не видите, что этот собеседник обычный популистский трепач?

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

Ответить | Правка | К родителю #181 | Наверх | Cообщить модератору

186. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от ананим (?), 01-Фев-11, 12:26 
понятно.
а я вот вначале повёлся на "около-компиляторные" разговоры. потом смотрю - ну полный же 0.
Ответить | Правка | К родителю #182 | Наверх | Cообщить модератору

208. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от PereresusNeVlezaetBuggyemail (ok), 01-Фев-11, 14:37 
>[оверквотинг удален]
> ...
>  + + sse        
>         : fast floating
> point optimization for PentiumIII+ class chips
>  + + sse2        
>        : faster floating point
> optimization for SSE2 capable chips
>  + + ssse3        
>       : faster floating point optimization
> for SSSE3 capable chips (Intel Core 2 and later chips)

А что вам тут нужно объяснить?

Ответить | Правка | К родителю #181 | Наверх | Cообщить модератору

211. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от ананим (?), 01-Фев-11, 14:55 
действительно! :D
в общем с этого всё и начилось - гцц это может, pcc нет
Ответить | Правка | К родителю #208 | Наверх | Cообщить модератору

219. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от PereresusNeVlezaetBuggyemail (ok), 01-Фев-11, 16:18 
> действительно! :D
> в общем с этого всё и начилось - гцц это может, pcc нет

Тьфу, это вы с темы на тему так скачете, оказывается. PCC пока только учится, да.

Ответить | Правка | К родителю #211 | Наверх | Cообщить модератору

119. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +2 +/
Сообщение от arturpub (ok), 31-Янв-11, 18:01 
Да пусть и не приснится никогда. Зачем мне все это нужно? Почему бы
компилятору самому не решать, с какими опциями собирать мои исходники?
Раньше на всяких bcc я говорил -O когда надо быстро собрать, -Os когда
мало памяти, или -Ox когда ее нормально -- что еще надо?

Единственными опциями оптимизации должны быть:
- режим оптимизации (нет, -O, -Ox, -Os (теперь для редких случаев))
- целевая архитектура
- -pthread-veto

А дальше пусть сам кумекает -- векторизирует, анролит лупы, инлайнит,
параллелит, элиминирует... на кой черт мне об этом думать? Сравнение
компиляторов сведется к времени компиляции и выполнения тестовых
исходников. Да и вообще непонятно мне восхищение зиллионом опций, из
которых всегда используешь одни и те же 3.

Ответить | Правка | К родителю #101 | Наверх | Cообщить модератору

123. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от ананим (?), 31-Янв-11, 18:13 
>Да пусть и не приснится никогда. Зачем мне все это нужно? Почему бы компилятору самому не решать, с какими опциями собирать мои исходники?

ну наверное потому, что он именно это и делает.
вот только этих опций банально не во всех компиляторах особо и есть :D
а опции -O... - это алиас, который разворачивается в что-то типа:
-O2 turns on all optimization flags specified by -O. It also turns on the following optimization flags:

          -fthread-jumps
          -falign-functions  -falign-jumps
          -falign-loops  -falign-labels
          -fcaller-saves
          -fcrossjumping
          -fcse-follow-jumps  -fcse-skip-blocks
          -fdelete-null-pointer-checks
          -fexpensive-optimizations
          -fgcse  -fgcse-lm  
          -finline-small-functions
          -findirect-inlining
          -fipa-sra
          -foptimize-sibling-calls
          -fpartial-inlining
          -fpeephole2
          -fregmove
          -freorder-blocks  -freorder-functions
          -frerun-cse-after-loop  
          -fsched-interblock  -fsched-spec
          -fschedule-insns  -fschedule-insns2
          -fstrict-aliasing -fstrict-overflow
          -ftree-switch-conversion
          -ftree-pre
          -ftree-vrp
http://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html
опять же, раз мы говорим об компиляторах, то наверное и контингет их использующий должен как минимум быть уровнем выше, чем "продвинутый юзер".

Ответить | Правка | Наверх | Cообщить модератору

146. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от mr_gfd (?), 31-Янв-11, 23:43 
>[оверквотинг удален]
> -fsched-spec
>           -fschedule-insns  
> -fschedule-insns2
>           -fstrict-aliasing -fstrict-overflow
>           -ftree-switch-conversion
>           -ftree-pre
>           -ftree-vrp
> http://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html
> опять же, раз мы говорим об компиляторах, то наверное и контингет их
> использующий должен как минимум быть уровнем выше, чем "продвинутый юзер".

Вот ты такой весь гентушниук на оптимизации помешанный... Сутки весь кал (world) пересобираете в 6 потоков??!!! Факин щит, покажите мне пальцем продакшн, в котором процентное соотношение cpu time при компиляции с понтами и плюшками хотя бы за год отыграет сутки этого cpu time на компиляции?!. Что мне нужно я соберу так, как нужно, а остальное просто пусть без дебаг символов, и понеслась, некогда тут.

Ответить | Правка | Наверх | Cообщить модератору

152. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от anonymous (??), 01-Фев-11, 02:31 
> Что мне нужно я соберу так, как нужно, а остальное просто
> пусть без дебаг символов, и понеслась, некогда тут.

«что, солдат, машина не заводится? отставить, времени нет! поехали, потом заведёшь!»

Ответить | Правка | Наверх | Cообщить модератору

201. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от mr_gfd (?), 01-Фев-11, 14:18 
>> Что мне нужно я соберу так, как нужно, а остальное просто
>> пусть без дебаг символов, и понеслась, некогда тут.
> «что, солдат, машина не заводится? отставить, времени нет! поехали, потом заведёшь!»

Да как раз машина заведенная. Только вот если не крикрутить к ней свистелок и перделок - будет 90км/ч ехать, а после затраченных суток на пересборку - 91км/ч. Еще вопросы?

Ответить | Правка | К родителю #152 | Наверх | Cообщить модератору

205. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от ананим (?), 01-Фев-11, 14:27 
есть такие - вот у фольсвагена двигатель миллионник, а у автоваза 75 тысяч.
ещё вопросы?
Ответить | Правка | К родителю #201 | Наверх | Cообщить модератору

199. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от arturpub (ok), 01-Фев-11, 13:51 
Да знаю что алиасы и доку читал. И спеки обоих Интела и АМД
изучал в свое время -- асмом увлекался по молодости. Оставил
это дело я где-то в районе П4. Теперь же, оглядываясь назад,
осознаю две вещи:

- То, что я узнал, однозначно пошло мне на пользу в общем
  плане развития.
- Изучение очередной (или следующей) аппаратной платформы
  займет столько же дохрена времени и сил.

Зачем я это рассказываю? Мне *придется* заниматься изучением
платформы, чтобы принять решение о включении-выключении тех
или иных опций. Кроме прочего придется прогонять профайлером
готовую прогу, чтобы понять, правильно ли я все понял. Также
придется на разные платформы, коих сейчас туева хуча, писать
различные вариации в Makefile'е. И все лишь для того, чтобы
мои поделия использовали любой камень в полную силу.

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

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

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

Ответить | Правка | К родителю #123 | Наверх | Cообщить модератору

149. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от anonymous (??), 01-Фев-11, 02:24 
> ошибаются. Бывают случаи, что сторонний софт приходится вообще под -O0 собирать
> принудительно. Потому что иначе у него едет крыша, стоит ему попасть
> в условия, отличающиеся от условий тестов разработчиков.

почему же «сторонний»? свой иногда приходится. зато удобно. на любой багрепорт можно ответить: «поменяйте флаги компилятора, версию компилятора, версию ос, соседей, ориентацию. попробуйте разные сочетания. если не помогло — пишите опять». гарантирует, что в ближайшие сто лет вопрошающий больше не появится: будет занят.

Ответить | Правка | К родителю #97 | Наверх | Cообщить модератору

166. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от PereresusNeVlezaetBuggyemail (ok), 01-Фев-11, 10:48 
>> ошибаются. Бывают случаи, что сторонний софт приходится вообще под -O0 собирать
>> принудительно. Потому что иначе у него едет крыша, стоит ему попасть
>> в условия, отличающиеся от условий тестов разработчиков.
> почему же «сторонний»? свой иногда приходится.

Терминология *BSD: под сторонним понимается тот, что не входит в состав базовой системы, а ставится из портов или ещё как.

> зато удобно. на любой багрепорт
> можно ответить: «поменяйте флаги компилятора, версию компилятора, версию ос, соседей,
> ориентацию. попробуйте разные сочетания. если не помогло — пишите опять». гарантирует,
> что в ближайшие сто лет вопрошающий больше не появится: будет занят.

Сборка с хитрыми опциями компилятора в погоне за производительностью — на совести собирающего тоже, ибо сам себе злобный пингвин. Если вы на своём «Мустанге» всю электропроводку поменяете, все проблемы будут в первую очередь на вашей совести, а не производителя автомобиля. Что, разумеется, не отменяет того факта, что если у вас произойдёт пожар из-за брака в проводах, то производитель проводов несёт за этот брак ответственность.

Ответить | Правка | Наверх | Cообщить модератору

25. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +7 +/
Сообщение от Клапауций (ok), 31-Янв-11, 06:53 
Это у некоторых помутнение такое - непонятно из каких причин считают, что разработчики конкурирующих (или просто рядом стоящих) проектов непременно кинутся пилить GPLную поделку, если их некошерное детище зачморить. Вот и пыжатся в силу своих скромных силёнок донести эту эпохальную мысль до широких масс. Бог в помощь.
Ответить | Правка | К родителю #14 | Наверх | Cообщить модератору

54. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +5 +/
Сообщение от dimqua (ok), 31-Янв-11, 10:49 
Тут, наверное, даже не в лицензии дело.  Скорее просто в таких случаях находятся люди, которым не в кайф пилить чужие проекты, а хочется сделать что-то своё. Зачем упрекать их в этом непонятно. Вреда такая деятельность всё равно не приносит, скорее наоборот.
Ответить | Правка | Наверх | Cообщить модератору

231. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от Anonymos (?), 03-Фев-11, 14:19 
> Скорее просто в таких случаях находятся люди, которым не в кайф пилить чужие проекты,
> а хочется сделать что-то своё. Зачем упрекать их в этом непонятно. Вреда такая
> деятельность всё равно не приносит, скорее наоборот.

Приносит. Называется "разбазаривание ресурсов".

Ответить | Правка | Наверх | Cообщить модератору

233. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от dimqua (ok), 03-Фев-11, 17:57 
Чьих ресурсов? В мире СПО каждый сам решает, что ему делать и если кто-то пишет очередной велосипед, то всё что он разбазаривает -- _своё_ время.
Ответить | Правка | Наверх | Cообщить модератору

237. "В компиляторе PCC обеспечена возможность сборки FreeBSD"  +/
Сообщение от nuclightemail (ok), 06-Фев-11, 23:02 
> Чьих ресурсов? В мире СПО каждый сам решает, что ему делать и если кто-то
> пишет очередной велосипед, то всё что он разбазаривает -- _своё_ время.

я тебе про эволюцию уже писал - вот именно поэтому опенсорс в такой глубокой жопе, что каждый тянет одеяло на себя, и на что-нибудь приличное для пользователей ресурсов не хватает, потому они и выбирают другое. Вот сразу две соседние новости, про Hadoop и Chromeless, как раз про объединение с целью уменьшения этого самого распыления усилий.

Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




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

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