Конференция завершена. Ждем вас на HighLoad++ в следующий раз!

Повышаем производительность файлового I/O для JVM на Linux Бэкенд, теория программирования

Доклад принят в программу конференции
Дмитрий Бундин
Grid Dynamics

Более 6 лет опыта разработки бэкенда под JVM. Более 2-х лет опыта разработки I/O-интенсивных приложений на C под Linux, профилирования и Low Level Performance Engineering x86 бэкендов.

dbundin@griddynamics.com
Тезисы

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

Прямая работа с диском при файловом I/O — не самая дешевая операция и современные ОС применяют различные оптимизации, такие как кэширование и readahead, чтобы уменьшить ее влияние на производительность. В некоторых случаях обращений к диску можно почти полностью избежать, читая большую часть данных из кэша.

В докладе мы рассмотрим методы оптимизации I/O в JVM и копирования памяти в ядре Linux и как это позволяет увеличить пропускную способность передачи данных на 20%.

Другие доклады секции Бэкенд, теория программирования