Архив метки: affinity

Утилита isolcpus для изолирования ядер процессора в Linux

В данной статье я расскажу, как на Linux изолировать ядро процессора с помощью утилиты isolcpus.

В результате изоляции планировщик ОС Linux не будет размещать на указанных ядрах никакие пользовательские процессы. Запустить нужный процесс на изолированном ядре возможно будет только с помощью утилиты taskset. В результате изоляции на выделенных ядрах будут работать потоки только вашего процесса, планировщик не будет пытаться перенести их на другие ядра, а также не будет пытаться запустить на указанных ядрах другие процессы, которые бы вытесняли и прерывали потоки исполнения вашего процесса.

Читать далее

Что надо знать программисту об устройстве современного процессора

Данная статья — всего лишь краткое введение в основные концепции устройства современного процессора. Цель статьи — дать основы, чтобы не повторяться при объяснении каких-то нюансов в других статьях. Все отсылки из тех статей к техническим подробностям и деталям будут вести сюда.

Читать далее

Многозадачность операционной системы и low-latency

На современной серверной машине low-latency процесс работает на многозадачной операционной системе. Это может быть ОС Solaris, чаще Linux, FreeBSD или Windows Server. Помимо нашего процесса в ОС работают еще и другие процессы, которым ОС тоже должна выделять машинное время. Собственно потому ОС и называется многозадачной.

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

Читать далее