Очень зависит от программы, но не 2 раза в любом случае. Эффективность в том, что бинарные дистрибутивы для x86 собираются обычно как i386 (Ubuntu), i586 и в самом оптимистичном случае i686 (openSuSE). Т.е. в самом оптимистичном случае код оптимизирован под процессор Pentium II с набором инструкций MMX и не выше. Для задач обработки видео/аудио это важно. В вычислительных задачах тоже может быть важно.
Процессорные архитектуры - кто есть ху (Отрезано от Вопрос новичка -> Разбивка дисков,swap и прочее...)
Модератор: Модераторы разделов
-
- Сообщения: 3408
- Статус: аватар-невидимка
- ОС: openSUSE Tumbleweed x86_64
Процессорные архитектуры - кто есть ху
Очень зависит от программы, но не 2 раза в любом случае. Эффективность в том, что бинарные дистрибутивы для x86 собираются обычно как i386 (Ubuntu), i586 и в самом оптимистичном случае i686 (openSuSE). Т.е. в самом оптимистичном случае код оптимизирован под процессор Pentium II с набором инструкций MMX и не выше. Для задач обработки видео/аудио это важно. В вычислительных задачах тоже может быть важно.
-
- Сообщения: 1147
- Статус: Slacker!
- ОС: Slackware64-current
Re: Процессорные архитектуры - кто есть ху
Вот как? Однако... Не знал, честно.
PS.
Я, когда это писал, думал, что эффективность заключается в том, что обработать 64 бита за раз быстрее, чем 32, а теперь вспомнил, что система команд х86-64 - это надмножество х86, а 64 бита за раз процессоры умеют обрабатывать еще с первых "Пентиумов". Так что да, неправда моя

