У меня есть HP DL380 G7 с двумя несовместимыми процессорами. Один - четырехъядерный ЦП с более быстрыми ядрами, а другой - 6-ядерный ЦП с более медленными ядрами.
В этом ящике я запускаю приложение, которое по причинам лицензирования будет использовать только CPU0-CPU3.
Для меня было бы желательно, чтобы более быстрые ядра на четырехъядерном процессоре перечислялись в CPU0-CPU3 в операционной системе, что давало мне бонус к производительности для а) использования ядер с более высокой тактовой частотой и б) сохранения всех потоков на одном физическом процессоре .
Есть ли способ сделать это в BIOS, в файле конфигурации или в параметрах загрузки Linux?
Конкретные модели ЦП:
Intel (R) Xeon (R) CPU E5649 @ 2,53 ГГц (шестиядерный)
Intel (R) Xeon (R) CPU E5640 @ 2,67 ГГц (четырехъядерный)
Wut?!?
Это псих, знаешь? Он не поддерживается и, скорее всего, не подходит для вашего оборудования. Вы должны использовать на своем сервере процессоры с одинаковыми характеристиками.
Я полагаю, вы просто выполняете свое приложение в cgroup или Shield (или через taskset
), который содержит только ядра ЦП, которые вы хотите использовать. Вы также можете закрепить доступ к памяти к этому процессору с помощью numactl
. Но на самом деле, почему бы вам либо полностью не удалить более медленный процессор, либо не заплатить столько, сколько нужно, чтобы привести систему в соответствие со спецификациями.
Возможно, очевидная вещь, если ваше приложение жестко запрограммировано для использования CPU0-CPU3, - это физически поменять местами сокеты ... но на самом деле просто запускайте здесь с одним процессором.
Если вы имеете в виду оборудование ProLiant DL380 G7, ваш «более быстрый» процессор, скорее всего, будет процессором Nehalem серии 5500, а более медленным шестиядерным процессором будет Westmere. Вы вообще тестировали? Какие конкретно ЦП установлены?
Редактировать:
Ладно, это как минимум процессоры того же поколения / степпинга. Но это по-прежнему плохая идея ... Разница в спецификациях процессора даже не так велика (по сравнению с чем-то вроде Intel X5690 на 3,47 ГГц).