Путевской Виктор (vipernn) wrote,
Путевской Виктор
vipernn

Categories:

Рабочее.

В продолжение вчерашнего.

Итак, умножаем матрицы. Надо проверить, как включение/отключение оптимизации влияет на скорость вычисления. Устанавливаю флаг -O0, указывающий на отключение оптимизации вовсе. Запускаю. С удивлением получаю результат примерно равный результату, полученному при стандартных установках. Предполагаю, что по умолчанию оптимизация отключена. Делаю второй вариант с флагом -O3 (максимальная оптимизация по скорости). Результат... ровно тот же.

Начинаю разбираться. Оказывается, стандартные параметры компиляции зашиты в конфигурационный файл. И в этих параметрах стоит флаг -O2 (оптимизация по скорости среднего уровня). И при запуске компилятора, пользовательские флаги в командную строку пишутся перед стандартными, то есть у нас получается, что в командной строке стоит -O0 -O2 (или -O3 -O2). При этом, если в командной строке стоит несколько флагов для одной опции, то применяется последний из них, то есть в обоих случаях -O2. Пришлось редактировать конфигурационный файл.

З.Ы. По результатам получилось, что -O3 практически не дает выигрыша по скорости по сравнению с -O2. Но по сравнению с -O0 выигрыш до 4-х раз, в среднем на 50%.
Tags: пакости, программирование, прочность, рабочее, странное
Subscribe
  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 1 comment