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

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

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

Компьютеры, которые мы сейчас используем, представляют собой серверные решения, которые содержат несколько процессоров с относительно высокой скоростью (16 физических ядер, 2,9 ГГц каждое и без графического процессора). Таким образом, решение сводится к двум вариантам:

  • инвестирование в аналогичные машины с немного более высокой тактовой частотой (например, 3,2 ГГц) и таким же количеством ядер (скажем, 16) или, альтернативно ...
  • снижение тактовой частоты (например, 2,6 ГГц) и переход на большее количество ядер (скажем, 20 или 24).

Я не уверен, что увеличение тактовой частоты окупится даже в приложениях, требующих большого объема вычислений, поскольку я предполагаю, что производительность не увеличивается линейно с тактовой частотой. Строго говоря, я мог бы просто подойти к проблеме так:

  • 3,2 ГГц * 16 ядер = 51,2 ГГц или, альтернативно ...
  • 2,5 ГГц * 24 ядра = 60,0 ГГц

Тем не менее, я уверен, что этот расчет ошибочен по нескольким причинам. Но каким именно образом? В данном частном случае деньги на самом деле не проблема, и, к сожалению, нужно исключать вычисления с использованием графических процессоров.

Машины будут работать под управлением Windows Server 2012 R2 и будут использоваться исключительно для такого рода расчетов. Все задействованные программы оптимизированы для работы с 64-битной версией, но иногда могут использоваться и 32-битные программы. Память и жесткий диск не должны быть огромным фактором для рассмотрения.

Ура!

1 ответ1

1

Расчеты не точные. Они с математической точки зрения, но в вычислениях вам действительно нужно умножить на 0,9 до 0,75, чтобы получить реальную "мощность". Чем больше ядер / процессоров, тем меньше число. Это происходит из-за мощности компьютера, вам нужно распараллеливать задачи и их, чтобы получить конечный результат из разных потоков.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .