LINUX.ORG.RU

Intel Haswell и USE флаги

 


0

1

Имеется Хасвелл с поддержской инструкций AVX2.

Надо ли в make.conf делать так

USE="... -avx avx2 -mmx -sse{2,3,4_1} -ssse3 ..."
или
USE="... avx avx2 mmx sse{2,3,4_1} ssse3 ..."
, или
USE="... avx2 ..."
, или ещё как-то?

В make.conf - CFLAGS="-march=native ..."

Deleted

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

Ответ на: комментарий от thespiritofbirdie

тогда получается, что ffmpeg собирается без AVX2, но с mmx,sse; что выглядит как-то некошерно.

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

добавляй те флаги которые тебе нужны в чем проблема то?

Revent
()

И ещё раз для идиотов (не для OP, а вообще), которые пытаются колдовать с -mкрутые-настройки,

В одном терминале запускаем:

gcc -march=native -c -o /dev/null -x c -

В другом

ps af

убеждаемся, что всё, что нужно, уже включено.

**************

Кстати, -mчто-то-там флаги бесполезны чуть более чем почти всегда.

thespiritofbirdie
()

Я выбираю второй!

Есть ебилды с юзом sse2, например, но без avx, в первом случае ты лишаешь такой софт даже sse2, в третьем - хз

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

Ну или так :-)

Только вывод вашей команды умрёшь читать. Моя выдаёт готовый набор флагов.

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

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

Deleted
()

Вопрос ОПа не о CFLAGS, а о USE. Если march=native это не значит, что в отдельных пакетах будут задействованы нужные USE. Их нужно включать дополнительно.

Второй вариант будет правильным:

USE="... avx avx2 mmx sse{2,3,4_1} ssse3 ..."

Если все это поддерживает твой процессор.
Вообще, если не уверен, то можно посмотреть в cat /proc/cpuinfo и сравнить с тем, что можно включить глобально (highlight: instruction).

Например mplayer имеет на борту USE mmx sse и т.д. и будет собран с поддержкой этих инструкций.

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

можно посмотреть в cat /proc/cpuinfo и сравнить с тем, что можно включить глобально (highlight: instruction).

так и сделал.

оставляю второй вариант с package.use

media-video/ffmpeg -avx -mmx -sse -sse2 -sse3 -sse4_1 -sse4_2

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

Так, попробуем более доходчиво. Код для simd aka sse, avx пишется вручную на ассемблере. Для каждой новой их версии никто всё не переписывает. Нужно включать все предыдущие поддерживаемые процессором, а не только последнюю.

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