> man operating_systems
Linux: Производительность кэша inode
В lkml прошла интересная дискуссия об эффективности кэша inode в ядрах Linux версий 2.4, включая обсуждение нескольких настроек, которые могут быть полезны для систем, работающих в качестве больших NFS и Samba серверов.

В частности, было отмечено снижение производительности на таких системах, которое можно легко увидеть производя поиск find / во время вывода cat'ом больших файлов в /dev/null. В дискуссии между поддерживающим ветку 2.4 Марселло Тосатти (Marcelo Tosatti), Эндрю Мортоном (Andrew Morton), занимающимся веткой 2.6 и ответственным за VM Андреа Арканджели (Andrea Arcangeli) выяснилось, что происходит это скорее всего из-за слишком маленькой таблицы кэшей хэшей inode'ов, что приводит к большому числу промахов. Однако выяснилось и то, что некоторые настройки могут помочь в этом, однако, это половинчатые решения, вполне возможно, что в ветке 2.6 позже будет сделано изменение в коде работы с inode для улучшения производительности.

Кэш inode - это хранящаяся в памяти хэш-таблица, описанная в fs/inode.c, и которую использует виртуальная файловая система (VFS). Каждый файл в файловой системе Unix имеет уникальный inode, структуру данных (определенную в include/linux/fs.h), содержащую такую информацию, как владелец файла, дата последнего изменения и устройство, которое хранит этот файл. Эти данные необходимы для навигации по примонтированной файловой системы и для ускорения этого процесса при чтении inode он записывается в кэш inode для дальнейшего использования. По мере заполнения таблицы хэшей вероятность их совпадения у нескольких inode совпадает, что приводит к коллизиям. Увеличивающееся число коллизий скорее всего и ведет к уменьшению скорости поисков, во всяком случае так это объясняет Андреа.

Если у вас возникают подобные проблемы, то, возможно, стоит попробовать поиграться с параметром /proc/sys/vm/vm_mapped_ratio.

Roman I Khimov  в  Вторник, 28 Декабрь 2004, 03:30  |   Комментарии: 18  |  для печати

Наши новости доступны в формате RSS.

© OSRC.info, 2004-2010.
Авторские права на любые материалы, авторы которых явно указаны, принадлежат их авторам. По вопросам публикации таких материалов обращайтесь к авторам.
Авторские права на любые другие материалы принадлежат OSRC.info.
Сайт является помещением библиотеки. Копирование, сохранение на жестком диске или иной способ сохранения произведений осуществляются пользователями на свой риск.
При использовании материалов сайта ссылка на OSRC.info обязательна.