Определение рекомендуемых системных требований - PullRequest
5 голосов
/ 21 мая 2009

Недавно мы изменили некоторые из наших системных требований для легковесного приложения (это по сути тонкий клиент с графическим интерфейсом, который подключается к «мэйнфрейму», на котором работает IBM UniVerse). Мы совсем не изменили наши минимальные требования, но изменили наши рекомендуемые требования, чтобы они соответствовали требованиям Windows 7 и Vista (поскольку мы работаем на этих машинах).

Некоторые системные требования довольно легко определить (например, сетевая карта, место на жестком диске и т. Д.). Но ЦП и ОЗУ сложнее закрепить.

В нашем текущем списке минимальных требований к процессору и оперативной памяти указано, что вы должны соответствовать минимальным требованиям для вашей операционной системы. Нам это кажется вполне разумным, поскольку наше приложение использует только 15 МБ или активной памяти и очень мало ЦП (в данном случае это простой графический интерфейс), так что это работает. Это кажется нормальным, никто не жалуется на это.

Однако, когда дело доходит до рекомендуемых требований, мы сталкиваемся с проблемами, связанными со спецификой, особенно в наши дни, когда говорить, что минимальная частота 1,6 ГГц (или аналогичная) может означать что угодно, когда вы начинаете говорить о многоядерных процессорах, процессорах Atom и т. Д. ... Тонкий клиент начинает делать более интенсивные вещи (теперь он содержит встроенный веб-браузер, чтобы помочь отображать более удобные HTML-страницы, например).

  • Что было бы хорошим способом определения рекомендуемых значений для ЦП и ОЗУ?
  • Вы берете рекомендованную для O / S и добавляете свои значения использования сверху (так что мы скажем 1 ГБ для компьютеров с Vista?)?
  • Есть ли лучший способ сделать это?

(Примечание: это похоже на вопрос о сервере здесь , но вместо этого из базы приложения)

Ответы [ 4 ]

2 голосов
/ 21 мая 2009

Давайте попробуем это с другой точки зрения.

Сначала протестируйте ваше приложение на машине с минимальной конфигурацией. Какие узкие места существуют?

  • Вызывает ли это много подкачки дисков? Если это так, вам нужно больше оперативной памяти.
  • Обычно ли это медленно при выполнении обычных операций (исключая использование памяти), а затем увеличивает требования к процессору.
  • Требуется ли дисковое пространство за пределами приложения, например, для обработки файлов? Перечислите это.
  • Зависит ли ваше приложение от определенных наборов команд, которые должны быть на чипе? (SSE, Execute Disable Bit, Intel Virtualization, .. в качестве примеров). Если это так, то вы должны указать, какие процессоры будут работать с приложением.

Как правило, если приложение работает нормально при использовании минимальной конфигурации для ОС; тогда ваша «рекомендуемая» конфигурация должна совпадать с рекомендуемой ОС.

В конце дня вам, вероятно, понадобится пара машин под рукой для профилирования. Виртуальные машины не являются хорошим вариантом в этом случае. По определению, ВМ и хост-ОС будут оказывать влияние. Более того, то, что вы можете отключить определенный процессор, не означает, что он работает на том же уровне, что и процессор, обычно созданный для этого уровня.

Например, двухъядерный процессор с частотой 1,8 ГГц, работающий только на одном ядре, по-прежнему сильно отличается от процессора P4 с частотой 1,8 ГГц. Существуют архитектурные различия, а также изменения в кэше L2 и L3.

По тому же признаку, машина с процессором P4 использует ОЗУ другого типа, чем машина с двухъядерным процессором (DDR против DDR2). Скорости ОЗУ оказывают влияние.

Итак, попробуйте придерживаться рекомендаций ОС, так как они уже сделали для вас тяжелую часть.

2 голосов
/ 21 мая 2009

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

1 голос
/ 21 мая 2009

Microsoft представила Windows Vista Index в Vista, чтобы решить эту проблему.

ОБНОВЛЕНИЕ ДЛЯ ДОПОЛНИТЕЛЬНОЙ ИНФОРМАЦИИ

Учитывает всю систему. Имейте в виду, что у них может быть процессор минимального уровня, но если у них дерьмовая видеокарта, то много времени процессора будет потрачено только на рисование окон ... Если вы выберете порядковый индекс опыта, такой как 3.0, то вы можно быть уверенным, что они будут иметь хороший опыт работы с вашим приложением. Если вам требуется больше лошадиных сил, увеличьте требования до 4.0.

Одним из примеров является Dell, который я использую, чтобы напечатать это. Это 2-летняя машина, но все еще регистрируется 4.2 в индексе опыта. Большинство машин бизнес-класса должны иметь возможность зарегистрировать как минимум 3; что должно быть достаточно мощности для приложения, которое вы описали.

Между прочим, мой 5-летний ноутбук регистрируется как 2.0, и он был на среднем уровне в тот момент, когда я его приобрел.

1 голос
/ 21 мая 2009

Для определения CPU и RAM вы можете попробовать использовать Microsoft Virtual PC, который позволяет вам установить настройки CPU и RAM. Затем вы можете протестировать несколько различных настроек, чтобы увидеть, что будет достаточно для обычного пользователя.

Что касается рекомендуемых требований, то их добавление поверх основных требований к ОС, вероятно, было бы безопасным выбором.

...