Оптимизирована ли Ubuntu для многоядерных процессоров?

Оптимизирована ли Ubuntu для многоядерных процессоров?

Использует ли Ubuntu многоядерные процессоры (как, как говорят, делает Windows 7)?

Другими словами, оптимизирована ли многозадачность таким образом, чтобы пользователи могли воспользоваться преимуществами 4-ядерных процессоров?

решение1

Да, Ubuntu оптимизирована для многоядерных процессоров уже много лет.

Некоторая предыстория:

«Версия 2.0 (ядра Linux) была выпущена 9 июня 1996 года. В серии было 41 релиз. Главной особенностью версии 2.0 былоСМПподдержка (т. е.симметричная многопроцессорная обработкав одной системе) и поддержка большего количества типов процессоров».

решение2

Ubuntu — операционная система, дистрибутив Linux. Операционная система состоит из нескольких программных компонентов, таких как ядро,библиотеки, службы/демоны, приложения и т. д.

Ubuntu используетядро Linuxкоторый используетсимметричная многопроцессорная обработка(SMP) и несколько ядер. Он отлично масштабируется от бюджетных одноядерных систем с одним процессором до высокопроизводительных кластеров суперкомпьютеров с тысячами многоядерных процессоров.

Ubuntu поставляется с сотнями библиотек, некоторые из которыхмногопоточныйи потокобезопасные, некоторые из которых не являются таковыми. В некоторых случаях имеет смысл, чтобы они были многопоточными, в других это неприменимо, вообще возможно или не имеет особого смысла.

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

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

решение3

Ubuntu'sядроподдерживает несколько ЦП уже давно, не имеет значения, многоядерные это ядра или несколько ЦП в одной системе, они будут обрабатываться идеально.

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

Чтобы приложение могло одновременно использовать несколько ЦП/ядер, его необходимо построить так, чтобы нагрузка процесса распределялась между этими ЦП/ядрами.

То есть: предположим, вы работаете с чем-то таким же простым, как wordpadWindows, и открываетеогромныйтекстовый файл, время загрузки будет одинаковым, независимо от того, есть ли у вас 1 ЦП или 1 миллиард ЦП (для ЦП с одинаковой скоростью шины и схожей архитектурой, конечно).

То же самое касается ядра Linux и дистрибутива Ubuntu: если приложение создано для одного потока, то больше никаких дополнительных ресурсов процессора не потребуется.

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

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

решение4

Да, у меня все отлично работает, и у меня несколько процессоров.иhyper-threading, я забыл, что это значит, но я почти уверен, что это что-то значит о том, что каждый процессор может выполнять несколько потоков, что в сочетании с тем фактом, что у каждого процессора 2 ядра, похоже, является проблемой. Единственная проблема, с которой я столкнулся до сих пор, заключается в том, что программы на Ubuntu имеют тенденцию замораживать его. Я сделал это реже, уменьшив swappiness, так как у меня 6 ГБ ОЗУ.

Связанный контент