• A
  • A
  • A
  • АБВ
  • АБВ
  • АБВ
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта

Домашние директории и их очистка

👉 Регистрация на суперкомпьютере
👉 Инструкции для пользователей
👉 Базовая инструкция для пользователей

Общая информация

На суперкомпьютере Харизма пользовательские данные размещаются в двух директориях:
  1. home — домашняя директория пользователя (срок хранения данных до 3 месяцев);
  2. scratch — быстрая рабочая директория на NVMe-дисках для краткосрочного хранения данных, с которыми пользователь работает в настоящий момент.
    Управление каталогами в директории scratch осуществляется с помощью системы hpc-workspaces (инструкция).
В соответствии с Регламентом доступа длительное хранение на суперкомпьютере данных, не используемых в текущих расчетах, не допускается. Пользователям необходимо регулярно проверять свои директории и удалять старые, временные и ненужные файлы.

О директории scratch

Директория scratch расположена на массиве быстрых NVMe дисков и предназначена для краткосрочного хранения данных, с которыми пользователь работает в настоящий момент. Пользовательская директория scratch находится по пути: /scratch/$USER. Управление каталогами в директории scratch осуществляется пользователем с помощью системы hpc-workspaces (инструкция).
Не следует использовать scratch как постоянное хранилище. Для долговременного хранения данных следует использовать персональный компьютер или директорию home (3 месяца). Временные, промежуточные и неиспользуемые данные следует регулярно удалять.  Данные в scratch не резервируются и могут быть удалены в любое время для предотваращения переполнения.

  1. Scratch используется для задач, связанных с глубоким обучением, он адаптирован для работы с миллионами маленьких файлов, из которых состоят датасеты.
  2. Для естественно-научных и инженерных вычислений scratch использовать можно, но необязательно. Кластер имеет довольно производительное хранилище home, ориентированое на работу с крупными файлами, специфичными для естественно-научных и инженерных расчетов.
  3. Не копируйте распакованные датасеты между home и scratch, это создаст высокую бесполезную нагрузку на хранилище home, неприспособленное к работе с миллионами маленьких файлов.
  4. Распаковывайте скачанные из Интернета датасеты напрямую в scratch, предварительно создав для этого соответствующий workspace (инструкция). Например, ws_allocate my_dataset 30, а затем tar -xzvf ./downloaded.tar.gz -C /scratch/$USER/ws/my_dataset.
  5. Если нужно передать датасет обратно в home, делайте это так: tar -cvf - /scratch/$USER/ws/my_dataset/ | lz4 - > ~/my_dataset.tar.lz4 В этом случае в home запишется один большой файл, что не создаст нагрузки, как при записи миллиона файлов.
  6. Не дублируйте себе общедоступные датасеты (наборы данных), т.к. они и так размещены на NVMe.
  7. Удаляйте лишние директории и файлы командой rm -rf путь_к_директории. Не храните файлы дольше 30 дней.

Как найти директории с неиспользуемыми файлами

Для обнаружения директорий со старыми файлами воспользуйтесь страницей "Хранилище" системы мониторинга производительности HPC TaskMaster. Проверка директорий пользователей происходит раз в квартал. Отчет о старых файлах появляется на странице, а также присылается в корпоративную почту.

Очистка директорий home и scratch

Пожалуйста, регулярно удаляйте:

- неиспользуемые датасеты и модели;
- временные файлы расчетов и промежуточные результаты;
- неиспользуемые архивы и дубликаты данных;
- кэш программ и библиотек.

Многие файлы находятся в скрытых каталогах, имена которых начинаются с точки:

    ~/.cache ~/.conda/ ~/.local/ ~/.cache/huggingface/

Например, в каталог ~/.cache/huggingface/ автоматически загружаются датасеты и модели с портала HuggingFace, где они и остаются лежать. Удаляйте, пожалуйста, неиспользуемые датасеты и модели.

Как удалить конкретные файлы и директории

Зайдите в терминал (подключитесь через SSH или воспользуйтесь терминалом встроенным в JupyterHub).
Если вы точно знаете, какие файлы или директории больше не нужны, их можно удалить вручную из командной строки.

Чтобы удалить директорию со всем содержимым без подтверждений выполните в терминале:

rm -rf путь_к_директории

Удаленные файлы нельзя восстановить. Не удаляйте директории, назначение которых вам неизвестно, а также внимательно проверяйте, что путь к удаляемой директории указан правильно.

Не используйте Midnight Commander (mc) и File Browser в JupyterHub для удаления директорий, содержащих большое количество файлов – это очень медленно и создает лишнюю нагрузку на систему хранения данных. Для удаления используйте команду rm в терминале.

Датасеты

На кластере есть общая директория с популярными датасетами. Если члены вашей научной группы используют одни и те же наборы данных, создайте, пожалуйста, заявку, чтобы мы перенесли данные в общий доступ во избежание дублирования.

Временные директории /tmp и /dev/shm на вычислительных узлах

Во время работы задачи на вычислительном узле доступны две локальные временные директории. Они находятся на том узле, где выполняется задача, поэтому к ним нельзя обратиться с узла входа или с других узлов.

Для каждой задачи на узле создается каталог /tmp/job-$SLURM_JOB_ID, доступный только владельцу задачи. В нем удобно хранить промежуточные файлы, кэш и распакованные наборы данных, которые нужны только во время расчета.

/dev/shm — это файловая система в оперативной памяти. Всё, что вы туда записываете, занимает оперативную память узла. Библиотеки часто используют ее сами, например PyTorch DataLoader с num_workers > 0.

Правила использования:

  1. Удаляйте свои файлы из /tmp и /dev/shm в конце задачи.
  2. Пишите только в каталог своей задачи /tmp/job-$SLURM_JOB_ID, а не в корень /tmp.
  3. Окончательные результаты пишите сразу в home или scratch.
  4. Не записывайте в /dev/shm крупные файлы. Эта память общая для всех задач на узле.
  5. Не заполняйте /tmp целиком.
  6. Если задача работает на нескольких узлах, каталог /tmp/job-$SLURM_JOB_ID есть на каждом узле отдельно. Файлы на одном узле не видны с другого.




 

Нашли опечатку?
Выделите её, нажмите Ctrl+Enter и отправьте нам уведомление. Спасибо за участие!
Сервис предназначен только для отправки сообщений об орфографических и пунктуационных ошибках.