RAM-диск в OS X

RAM-диск — это логический том, расположенный в оперативной памяти компьютера. Его польза очевидна: скорость доступа к информации в оперативной памяти несравненно выше, чем скорость доступа к жесткому диску или диску на твёрдотельном накопителе (SSD). Но есть и негативный момент: данные в оперативной памяти безвозвратно стираются при перезагрузке компьютера или отключении питания.

Тем не менее, существуют ситуации, когда скорость может иметь решающее значение. Это может быть, например, пакетная обработка изображений. Мне приходилось оптимизировать около 1 Гигабайта PNG-изображений, ещё попутно конвертируя их в WebP формат. Потом нужно было создать архив для загрузки финальных картинок на сервер. С RAM-диском все эти операции производились гораздо быстрее. Потеря данных на любом этапе не была критической — нужно было всего-лишь перезапустить скрипт.

Итак, чтобы создать RAM-диск, в терминале выполним команду:

diskutil erasevolume HFS+ 'RAM Disk' `hdiutil attach -nomount ram://XXXXX`

Замените символы XXXXX на количество блоков. Это количество вычисляется по формуле размер_в_байтах / 512. Для дисков в несколько Гигабайт можно пользоваться грубой формулой размер_в_Гбайт * 2000000.

Реальная память под диск будет выделяться по мере его заполнения данными и полностью освобождается только когда диск будет размонтирован.

Приложения сторонних разработчиков

Вы можете воспользоваться простым приложением от разработчика Florian Bogner.

Вы можете скачать его приложение с данного сайта, распаковав архив вы выбираете необходимый объём раздела и нажимаете Create RAM Disk.

Также Вы можете воспользоваться портом linux приложения rdmanage

Для начала необходимо скачать приложение, перейдя по ссылке или же воспользовавшись curl:

$ curl -O http://www.zebpedersen.co.uk/python/mac/rdmanage

Далее необходимо дать права на выполнение:
$ chmod +x rdmanage
Для создания RAM диска необходимо выполнить данную команду указав желаемый объём диска Мегабайтах:
$ ./rdmanage [size of disk in MB]
Для примера, чтобы создать диск на 500 Мегабайт необходимо выполнить следующую комманду:
$ ./rdmanage 500

Тесты

Скорость RAM дисков будет зависеть от общей производительность памяти Вашего MAC, но скорость будет выше традиционных HDD и SSD, вот сравнение производительности 16 GB RAM Disk на 2011 27-inch 3.4GHz i7 iMac с 240GB OWC Mercury Pro 6G SSD.

OWC SSD выдала скорость 490Мб/с на запись и 540Мб/с на чтение, стандартные значения для данного SSD. RAM диск же показал в пике 4.2Гб/с при чтении и записи и в среднем 3,5Гб/с.

Выводы

Как Вы видите RAM диск может дать удивительный прирост в скорости, но он более подвержен опасностям потерять данные, Вы конечно можете делать бэкапы с данного диска на обычный носитель, за счет чего многие пользователи используют данный тип диска в своей повседневной работе.

Добавить комментарий