Управление виртуальной памятью в Linux/x86-64 Основная секция
Основатель и системный архитектор Tempesta Technologies, эксперт в области высокопроизводительных вычислений в Linux/x86-64.
Тезисы
Тезисы:
Решить задачу обработки мультигигабитного магистрального трафика (обнаружение и предотвращение DDoS атак, различные статистики и пр.) "в лоб" обычными структурами данных не получается: данных слишком много, их поток слишком велик, а обращения к данным почти случайно. Проблема встает особенно остро, если нужно большое число инсталляций подобных систем и кластерные решения становятся слишком дорогими.
Для успешного решения такой задачи нужно глубокое понимание механизмов работы с памятью ОС и микропроцессора, а, в нашем случае, и их модификация.
В докладе будут освещены следующие вопросы:
- Архитектура x86-64: не настоящие 64 бита, разделение адресного пространства, отличия от x86 и как получить еще 2 байта на каждый адрес;
- AMD Opteron/NUMA vs. Intel Xeon/SMP: когда и что имеет смысл использовать;
- Между ОС и микропроцессором: как работает виртуальная память, кэши и локализация данных, аппаратные структуры данных
- Что происходит когда мы обходим какое-либо дерево или обращаемся к хэшу, и как эти процессы меняются с увеличением объема данных;
- И в завершение, как подхачить виртуальный пэйджинг в Linux/x86-64 и никогда не получать ошибки адресации.