Slackware64-current/Xfce/Xiaomi Mi Notebook Pro 15.6 | Arch Linux/Xfce/Lenovo G580
-------------
Registered Linux User #557010
-------------
Registered Linux User #557010
-
- Сообщения: 3408
- Статус: аватар-невидимка
- ОС: openSUSE Tumbleweed x86_64
Re: Процессорные архитектуры - кто есть ху
Ну, 64-х бытные вычисления на 64-х битной архитектуре будут быстрее всё равно. Которые MMX — без разницы, а вот самые обычные быстрее. Как и 128 битные. Правда 64-битная архитектура ещё одно преимущество имеет — увеличенное число регистров.
PS кстати, в первом Pentium не было 64-х бытных вычислений. Они появились только в Pentium MMX. В первом пне только шину увеличили до 64-х бит, что позволило ускорить 64-х битные вычисления (при правильном подходе), но производились они так же в несколько инструкций. Да и MMX не всегда удобны. Например, PADDQ не влияет на флаги, а значит нельзя определить факт переполнения/переноса и реализовать то же 128-битное или длинное сложение на основе этой операции.
PS кстати, в первом Pentium не было 64-х бытных вычислений. Они появились только в Pentium MMX. В первом пне только шину увеличили до 64-х бит, что позволило ускорить 64-х битные вычисления (при правильном подходе), но производились они так же в несколько инструкций. Да и MMX не всегда удобны. Например, PADDQ не влияет на флаги, а значит нельзя определить факт переполнения/переноса и реализовать то же 128-битное или длинное сложение на основе этой операции.
-
- Бывший модератор
- Сообщения: 7275
- Статус: Пенсионер в законе
- ОС: Cintu
Re: Процессорные архитектуры - кто есть ху
В общем случае это достаточно: скачок производительности - при установке флага gcc -O march=i686, всё что выше - добавляет обычно копейки. А вот проблем может создать на рубли - почему дистры общего назначения с агрессивной оптимизацией и не собираются. Это - святое право дженедужников
Без иронии - сам таким был.
Да, если зарабатывать на хлеб насущный оцифровкой звука, то есть смысл перебрать, скажем, lame с флагами типа -O3 march=максимально_точное_указание_процессора-из_man_gcc
В иных случаях это рояля не играет. Не говоря уж о том, что многие программы общего назначения при агрессино-мультимединых флагах могут просто не собраться.
Но на самом деле проще всего таки, учитывая, что у Дебиана нет проблемы с поддержкой варианта x86_64, ставить его и пусть вас не волнуют этих глупостей.
-
- Сообщения: 3408
- Статус: аватар-невидимка
- ОС: openSUSE Tumbleweed x86_64
-
- Сообщения: 1319
Re: Процессорные архитектуры - кто есть ху
даже mmx
mmx
инфа 100%.
проверим?
% ./scripts/analyze-x86.pl /bin/ls
Checking vendor_id string... GenuineIntel
Disassembling /bin/ls, please wait...
i486: 0 i586: 0 ppro: 120 mmx: 95 sse: 82 sse2: 9 sse3: 0 sse4.1: 0 sse4.2: 0
/bin/ls will run on Pentium IV (pentium4) or higher processor.
% ./scripts/analyze-x86.pl `which tar`
Checking vendor_id string... GenuineIntel
Disassembling /bin/tar, please wait...
i486: 0 i586: 0 ppro: 158 mmx: 380 sse: 122 sse2: 81 sse3: 0 sse4.1: 0 sse4.2: 0
/bin/tar will run on Pentium IV (pentium4) or higher processor.
p.s. это^ ubuntu 12.04.
:wq
-
- Сообщения: 3408
- Статус: аватар-невидимка
- ОС: openSUSE Tumbleweed x86_64
-
- Сообщения: 1319
Re: Процессорные архитектуры - кто есть ху
для amd64.
для i386 tar (tar_1.26-4ubuntu1_i386.deb) результат следующий:
tar will run on Pentium Pro (i686 or pentiumpro) or higher processor.
:wq
-
- Сообщения: 3408
- Статус: аватар-невидимка
- ОС: openSUSE Tumbleweed x86_64
Re: Процессорные архитектуры - кто есть ху
Ну, дык это не интересно. 64-х битная версия ясно, что может использовать вплоть до SSE3 (в минимальном наборе). Вопрос был в 32-х битной версии.
А результаты по инструкциям какие?
UPD
Собственно скачал и проверил. Ни одной MMX инструкции. Но инструкции Pentium pro используются, такие как cmov**. Так что это уже не i386, однозначно. В заблуждение вводят.
-
- Бывший модератор
- Сообщения: 7275
- Статус: Пенсионер в законе
- ОС: Cintu
Re: Процессорные архитектуры - кто есть ху
Так и есть. Причём давно. Под чистый i386, чтобы его действительно можно было запустить на i386, собирали что-то типа 3-го Дебиана.
-
- Бывший модератор
- Сообщения: 4038
- Статус: Искусственный интеллект (pre-alpha)
- ОС: Debian GNU/Linux
Re: Процессорные архитектуры - кто есть ху
i386 — исторически слежавшаяся маркировка.
However, Debian GNU/Linux squeeze will not run on 386 or earlier processors. Despite the architecture name "i386", support for actual 80386 processors (and their clones) was dropped with the Sarge (r3.1) release of Debian[2]. (No version of Linux has ever supported the 286 or earlier chips in the series.) All i486 and later processors are still supported[3].
http://www.debian.org/releases/stable/i386...tml.en#id583669
Мои розовые очки
-
- Бывший модератор
- Сообщения: 7275
- Статус: Пенсионер в законе
- ОС: Cintu
Re: Процессорные архитектуры - кто есть ху
watashiwa_darede... писал(а): ↑01.05.2012 23:28support for actual 80386 processors (and their clones) was dropped with the Sarge (r3.1) release of Debian
Где-то так. Debian 3.0 на антикварной настоящей трёшке запустить ещё можно было. Всё, что позднее - уже нет.
А вот FreeBSD 5.x ещё запускалась - если удавалось воткнуть 6 Мбайт памяти для sysinstall'а - конечно, не 6, а 8, иначе не получалось, симки на 386DX надо было ставить в банк по 4.
Самое смешное, что после установки на 4 Мбайт работала.
Позднее уже не проверял.
Да и музейной трёщки не стало

