Форум русскоязычного сообщества Ubuntu


Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: Как использовать RAM диск в роли кэша для HDD?  (Прочитано 4201 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Altair

  • Автор темы
  • Гость
Всем привет!

Как я уже прочитал, новые ядра 3.9.х уже имеют модуль поддержки SSD кэширования винчестеров.
А как использовать RAM диск в роли кэша для HDD?

ОС Ubuntu 13.10 (64 bit)
RAM 64 ГБ (8х8 ГБ)
матплата Asus P9X79 WS (недавно перепрошитая)
процессор Intel Core i7-3930K

Оффлайн loveubuntu

  • Новичок
  • *
  • Сообщений: 43
    • Просмотр профиля
как сделать рам диск?

Altair

  • Автор темы
  • Гость
То, как я делаю RAM диск, описал в своём блоге на украинском языке
http://omi-linux-diary.blogspot.com/2012/10/ram-ubuntu-1204.html
http://omi-linux-diary.blogspot.com/2012/10/ram-10gb.html

Меня интересует, как использовать RAM диск в роли кэша для HDD.
« Последнее редактирование: 27 Мая 2013, 22:39:55 от Altair »

Оффлайн Self-Perfection

  • Активист
  • *
  • Сообщений: 331
  • Arch linux, KDE
    • Просмотр профиля
Дополнительных манипуляций не требуется, это стандартная функциональность. См.
$ free -m
             total       used       free     shared    buffers     cached
Mem:          3539       3343        196          0         50       1942
-/+ buffers/cache:       1349       2190
Swap:         1996         62       1934

Столбец cached. Гуглить "page cache".
Читайте документацию, наставницу вашу!
Памятка по описанию проблем:
Для решения [такой-то задачи] делаю [такие-то действия], но вместо [ожидаемый результат] получаю [описание отличий].

Altair

  • Автор темы
  • Гость
Self-Perfection,
есть такой момент, но я спрашиваю о другом.

Оффлайн Self-Perfection

  • Активист
  • *
  • Сообщений: 331
  • Arch linux, KDE
    • Просмотр профиля
Self-Perfection,
есть такой момент, но я спрашиваю о другом.
Вот только не понятно, о чём. Может вы хотите vm.dirty_background_ratio потюнинговать?
ИМХО, если помимо задачи, которую вы пытаетесь решить, описывать зачем вам это нужно, точность попадания ответов многократно улучшается.
Читайте документацию, наставницу вашу!
Памятка по описанию проблем:
Для решения [такой-то задачи] делаю [такие-то действия], но вместо [ожидаемый результат] получаю [описание отличий].

Altair

  • Автор темы
  • Гость
Задача следующего плана: обработка научных астрономических данных.

Моя основная рабочая программа THELI http://www.astro.uni-bonn.de/theli/gui/index.html в которой я обрабатываю результаты работы больших телескопов.
Камеры больших телескопов имеют самые разные матрицы, начиная от одного чипа и до десятков чипов.
Я работаю с данными от камер на 1, 2, 4, 8 и 32 чипа.
Чтобы получить цветное изображение небесного объекта, нужно сложить минимум три монохромных изображений, полученных через три разных фильтры.
Каждое из монохромных изображений сперва обрабатывается: вычитаются остаточные тепловые шумы матрицы, компенсируются физические дефекты матрицы и т.д.
Например, чтобы получить одно цветное изображение от матрицы на 8 чипов, приходится обрабатывать десятки (а иногда и сотни) "кадров", каждый из которых составлен из 8-ми отдельных.
Я помещаю исходные данные в четыре разных папки, а в процессе обработки программа создаёт ещё двадцать папок, в которые пишет промежуточные результаты.
Например, я помещаю в четыре папки 35 файлов весом 4.8 Гбайт исходных данных, а программа создаёт ещё 2 620 файлов и ещё двадцать папок. Итоговый общий вес 2655 файлов 35.4 Гбайт в двадцати четырёх папках.

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

Пользователь решил продолжить мысль 28 Мая 2013, 00:25:29:
Поэтому я и ищу решение, как увеличить скорость обмена процессора с винчестерами.
« Последнее редактирование: 28 Мая 2013, 00:34:18 от Altair »

Anubis-wins

  • Автор темы
  • Гость
Я конечно не спец, но тема интересная вот здесь что-то есть http://www.opennet.ru/opennews/art.shtml?num=14845
Может поможет.
Помню еще во времена Dos я играл в Retal от Ocean и запихнул ее целиком в RAM, существенно быстрее все было.
Потом сувал туда шахматную программу и запускал несколько копий - комп с компом, только разные движки.
Есть такая оболочка Winboard - запускаешь один движок за белых другой за черных и устраиваешь соревнование.
Вообщем измывался...
Думаю синхронизация HDD с RAM диском дело не ускорит.
Надо вашу программу целиком запихнуть в RAM , вместе с данными ... но есть риск потерять их в случае сбоя.
По большому счету надо оперативную память гигов 50 :)
А вообще-то арендовать облачный сервис чисто под вычисления.
« Последнее редактирование: 28 Мая 2013, 10:34:49 от Anubis-wins »

Lifewalker

  • Автор темы
  • Гость
Сугубо ИМХО, под ваши задачи вам бы что-нибудь вроде этого мегадевайса прикрутить. Это первая попавшаяся на глаза ссылка по запросу sdram drive. Не знаю, существуют ли такие монстры, чтоб 64 Гб или больше влезло, но при нынешних объёмах модулеей думаю возможно.
Кстати, вот ещё девайс - твердотельный диск на модулях DRAM.
« Последнее редактирование: 28 Мая 2013, 10:40:55 от Lifewalker »

Altair

  • Автор темы
  • Гость
Проблема в объёмах. Если брать с маленьким запасом, то мне нужно подобное устройство с объёмом порядка 1 ТБ.
Нечто типа OCZ Technology RevoDrive 3 X2 series PCI-E 960GB PCI-Express.

Lifewalker

  • Автор темы
  • Гость
Ну вот вы сами себе на свой вопрос и ответили :)

Anubis-wins

  • Автор темы
  • Гость
А распаралелить это все ? Скажем создать локальную сеть одноранговую - 5-6 компов...

Altair

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

Оффлайн MaratSh

  • Участник
  • *
  • Сообщений: 204
  • Всё пройдёт...
    • Просмотр профиля
В некоторых случаех приходится ждать почти час, пока завершится одна операция, так как требуется много времени на запись десятков тысяч файлов, а скорость доступа к винчестерам не достаточно высокая.
Какие диски используются и в каких количествах?

Altair

  • Автор темы
  • Гость
Сижу на RAID0 из двух дисков по 2 ТБ Seagate Barracuda 7200.14 2TB 7200rpm 64MB ST2000DM001 3.5 SATAIII



Пользователь решил продолжить мысль 31 Мая 2013, 16:45:26:
См. скрин результатов тестов для текущего RAID0 и старого винчестера Seagate Barracuda LP ST32000542AS 2TB 5900 RPM 32MB Cache SATA 3.0Gb/s

« Последнее редактирование: 31 Мая 2013, 16:45:27 от Altair »

 

Страница сгенерирована за 0.018 секунд. Запросов: 22.