Установил icc. Пересобираю например ffmpeg (компилятор ICC)
[ebuild R ] media-video/ffmpeg-0.7.3 USE="X aac alsa amr bzip2 dirac encode faac frei0r hardcoded-tables mmx mmxext mp3 schroedinger sdl static-libs theora threads truetype vaapi vorbis vpx x264 xvid zlib -3dnow -3dnowext (-altivec) -avx -bindist (-celt) -cpudetection -custom-cflags -debug -doc -gsm -ieee1394 -jack -jpeg2k -network -oss -pic -qt-faststart -rtmp -speex -ssse3 -test -v4l -v4l2 -vdpau" VIDEO_CARDS="nvidia" 0 kB
#make.conf
CFLAGS="-march=corei7 -mtune=corei7 -O2 -pipe -mmmx -msse4.2 -ftracer -mfpmath=sse,387"
CXXFLAGS="${CFLAGS}"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
ICCCFLAGS="-O3 -fomit-frame-pointer -xSSE4.2 -g0 -w"
ICCCXXFLAGS="${ICCCFLAGS}"
1. Нужно ли оставлять поддержку всяких sse? (попробовал убрать -mmx -mmxext, конвертирует на одном ядре.) Ведь, по идее sse и mmx написаны на ассемблере, компилятор их не будет оптимизировать.
2. Есть ли в icc что-то наподобие -march=corei7
3. Как лучше в плане скорости: -mfpmath=sse,387 или -mfpmath=sse
4. Какие кодеки/пакеты можно перекомпилировать с помощю icc? Пересоберет ICC к примеру VLC?
5. можно собрать GCC с помощью ICC?Будет выиграш в скорости компиляции?
6. Влияет оптимизация на время роботы от батареи (ноутбука)?
CPU-corei5 (не sandybridge), ram 4gb