sm1ly
@sm1ly
beardman

Как в сборку gcc для целевого хоста добавить --param «l2-cache-size=8192»?

Доброго времени суток.
Есть у меня некий хост, будем звать его builder. Я собираю на нем гцц для определенного хоста, будем звать его target.
Ключи таргета:
"-march=haswell" -mmmx -mno-3dnow -msse -msse2 -msse3 -mssse3 -mno-sse4a -mcx16 -msahf -mmovbe -maes -mno-sha -mpclmul -mpopcnt -mabm -mno-lwp -mfma -mno-fma4 -mno-xop -mbmi -mbmi2 -mno-tbm -mavx -mavx2 -msse4.2 -msse4.1 -mlzcnt -mno-rtm -mno-hle -mrdrnd -mf16c -mfsgsbase -mno-rdseed -mno-prfchw -mno-adx -mfxsr -mxsave -mxsaveopt -mno-avx512f -mno-avx512er -mno-avx512cd -mno-avx512pf -mno-prefetchwt1 -mno-clflushopt -mno-xsavec -mno-xsaves -mno-avx512dq -mno-avx512bw -mno-avx512vl -mno-avx512ifma -mno-avx512vbmi -mno-clwb -mno-pcommit -mno-mwaitx --param "l1-cache-size=32" --param "l1-cache-line-size=64" --param "l2-cache-size=20480" "-mtune=haswell"

Собираю гцц следующим образом:
../gcc_5_2_0_release/configure --prefix=/opt/gcc52_haswell --enable-languages=c,c++ --disable-multilib --with-cpu-64=haswell --with-arch-64=haswell --with-tune-64=haswell

После этого на выходе этот гцц выдает следующие ключи:
"-march=haswell" -mmmx -mno-3dnow -msse -msse2 -msse3 -mssse3 -mno-sse4a -mcx16 -msahf -mmovbe -maes -mno-sha -mpclmul -mpopcnt -mabm -mno-lwp -mfma -mno-fma4 -mno-xop -mbmi -mbmi2 -mno-tbm -mavx -mavx2 -msse4.2 -msse4.1 -mlzcnt -mno-rtm -mno-hle -mrdrnd -mf16c -mfsgsbase -mno-rdseed -mno-prfchw -mno-adx -mfxsr -mxsave -mxsaveopt -mno-avx512f -mno-avx512er -mno-avx512cd -mno-avx512pf -mno-prefetchwt1 -mno-clflushopt -mno-xsavec -mno-xsaves -mno-avx512dq -mno-avx512bw -mno-avx512vl -mno-avx512ifma -mno-avx512vbmi -mno-clwb -mno-pcommit -mno-mwaitx --param "l1-cache-size=32" --param "l1-cache-line-size=64" --param "l2-cache-size=8192" "-mtune=haswell"

Если сравнить все параметры, будет понятно что разница только в --param "l2-cache-size=8192" и --param "l2-cache-size=20480". И это как оказалось настоящая дилемма.
Тестовый бенчмарк показывает просадку из-за такой сборки (получается что она не нативна).
Задача в сборку гцц ../gcc_5_2_0_release/configure --prefix=/opt/gcc52_haswell --enable-languages=c,c++ --disable-multilib --with-cpu-64=haswell --with-arch-64=haswell --with-tune-64=haswell добавить ключ --param "l2-cache-size=20480". Т.е. я имею ввиду чтобы при подгруженном гцц52_хасвель оно по умолчанию там уже было
Гугл не помогает.
Может кто-то знает как?
  • Вопрос задан
  • 570 просмотров
Пригласить эксперта
Ответы на вопрос 1
delvin-fil
@delvin-fil
Crazy Linux-admin
Что за дистрибутив и ядро?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы