January 2019

M T W T F S S
 123456
78 910111213
14 151617181920
21222324252627
28293031   

За стиль благодарить

Развернуть метки

No cut tags
Wednesday, July 11th, 2012 09:00 am
Дано - процессор АМД 64 бит, 4 гига. память. Винда 7-64 бит.. Насколько реально упадет (если упадет) производительность, если вместо того поставить 32-бит ХР?

Кстати, тот же вопрос про Убунту.
Wednesday, July 11th, 2012 06:14 am (UTC)
Смотря какие программы гонять будете. По моим наблюдениям, на офисных приложениях не сказывается. На 64-битных виндах приложения могут использовать всю память, но у вас всего 4 гига, так что и здесь особой разницы не будет.

Тут скорее могут другого рода проблемы вылезти: несовместимость каких-то новых программ с XP.
Wednesday, July 11th, 2012 06:25 am (UTC)
Решительно согласен - все зависит от задач. В дополнение к предыдущему скажу, что есть и обратная проблема - некоторые старые программы требуют танцев с бубнами, чтобы запустить их на 64-битной вин-7.
Wednesday, July 11th, 2012 06:27 am (UTC)
32-бит XP не видит более 3Гб ОЗУ. Производительность - смотря на каких задачах. Если кому-то (не обязательно одной задаче) нужно все 4 гигабайта - запросто можете почувствовать.

Офис в природе существует только 32-битный, да и сборки браузеров обычно идут 32-битные. Поэтому если основные задачи - офис и интернет, то почувствуете только уменьшение объема памяти на четверть.
Wednesday, July 11th, 2012 06:30 am (UTC)
Офис существует и 64-битный. Это Visual Studio только 32-битная бывает.
Wednesday, July 11th, 2012 06:41 am (UTC)
Вообще, ОС х32 доступно ~3.5 ГБ ОЗУ. Оставшиеся 0.5 ГБ чудесно утилизирует набортовое видео.
Wednesday, July 11th, 2012 02:37 pm (UTC)
Там не больше двух гигов на программное рыло, к тому же. Хотя два гига даже современные игры с трудом сжирают.
Thursday, July 12th, 2012 12:44 am (UTC)
фуррифокс с 60-70 открытыми вкладками лопает 500-600 Мб. Если же открыть иллюстратор с макетом размера А1, включающим растровые элементы, то там и 4 ГБ мало будет.
Wednesday, July 11th, 2012 05:16 pm (UTC)
Не знаю, изменилось ли это в XP, но в Windows 2000 третий гигабайт был виден лишь особой редакции ОС с особым флагом в boot.ini, и только программам с особым флагом в заголовке. Я как сейчас помню, как я установил этот флаг в cscript.exe двоичным редактором, и сохраний файл как cscript3g.exe, которым мы и пользовались. Все остальные приложения видели лишь 2 гига.
Wednesday, July 11th, 2012 06:04 pm (UTC)
Вы говорите о разных вещах. У вас написано о том, сколько виртуальной памяти доступно каждому отдельному приложению. Это понятно и справедливо. Выше же речь идёт, насколько я понимаю, о недоступности физической памяти. И это мне совершенно непонятно.
Thursday, July 12th, 2012 01:56 am (UTC)
Пардон, прочёл по диагонали. Я не помню специальных флагов в *.exe, кстати... но это я мог просто не заметить, не моя епархия.
Thursday, July 12th, 2012 02:05 am (UTC)
Насколько я помню, ни одна версия Win2000 не поддерживала PAE, вы ее наверное путаете с Win2003.
Thursday, July 12th, 2012 02:29 am (UTC)
Речь идет не о PAE, а о доступе прикладных программ к третьему гигабайту из четырех. Не шестидесяти четырех - четырех!
Edited 2012-07-12 02:30 am (UTC)
Wednesday, July 11th, 2012 05:59 pm (UTC)
Интересно, откуда возникло это поверье про 3Гб максимум?

Конечно, в 32битной системе в плоской модели памяти по определению существует физическое ограничение в 4Гб на каждый процесс, из них 1 или 2 Гб, смотря по настройкам системы, отводится под шадовинг системных библиотек, так что фактически каждому приложению доступно по его собственные нужды не более 3 Гб. Это понятно, отсюда и понятно, что если кому-то (обязательно одной отдельно взятой задаче) нужно все 4 гигабайта - то можно и почувствовать.

Но на чём основано мнение, что 32-бит XP не видит более 3Гб ОЗУ вообще, что 3 (иногда называют 2, иногда 4) Гб - предел памяти для всех приложений в сумме?
Wednesday, July 11th, 2012 06:26 pm (UTC)
Про XP я не знаю, но про Висту нашел вот что:

http://www.geoffchappell.com/notes/windows/license/memory.htm

That 32-bit editions of Windows starting with Windows Vista are limited to 4GB is not because of any technical constraint on 32-bit operating systems. The 32-bit editions of Windows Vista and Windows 7 all contain code for using physical memory above 4GB. Microsoft just doesn’t license you to use that code.
Thursday, July 12th, 2012 01:49 am (UTC)
Все-таки лимит не 3, а 3.5, как справедливо указывали другие ораторы. Это не мнение, это медицинский факт: у меня именно так работает домашний компьютер. Про 3.5, а не 3 я забыл просто потому, что долго не загружал XP.

