Назад | Перейти на главную страницу

Можно ли повлиять на способ перечисления процессоров в Linux?

У меня есть 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 ГГц).