PARALLEL.RU

Дискуссионный клуб по параллельным вычислениям
Текущее время: 21 июл 18 8:41

Часовой пояс: UTC + 4 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 3 ] 
Автор Сообщение
 Заголовок сообщения: Сетевые диски (NFS?)
СообщениеДобавлено: 3 дек 09 15:30 
Не в сети

Зарегистрирован: 2 дек 09 13:08
Сообщения: 9
Всем добрый день!

Для доступа к пользовательским файлам и каталогам на вычислительных узлах домашний каталог пользователя монтируется по NFS v3 со следующими опциями:

на сервере (/etc/exports):
/home 192.168.0.0/255.255.0.0(rw,no_root_squash,sync,no_subtree_check,no_wdelay)

На клиенете (/etc/fstab):
master:/home /home nfs udp,rsize=65536,wsize=65536,noac,intr 0 0

На управляющем и вычислительных узлах установлен CentOS 5.4.

При такой конфигурации, скорость записи на сетевой диск очень медленная (2-3 Мбайт/сек). С чтение проблем особых нет.
Как выяснилось, основная проблема в опции "noac" (отключение кэширование атрибутов) на клиенте. Я так понимаю, что отключение этой опции может вызвать проблему при работе нескольких клиентов с одним файлом. Но и жить с такими скоростями тоже невыносимо (конечно, если у пользователя задача интенсивно работает с файлами, его можно попросить не использовать ощий файл и работать с файлом не на сетевом диске, а в /tmp каталоге, но это не совсем правильно с моей точки зрения).

В связи с чем у меня вопрос, кто и как борется с такими проблемами?
Samba или параллельный ФС?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сетевые диски (NFS?)
СообщениеДобавлено: 3 дек 09 18:14 
Не в сети

Зарегистрирован: 11 дек 02 19:37
Сообщения: 872
Откуда: НИВЦ МГУ
i1ya писал(а):
Как выяснилось, основная проблема в опции "noac" (отключение кэширование атрибутов) на клиенте. Я так понимаю, что отключение этой опции может вызвать проблему при работе нескольких клиентов с одним файлом.

В очень редких случаях. Для начала можете просто её убрать.

Цитата:
Но и жить с такими скоростями тоже невыносимо

Дальше будет хуже :)

Цитата:
(конечно, если у пользователя задача интенсивно работает с файлами, его можно попросить не использовать ощий файл и работать с файлом не на сетевом диске, а в /tmp каталоге, но это не совсем правильно с моей точки зрения).

Правильно, ещё как правильно.Особенно на NFS. Временные файлы - только в /tmp. В домашний каталог - только результаты. И не забывайте чистить /tmp на узлах почаще...

Цитата:
В связи с чем у меня вопрос, кто и как борется с такими проблемами?
Samba или параллельный ФС?

Параллельные ФС. Samba (CIFS) чуть-чуть побыстрее, но всё равно захлёбывается.
Особенно, если клиентов много. Хотя, у меня и 10 клиентов убивали NFS так, что ls отрабатывал по 5 минут...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сетевые диски (NFS?)
СообщениеДобавлено: 3 дек 09 18:31 
Не в сети

Зарегистрирован: 2 дек 09 13:08
Сообщения: 9
Убрал опцию "noac" и с запустил вот такой вот пример:

Код:
#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include "mpi.h"

int main(int argc, char* argv[])
{
    int rank, size, res;
    FILE *f=NULL;
    struct stat buf;
    unsigned int n=0;
    char *filename = "test_file";
    char *data="This is my test data again :)\n";

    MPI_Init(&argc, &argv);
    MPI_Comm_rank(MPI_COMM_WORLD, &rank);
    MPI_Comm_size(MPI_COMM_WORLD, &size);

    if (rank==0){
        f=fopen(filename, "w");
        if (!f){
            perror ("open");
            MPI_Finalize();
            return 0;
       }
       printf ("%d successfully create file\n", rank);
       n=fwrite(data, sizeof(char), strlen(data), f);
       printf ("%d successfully write %d bytes\n", rank, n);
       fclose(f);
    }

    MPI_Barrier(MPI_COMM_WORLD);
    res=stat(filename, &buf);
    if (res!=0){
        perror("stat");
        MPI_Finalize();
        return 0;
    }

    printf ("From %d the file size of %s is %d bytes\n", rank, filename, buf.st_size);
    MPI_Barrier(MPI_COMM_WORLD);
    MPI_Finalize();
    return 0;
}


После выполнения этой программы все узлы увидели файл и правильно определили его размер.
Ещё раз внимательно почитал man и google. Есть ещё такая опция "actimeo", позволяет отключить кэширование атрибутов файла, при этом не отключает буфер на запись, как это делает "noac".


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 3 ] 

Часовой пояс: UTC + 4 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB