Наткнулся на интересную книгу Performance Analysis and Tuning on Modern CPUs: Squeeze the last bit of performance from your application, которую написал Денис Бахвалов. Денис работает в Intel и отвечает за разработку C++ компиляторов, за оптимизацию и настройку различных приложений под архитектуру процессоров Intel.
Читать далееАрхив метки: performance
Зачем выставлять стартовые параметры -Xmx и -Xms у JVM на одно значение
В стартовых параметрах Java есть два параметра -Xmx и -Xms, которые отвечают за то, какой объем heap вы хотите выделить вашему приложению при старте (-Xms), и какой максимальный объем памяти (-Xmx) вы хотите выделить для программы за все время ее работы.
Опыт показывает, что для улучшения производительности крупного «тяжелого» Java-приложения лучше всего этим двум параметрам давать одно и то же значение. Как выбрать конкретное значение, рассказывается в другой статье. В данной заметке я просто приведу несколько аргументов в пользу этой стратегии.
Читать далееУтилита isolcpus для изолирования ядер процессора в Linux
В данной статье я расскажу, как на Linux изолировать ядро процессора с помощью утилиты isolcpus.
В результате изоляции планировщик ОС Linux не будет размещать на указанных ядрах никакие пользовательские процессы. Запустить нужный процесс на изолированном ядре возможно будет только с помощью утилиты taskset. В результате изоляции на выделенных ядрах будут работать потоки только вашего процесса, планировщик не будет пытаться перенести их на другие ядра, а также не будет пытаться запустить на указанных ядрах другие процессы, которые бы вытесняли и прерывали потоки исполнения вашего процесса.
Читать далееРуслан Черемин: Когда имеет смысл передавать IO в отдельный поток?
Допустим, у нас есть простая система, которая принимает запросы из сети, как-то их обрабатывает («бизнес-логика»), и отправляет результат назад, в сеть. Мы заинтересованы в быстром отклике (=latency), а отправка – это IO, так что возникает идея ее снести в отдельный поток.
Но тогда придется передавать данные из основного потока в поток отправки – а межпоточная коммуникация это какие-то накладные расходы (копирование, инструкции синхронизации, т.п.)
Тонкости устройства биржевого шлюза
Мартин Томпсон в своей презентации о совеременных биржевых технологиях поднял интересную тему «честности» доступа к бирже.
Читать далее