-
- Сообщения: 3408
- Статус: аватар-невидимка
- ОС: openSUSE Tumbleweed x86_64
Re: Процессорные архитектуры - кто есть ху
Странная логика. Ну, обозначили бы x86 — не конкретная архитектура, а семейство. Было бы логичнее.
PS посмотрел на openSUSE там тоже i586 в основном. С i686 собираются только какие-то выборочные пакеты, да Packman под "i586" собирает с поддержкой SSE (тоже вводя в заблуждение).
Так что правильно, что я давно перешёл на x86_64

-
- Сообщения: 8735
- Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
- ОС: Slackware-current
Re: Процессорные архитектуры - кто есть ху
дык историческая. что поделать? воспринимайте как географические названия, или как название утилиты grep.
-
- Сообщения: 1319
-
- Сообщения: 3408
- Статус: аватар-невидимка
- ОС: openSUSE Tumbleweed x86_64
Re: Процессорные архитектуры - кто есть ху
taaroa
Oracle Solaris как раз x86 использует.
Остальные — да, i386, но может они никого и не обманывают и действиельно собраны под i386?
Oracle Solaris как раз x86 использует.
Остальные — да, i386, но может они никого и не обманывают и действиельно собраны под i386?
-
- Сообщения: 157
- Статус: Evrashka
- ОС: Arch Linux
Re: Процессорные архитектуры - кто есть ху
наверно оффтоп об архитектуре стоит перенести в другую ветку, а то разговор совсем ушел в другое русло и не соответствует тематики топика.
Обезьянка видит - Обезьянка делает...
-
- Бывший модератор
- Сообщения: 4038
- Статус: Искусственный интеллект (pre-alpha)
- ОС: Debian GNU/Linux
Re: Процессорные архитектуры - кто есть ху
Ага, и сломало бы обновление всем, кто поставил i386. Например, мне — ведь я прозрачно обновлялся woody → sarge → etch. Сменить архитектуру при обновлении — задача нетривиальная. Чтобы без проблем сработало у всех, нужно либо зеркально собирать, хранить и поддерживать (лет 10 как минимум) две архитектуры, которые ничем, кроме названия не отличаются, либо вкручивать одноразовые костыли в APT/DPkg, чтобы можно было обновляться с i386 на x86. Ну нафиг. Кому надо и так прекрасно знают или прочитают.
Ай, у Debian и этого нет. Есть amd64. :)
Мои розовые очки
-
- Сообщения: 3408
- Статус: аватар-невидимка
- ОС: openSUSE Tumbleweed x86_64
Re: Процессорные архитектуры - кто есть ху
watashiwa_daredeska писал(а): ↑04.05.2012 23:53Ага, и сломало бы обновление всем, кто поставил i386. Например, мне — ведь я прозрачно обновлялся woody → sarge → etch. Сменить архитектуру при обновлении — задача нетривиальная. Чтобы без проблем сработало у всех, нужно либо зеркально собирать, хранить и поддерживать (лет 10 как минимум) две архитектуры, которые ничем, кроме названия не отличаются, либо вкручивать одноразовые костыли в APT/DPkg, чтобы можно было обновляться с i386 на x86. Ну нафиг.
И всё же правильнее было один раз поставить отдельную маленькую тулзеньку по обновлению с i386 на x86. С инструкциями.
А я не буду долго выискивать что да как. Если написана конкретная архитектура, значит собрана под неё. Заметьте на странице скачивания Debian нет ни слова, под какую архитектуру в реальности собирается i386, ни одного уточнения.
Тут нет претензий, это в общем-то одно и то же, одни так называют, другие иначе. amd64/x86_64 — это не конкретная архитектура.
-
- Сообщения: 1261
- Статус: Никто, по сути быдло
Re: Процессорные архитектуры - кто есть ху
Почемуто забыли про sse http://ru.wikipedia.org/wiki/SSE , а грамотно оптимизированная под низ программа может работать в разы быстрее, да и OpenCL наступает. , поэтому нужно не собирать под архитектуру , а смотреть возможности программы задействовать способы ускорения вычислений
Например flash без sse становится дохлой клячей
Например flash без sse становится дохлой клячей
-
- Сообщения: 3408
- Статус: аватар-невидимка
- ОС: openSUSE Tumbleweed x86_64
Re: Процессорные архитектуры - кто есть ху
Ism писал(а): ↑05.05.2012 22:54Почемуто забыли про sse http://ru.wikipedia.org/wiki/SSE , а грамотно оптимизированная под низ программа может работать в разы быстрее
Как раз не забыли, говорили уже. Большинство стандартных 32-х битных версий дистров собираются без их поддержки — как видим, ни Ubuntu, ни openSuSE не поддерживают в 32-х битном режиме даже MMX, не говоря уже о SSE, SSE2, SSE3. А в 64-битной архтектуре гарантирована поддержка до SSE3 включительно. Под вопросом остаются только более старшие: SSSE3, SSE4.1, SSE4.2, AVX и т.д.
-
- Сообщения: 1261
- Статус: Никто, по сути быдло
Re: Процессорные архитектуры - кто есть ху
Как раз не забыли, говорили уже. Большинство стандартных 32-х битных версий дистров собираются без их поддержки — как видим, ни Ubuntu, ни openSuSE не поддерживают в 32-х битном режиме даже MMX, не говоря уже о SSE, SSE2, SSE3. А в 64-битной архтектуре гарантирована поддержка до SSE3 включительно. Под вопросом остаются только более старшие: SSSE3, SSE4.1, SSE4.2, AVX и т.д.
Дело в том, что программа должна сама проверять и решать включать sse или нет , вне зависимости от вариантов компиляции, иначе новейшие технологии задействуются очень нескоро тупо потому, что некто не включил флаг компиляции
Хотя данный вопрос не совсем ясен, можно ли в код i386 включить процедуры sse вне зависимости от флагов компиляции
-
- Бывший модератор
- Сообщения: 7275
- Статус: Пенсионер в законе
- ОС: Cintu
Re: Процессорные архитектуры - кто есть ху
Да не может. Лет 10 назад, когда я серьёзно занимался этим вопросом, то получал массу гневных писем: типа я пересобрал lame/mencoder/нужное_дописать и получил нев...ероятный выигрышь в производительности. Да вот только ни одной цифири об этой производительности не было.
А у меня были. И это было около 10% выигрыша для мультимедийных приложений. При риске, что другие приложения с такими флагами просто не соберутся. Или будут тормозить нипадецки - с march=P4 именно так и было.
С тех пор процессоры стали избыточно мощными для любых пользовательских задач, и на этом фоне любые ухищрения по оптимизации, просто теряются.
Данный вопрос много лет назад был исчерпывающе прояснён в руководстве по gcc (под редакцией RMS), в разделе о флагах компиляции: там всё расписано, какие флаги от каких зависят, какие при каких включаются и так далее.
-
- Сообщения: 3408
- Статус: аватар-невидимка
- ОС: openSUSE Tumbleweed x86_64
Re: Процессорные архитектуры - кто есть ху
Нет. Это путь распространения бинарников. Там по-другому нельзя. В мире open source просто можно перекомпилировать с поддержкой всех фич текущего процессора. Зачем усложнять программу run-time проверками?
Дистрибутив не обязательно должен быть дистрибутивом чего-то, кроме того, чем он является. Это просто форма распространения (что и означает импортное distribute). Так что "дистрибутив openSuSE" (ибо названия "дистрибутив Linux", "дистрибутив GNU/Linux" одинаково неверные). Который содержит ядро "Linux", окружение "GNU", сервер графического режима "Xorg", фреймворк "Qt4" десктопное окружение "KDE SC 4", и т.д.
-
- Сообщения: 3408
- Статус: аватар-невидимка
- ОС: openSUSE Tumbleweed x86_64
Re: Процессорные архитектуры - кто есть ху
alv писал(а): ↑06.05.2012 10:37
Да не может. Лет 10 назад, когда я серьёзно занимался этим вопросом, то получал массу гневных писем: типа я пересобрал lame/mencoder/нужное_дописать и получил нев...ероятный выигрышь в производительности. Да вот только ни одной цифири об этой производительности не было.
При грамотном использовании MMX, SSEx могут значительно увеличить производительность. Но не в разы, конечно, если не о синтетических тестах говорим. Подвох в том, что компилятор gcc (не знаю как интелловский) может прооптимизировать сишный код с использованием этих инструкций далеко не всегда. Поэтому, чтобы получить выигрыш в скорости приходится писать несколько реализаций под различные флаги компиляции. Не всегда это делают. Плюс, как показывает практика, основную часть выигрыша дают MMX.
-
- Бывший модератор
- Сообщения: 7275
- Статус: Пенсионер в законе
- ОС: Cintu
Re: Процессорные архитектуры - кто есть ху
Это "значительно" - в лучшем случае 10%. Если Вы не зарабатываете на хлеб насущный оцифровкой аудио- или видеозаписей в промышленных масштабах, очень важно, оцифруется файл за один час или за 54 минуты? Ведь всё равно это делается в фоне.
Я думаю, что это не делают никогда, разве что создатель Mplayer'а и mencoder'а чем-то подобным развлекался, почему и был категорически против распространения своих программ в бинарниках.
И плюс к этому разные программы придётся перебирать каждую со своими флагами. А это занятие даже не для дженедужника, а для продолжателя дела Великого Герхарда, доведёного до логического абсурда.
-
- Сообщения: 3408
- Статус: аватар-невидимка
- ОС: openSUSE Tumbleweed x86_64
Re: Процессорные архитектуры - кто есть ху
Не соглашусь. openSuSE — это установка не только Linux, не только GNU, а и ещё всякого добра. Поэтому нельзя сказать, что это является формой распространения чего-то конкретно. Просто укомплектованный набор ПО под названием openSuSE.
Ну, во-первых, и более, чем 10%, но тут всё зависит от задачи. Но в тех, задачах, с которыми я имею дела, даже 10% может оказаться важным. Не в плане времени, а в плане загрузки процессора. Т.е. одновременно комп может обрабатывать на 10% больше потоков. Это вполне хороший показатель.
Делают. x264, ffmpeg, например, содержат оптимизации под разные процессоры (не только x86 архитектуры).
-
- Сообщения: 1261
- Статус: Никто, по сути быдло
Re: Процессорные архитектуры - кто есть ху
Нет. Это путь распространения бинарников. Там по-другому нельзя. В мире open source просто можно перекомпилировать с поддержкой всех фич текущего процессора. Зачем усложнять программу run-time проверками?
Типов процов много и чтоб задействовать всю мощность , то поможет только run-time проверка , тогда программа сама будет знать на что способен проц и нагрузить его по полной
А перекомпиляция - удел немногих , только несколько раз пересобирал программу и то для поиграться
-
- Сообщения: 8735
- Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
- ОС: Slackware-current
Re: Процессорные архитектуры - кто есть ху
ВНЕЗАПНО: а оно надо? Если надо, то зачем?
производительность ЧЕГО????!!11
а я уже вижу, что вы никогда не смотрели видео на первом пне. Тогда это было критично. Сейчас - нет. Потому программы можно собирать даже под 80486 дырка-то в другом месте... Проверяйте сами, гента вам в руки...
-
- Сообщения: 1261
- Статус: Никто, по сути быдло
Re: Процессорные архитектуры - кто есть ху
Математических вычислений
А вообще что, может ограничимся командами i386 и Математический сопроцессор выкинуть ?
Похоже вы старовер