Оригинальный 386 имел ограничение 4 гигабайта физического адресного пространства, как по количеству соответствующих проводов на адресной шине, так и по количеству бит в десркипторе страницы, отведенных на адрес. Поддержка расширенного до 36 бит адресного пространства (PAE) в 32-битном режиме появилась только в районе 2005 года у Pentium VI, все более ранние процессоры x86 по прежнему ограничены 4 гигабайтами физической памяти. Также, если ОС не поддерживает PAE, то она тоже не увидит больше 4 гигабайт физических адресов.

У PC-совместимых компьютеров с шиной PCI последние полгектара 4-гигабайтного адресного пространства отведены для отображенного на память ввода-вывода. Контроллеров прерываний, видеобуфера и т.д. Соответствующие 512 мегабайт ОЗУ отображены за границу 4 гигабайта, и чтобы добраться до них, нужно PAE или 64-битный режим.

32-битная Windows XP не поддерживает PAE. Windows 2003 с соответствующим сервиспаком поддерживает (IIRC начиная с SP2), а XP нет. Почему - вопросы к микрософту. Очевидно, ради попытки перетащить народ на висту.
(deleted comment)
(deleted comment)
Wednesday, July 11th, 2012 11:18 am (UTC)
"стальные - добро пожаловать в виртуальную 32-разрядную XP."

Простите мою серость, а "виртуальная XP" - это что такое? Сначала Линух, а в нем ХРюша через ВиртБокс? юрХ
Wednesday, July 11th, 2012 10:30 am (UTC)
на 4G реальной разницы собственно в проиводительности не заметил (запускаю иногда расчетные задачи, в т.ч. квантовохимические). На 8G винда-32 в принципе не может использовать больше 4-х (реально 3-х), поэтому перешел на 64. У линукса этой проблемы нет. Но и проблем с драйверами и софтом под 64 бита по сравнению с 32-мя в линуксе вроде тоже нет, так что под лин резонов ставить 32 нет особых. Ну и 64-битные приложения позволяют работать с массивами данных более 4G, что впрочем актуально мало для кого. А, еще кажется GPT-разделы только Win7-64 поддерживает.
Wednesday, July 11th, 2012 06:07 pm (UTC)
> На 8G винда-32 в принципе не может использовать больше 4-х (реально 3-х)

Так ли это? Винда не может использовать более 3х или 4х Гб? Или просто не может выделить каждому отдельному приложению столько?
Wednesday, July 11th, 2012 06:33 pm (UTC)
не может; даже сообшить реальное количество памяти не может. Якобы есть твики, снимающие это ограничение - но их реальная работоспособность под вопросом.
Wednesday, July 11th, 2012 02:38 pm (UTC)
Фиг знает. Тут слесарей по компьютерам нет, одни программисты %)
Thursday, July 12th, 2012 02:22 am (UTC)
Сложный вопрос. У 64-бита от 32 бит есть три основных отличия:
1. Доступно больше памяти. Из консумерских программ таких, которым реально нужно больше гектара, приходит в голову разве что фотошоп. Ну или всякие там CAD, но тоже только при работе с реально сложными чертежами.
2. Доступно больше регистров. Для консумерских программ это, как я понимаю, основной источник повышения производительности, но он сильно зависит от компилятора.
3. Код программы раздувается, как за счет того, что адресные поля теперь 64-битные, так и за счет RAX-префиксов. Это приводит к менее эффективному использованию кэшей первого и второго уровня и к снижению производительности. Воздействие этого эффекта определяется не только компилятором, но и стилем программирования.

То есть вопрос в том, насколько в данной конкретной программе пункт 2 компенсирует пункт 3. Иначе как измерениями этот вопрос решить невозможно.
Thursday, July 12th, 2012 02:43 am (UTC)
Ну, 1 не имеет значения, так как в условиях размер памяти уже задан. А 2 и 3, по-моему, не столь важны в неэкзотических ситуациях. Обычный говнобизнес-код не успевает использовать много регистров и не заточен под эффективное использования кэша.
Wednesday, July 11th, 2012 11:28 pm (UTC)
Ubuntu имеет смысл ставить 64, просто щоб було - цена одна и та же, все программы давно построены на 64 бита. Windows - зависит от конкретной ситуации. Если бы я ставил сейчас, поставил бы Win7x64, и сама ОС доведена до ума, и ресурсы лучше используются.

Я пишу это на пятилетней давности компьютере, на котором стоит 32 bit XP и 64 bit Ubuntu. Для того, чем я занимаюсь дома, XP 32 хватало, Win7 тогда ещё не было, а сейчас ставить Win7 лениво. Мы с сыном построили в марте ему новый компьютер, туда уже купили и поставили Win7х64.
Thursday, July 12th, 2012 02:07 am (UTC)
В Win7 64-бита нет дос-эмулятора. В принципе. То есть если вам нужны досовские программы, вам надо либо оставаться на XP, либо ставить dosemu.
Thursday, July 12th, 2012 02:43 am (UTC)
Вы будете смеяться, но у меня до сих пор есть ящик c DOS/Win3.1 - 486, VESA, SCSI drive от SGI (IDE там умерло ещё в 96-м). На нём стоит первая Цивилизация, Space Quest series и т.д. Пару лет назад он, правда, перекочевал на чердак, но наш бронепоезд всё ещё стоит..

А в Ubuntu разве нет эмулятора? Был же вроде когда-то..