Что у меня есть:
Я хочу заменить старые серверы (ИТ-специалисты купят блейды HP BL685C). Серверы будут иметь 256 ГБ оперативной памяти.
Мне нужна ваша помощь, чтобы понять, что делать с процессорами и ядрами. Параметры:
Вопрос: какой выбрать?
P.S. В следующем году мы перейдем с Oracle на SQL-сервер. Надеюсь, какой вариант вы порекомендуете, подойдет для обеих платформ.
Вы должны обратить внимание на два фактора:
Общая совокупная производительность: это мера общей вычислительной мощности всех ядер на коробке. Вы можете оценить это значение, посмотрев на Passmark рейтинг ЦП для ЦП и умножение на количество физических ЦП в системе.
Однопоточная производительность: это мера того, сколько вычислительной мощности ЦП может дать одному потоку. Вы можете оценить это значение, посмотрев на Passmark рейтинг ЦП для ЦП и деление на количество ядер в ЦП. (Для гиперпоточных ЦП разделите количество физических ядер в 1,25 раза.)
Если одна машина выигрывает по обоим параметрам, вероятно, это ваш лучший выбор. Если он разделен по двум критериям, то все сводится к тому, насколько эффективно ваше программное обеспечение может использовать преимущества нескольких ядер.
Обратите внимание, что производительность памяти тоже может быть важна. Больше каналов памяти обычно означает более быстрый доступ к памяти. Также, конечно, важен общий объем памяти. Разные процессоры часто означают разные материнские платы, что может означать разную производительность памяти.
Вам также необходимо знать конфигурацию NUMA. Если у вас будет только один узел NUMA или несколько узлов NUMA. Я знаю, что SQL Server поддерживает NUMA, и полагаю, что Oracle тоже. Это может иметь большое влияние на производительность базы данных, поскольку получение доступа к памяти в том же узле NUMA происходит намного быстрее, чем доступ к памяти в другом узле NUMA.
Имея примерно равные BogoMIPSes, я бы сказал, что вы должны оценить общий объем кеш-памяти L1 / L2 в обоих случаях - самый большой - победитель.
Вот некоторые вещи, которые вам нужно знать, например: частота процессора (ГГц или МГц) не обеспечивает реальной скорости для работы. Имейте в виду, что существует больше процессоров с эффективным циклом, чем других. Я думаю, вам нужно посмотреть тесты CPU, чтобы решить, какой процессор лучше для этого сервера.
Радоваться, веселиться!
Если процессоры одного класса, то вы можете сравнить скорость яблок с яблоками. Одно это подтолкнет вас к более быстрым процессорам (4x8x3 ГГц).
Использование вашей базы данных также может быть фактором. Это о «форме» обработки ваших данных. Это много меньших вычислений или меньше больших вычислений? Исходя из того, что сказал mrdenny, и учитывая, что это транзакционная база данных (верно? Поскольку она финансовая?), Я бы подумал, что не так важно максимизировать количество ядер ЦП, использующих один и тот же узел кеша / NUMA, поскольку несколько ядер скорее всего работать над различными задачами, в которых кеш не будет играть такую большую роль, как в приложении для хранения данных / интеллектуального анализа данных. Наличие 4 узлов NUMA может фактически позволить увеличить пропускную способность для доступа к памяти по сравнению с 2 узлами NUMA в транзакционной ситуации, когда более мелкие потоки могут быть легче оптимизированы для доступа к памяти на их локальном узле NUMA. Кроме того, если процессоры одного класса и 4x8 быстрее, вполне вероятно, что любое возможное снижение производительности для доступа к нелокальной памяти будет компенсировано увеличением производительности / ядра.
Если процессоры не одного класса, вам действительно нужно взглянуть на некоторые тесты, чтобы увидеть, является ли «более медленный» процессор более эффективным.
Также рассмотрите возможное расширение в будущем. Вы выбираете между 2 и 4 процессорами в системе с 4 сокетами? Если вы думаете, что ваша потребность в вычислительной мощности может увеличиться, наличие 2 процессоров оставит вам место для расширения до 2 дополнительных процессоров, если в системе 4 сокета.