Привет, GeekTimes! Совершенно невероятная мощь и производительность сокрыта в слове RAMDisk — Когда-то давно были даже специальные устройства, имитирующие на железном уровне работу рамдиска — Gigabyte i-RAM, например. Однако сейчас при доступе к огромному объему оперативки строить виртуальные диски становится еще проще. Что это дает? Ответ под катом.



Для начала железная конфигурация — чтобы сделать боооольшой RAMDisk нужно много оперативной памяти. “Их есть у меня” — 128 отборных гигабайт DDR4 HyperX Savage — куда уж больше? Строго говоря, моя материнская плата не поддерживает такой объем RAM, но с помощью бубна и еще нескольких шаманских аксессуаров удалось завести стенд, правда с оговоркой, на частоте 2133 МГц. В остальном, все по высшему разряду – восемь планок памяти по 16 гигабайт каждая, фирменные красивые радиаторы HyperX Savage, длительный гарантийный срок, техническая поддержка (на случай, если вы сами не сможете справиться с настройкой и установкой). Такому комплекту нужен соответствующий тестовый стенд, и он тоже есть в моем распоряжении.

  • Процессор: Intel Core i7-5960X
  • Материнская плата: ASUS Rampage V Extreme, Intel Socket 2011-3
  • Оперативная память: HyperX Savage DDR4-2666 128 Gb (8*16 Gb)
  • Системный SSD-накопитель: HyperX Predator PCI-E SSD 480 Gb
  • Видеокарта: AMD Fury X
  • Блок питания: Corsair AX1200i, 1200W
  • Операционная система: Windows 10 Профессиональная (64-bit)


На просторах этой оперативной памяти можно развернуть все, что угодно. Наверняка можно одновременно запустить все установленные программы, а может быть даже несколько экземпляров Mozilla Firefox (сарказм), но сегодня меня интересуют именно виртуальные диски.

Когда в вашем компьютере становится неприлично много оперативной памяти хочется максимально ее задействовать, и RAMDisk наиболее удачное применение. На текущий момент существует достаточно широкий выбор ПО для работы с RAMDisk, но я строить буду с помощью софта, который уже зарекомендовал себя с положительной стороны и собрал некоторое количество отзывов — DATARAM Ramdisk и ROG Ramdisk.
Первая софтина — условно-бесплатная, раньше можно было приобрести качественную лицензию с хорошей скидкой при покупке продуктов AMD.
Второй вариант — бесплатно поставляется с платами ASUS серии Republic Of Gamers. Коль скоро тестирование пройдет на базе материнской платы ASUS Rampage V Extreme/USB3.1 — грешно не оценить возможности этого ПО.







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





Тестировать RAMDisk оказалось совсем непросто, потому что многие программы не хотят иметь с ним дело, как например, привычный и удобный PC Mark 8 — он вовсе отказывается проходит тест на указанном разделе, выдавая ошибку. В данном случае, сказывается тот факт, что применение RAM Disk приведет к существенному увеличению результата и срабатывает система защиты от «нечестной игры», ведь рейтинги PC Mark 8 используются многими энтузиастами для сравнения производительности своих систем.

Crystal Disk Mark 5.1.2


Этот тест позволяет оценить работу накопителя в четырех режимах: линейное чтение/запись, чтение/запись блоков по 4К, линейное чтение/запись при глубине очереди 32 команды, чтение/запись блоков по 4К при глубине очереди 32 команды.



Crystal Disk Mark демонстрирует, что не все йогурты одинаково полезны, а именно ROG диск быстрее DATARam причем достаточно существенно.

Копирование файла с RAMDisk на другой RAMDisk весьма забавная процедура — все происходит почти мгновенно. Огромнейший видеофайл, скорость записи, которого на RAM Disk ограничена лишь скоростью чтения с USB источника, пролетает на сверхзвуковой скорости внутри оперативной памяти.



Копировать диск с SSD на RAM Disk тоже получается весьма быстро — скорость ограничена скоростью чтения с твердотельного накопителя, аналогично в обратную сторону — быстрее чем пишет SSD поработать не получится.

В качестве прикладного софта предлагаю сугубо субъективную оценку: работу с фотографиями в приложении DxO OpticsPro 10. В качестве задачи ставился экспорт 20 фотографий из RAW формата Canon (CR2) в полноразмерный JPEG с включенным шумодавом качества PRIME. Много в этой задаче зависит от процессора, но все же работа с хранилищем данных тоже важна.
В результате получается разница около 20 процентов по сравнению с экспортом на системный PCI-E SSD HyperX Predator. Много ли это? Да, вполне существенный прирост, потому что разгон процессора на 10% (300 МГц) изменял время обработки пакета всего на 1%.



Для игр воспользоваться всеми благами не получилось, вернее, все работает корректно, без вопросов, но FPS в двух весьма требовательных игрушках: Middle-Earth:Shadow of Mordor и Total War:Attila не вырос относительно результатов тестов игр, которые были установлены на PCI-E SSD.



Так для чего же нужен RAMDisk? Что можно ускорить с его помощью? Архиваторы (кому же понадобится так быстро сжимать/разжимать данные). Браузеры (быстрый доступ ко всему кэшу, который у вас есть). Экономия ресурса записи ячеек SSD (спорный момент при учете стоимости большого объема оперативной памяти). создатели контента, крутящие большие файлы в Adobe PS/AI и так далее (самый реалистичный пример).

Стоимость RAMDisk не относится к сильным сторонам «проекта». В пересчете на рубль за гигабайт SSD накопитель будет намного выгоднее, чем колоссальный объем оперативной памяти – SSD Kingston KC400 емкостью 128 Gb стоит от 3800 рублей, комплект памяти 128 Gb обойдется в 83 000 рублей. Зато скорость чтения/записи превосходит бюджетные, да и не только, SSD более чем в 10 раз, а кроме того большой обьем оперативной памяти еще никогда и никому не вредил. Разве что кошелек будет недоволен, но кто его спрашивает =).

Есть свои нюансы и недостатки: Небольшой объем для хранения информации, хотя если речь идет в основном о временном хранении медиафайлов при обработке, жаловаться не стоит. Второй нюанс: в случае, если нет платы ASUS ROG – возникает необходимость приобретения качественного программного обеспечения для создания RAMDisk, Третья особенность: энергозависимость — пусть каждый раз при выходе из Windows сохраняется образ RAMDisk, однако в случае внезапного пропадания питания — потери данных не избежать.

Спасибо за внимание и оставайтесь с Kingston на Гиктаймс!

Даже из понурой ситуации с железом найдётся выход — от «голосования кошельком» до технического прогресса, который даёт пощёчины сытым физиономиям маркетологов и заставляет их выпускать то, что жаждут покупатели. Всё будет классно, мы обещаем!
А ещё мы чертовски, невероятно рады общаться с единомышленниками в нашем блоге и намерены дарить качественное железо Kingston нашим подписчикам. В конце июня мы вручим 11 подписчикам нашего блога 1 SSD-накопитель HyperX Savage на 120GB и 10 флешек DTSE9 на 8GB, и на этом не остановимся (между первой и второй…), а поднимем градус крутизны подарочного железа, чтобы читатели собственноручно убедились, чем Kingston хорош.

А кроме того, мы подготовили для всех читателей нашего блога — специальный промокод geekpromo на приобретение памяти HyperX Savage DDR4 любой частоты и объема в сети Юлмарт со скидкой 10%. Вы можете воспользоваться промокодом до 24 июля 2016 года, делитесь информацией с друзьями!

Для получения дополнительной информации о продукции Kingston и HyperX обращайтесь на официальный сайт компании. В выборе своего комплекта HyperX поможет страничка с наглядным пособием.
Поделиться с друзьями
-->

Комментарии (94)


  1. nerudo
    23.06.2016 20:03
    +1

    Ram disk в чистом виде — штука довольно бессмысленная. Разве что %TEMP% туда положить для программ которые иначе не умеют. Нужна поддержка на уровне ОС — чтобы определенный каталог отображался на RAM и работал из памяти в фоне реплицируясь на энергонезависимый носитель. Типа кэша, но с явным указанием с каким путем мы работает и сколько памяти предоставляем. Вот это действительно могло бы быть эффективным.


    1. lorc
      23.06.2016 20:30
      +3

      Ну все современные ОС и так используют всю свободную память под дисковый кеш, поэтому по хорошему ничего больше делать не нужно.
      Меня в линуксе иногда подбешивает, когда cp отрабатывает мгновенно, а потом umount тупит несколько минут, потому что подключенная флешка не такая уж и быстрая, на самом деле.


      1. nerudo
        23.06.2016 20:35

        Вроде как да, но все это происходит внутри абсолютно черного ящика живущего по своим правилам ;)
        Как раз сегодня наблюдал потрясающую ситуацию копируя огромный файл на ме-е-е-дленную флэшку — весь файл сожрался в память, система стала как-то странно подтупливать, а часть программ вываливаться сообщая о недостатке памяти (хотя вроде свободной еще было куча). Win7 x64. Нафиг надо такое щастье, честно говоря…


        1. nerudo
          23.06.2016 20:40

          О, кстати. Ровно на DTSE9 вышеупомянутую и копировал ;)


        1. lorc
          23.06.2016 20:43

          А вот кстати такого не должно было произойти по вине файлового кеша. Потому что файловый кеш — он использует только свободную память. Он никогда (ну ок, почти никогда) не будет выдавливать занятые страницы памяти в своп.
          Поэтому причина скорее всего в чем-то другом.


          1. nerudo
            23.06.2016 20:53

            Вот и я так думал(ю). Может дисковую систему как-то переклинило. Но копирование закончилось — рассосалось. Я ж говорю — черный ящик


          1. black_semargl
            24.06.2016 10:39

            Занятые-то может и не вытолкнет, но не дать брать новые (в том числе и для возвращаемого из свопа) вполне может.


            1. lorc
              24.06.2016 15:31

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


          1. Alexeyslav
            24.06.2016 14:27

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


            1. lorc
              24.06.2016 15:29

              Неа, если приложение просит выделить большой кусок RAM, то грязные страницы дискового кеша в срочном порядке сбрасываются на диск, а чистые — просто дропаются и отдаются приложению. Очень в редких случаях приложение получит отказ.
              Точнее — даже не так. Запрос на память удовлетворяется мгновенно. Другое дело, что никакие страницы пока не выделяются. Вот когда приложение начнет писать в выделенную память — тогда ядро начнет искать свободные страницы, дропать кеши, выдавливать старые страницы в своп и т.д. Во всяком случае так работает ядро линукса.
              Винда вроде более консервативна в этом смысле.
              Правда, при таком подходе, как в линуксе, к зажравшемуся процессу может прийти OOM killer, но это уже другая историяю…


              1. black_semargl
                27.06.2016 12:06

                Так именно со скоростью сброса на диск и проблема.
                Прога открыла файл на запись, и залила в него гигабайт, который весь завис в кеше и неторопливо пишется на физический носитель.
                А что страницы можно сбросить в своп на более быстрый диск вместо записи на медленный — система может и не «догадаться»


        1. brzsmg
          24.06.2016 11:19

          Вот же

          отключалка


          1. nerudo
            24.06.2016 12:41

            Для флэшки вставленной первый и единственный раз в жизни слишком сложно — надо специально озаботиться…


      1. ValdikSS
        24.06.2016 08:39
        +1

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

        cat /etc/sysctl.d/60-dirty.conf
        
        vm.dirty_bytes = 66554432
        vm.dirty_background_bytes = 33554432
        


        1. lorc
          24.06.2016 15:30

          Да, можно. Я имел в виду «подбешивает» скорее в кавычках. В этом нет ничего плохого, и во многих случаях наоборот, только повышает отзывчивость системы. Поэтому, я бы лучше не стал крутить эти настройки лишний раз.


    1. Sadler
      23.06.2016 20:34

      Необязательно на уровне ОС, можно просто рамдиск железный сделать: слоты под плашки памяти + PCIE-контроллер, прикидывающийся винтом. Куда интереснее, чем городить софтовую поддержку под конкретную ОС.


      1. Sheti
        24.06.2016 04:34
        -1

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


        1. Sadler
          24.06.2016 06:04
          -1

          Я в курсе. Толку с тех штук, если они не умеют тот же DDR3 и не используют возросшую пропускную способность современной шины?


    1. Redy
      23.06.2016 22:43

      Кроме %TEMP% можно положить pagefile.sys, профили браузеров и портативные версии программ. Всё вместе даёт очень существенную прибавку к комфорту.


      1. SfairatOd
        24.06.2016 00:02
        +5

        Простите, может, я чего-то не понимаю, но каждый раз, когда я вижу подобный совет по использованию рамдиска, я долго думаю «Зачем?», и всё никак не могу найти ответа. Не подскажете?


        1. Redy
          24.06.2016 00:53
          -2

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


          1. zapimir
            24.06.2016 03:45
            +3

            Зачем файл подкачки на ramdisk при таком количестве памяти его спокойно можно отключить.


            1. AxisPod
              24.06.2016 05:03

              Некоторый не очень свежий софт явно просит свап файл. С другой стороны этот софт отлично летает и с свапом на диске.


              1. potan
                24.06.2016 12:37
                +1

                При таком объеме памяти своп все равно не будет использоваться и где лежит его образ совершенно не важно.


                1. Isildur
                  24.06.2016 12:46

                  А вот и нет, довольно часто он таки используется системой даже при 80% свободной оперативной памяти.
                  Ну и допустим фотошоп самостоятельно туда пишет, не знаю как они с системой договариваются…


                  1. Lisio
                    25.06.2016 05:28

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


            1. Bismuth208
              24.06.2016 09:09

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

              Так что отключить свап не всегда возможно. Все еще есть софт приводящий к фатальным последствиям при его отсутствии.


            1. ClearAirTurbulence
              24.06.2016 10:49

              Windows не любит жить без файла подкачки, независимо от количества памяти.


              1. Digriz
                24.06.2016 13:10
                +1

                Файл подкачки лучше никогда на ramdisk не выносить.
                Чревато BSOD-ами при перезагрузке — наткнулся уже на эти грабли.

                Сам пользуюсь QSoft RAMDIsk Enterprise (при русскоязычной локали она, как понимаю, бесплатна).
                Область применения:
                1. %temp%
                2. Скачанные файлы (95%из них обычно нужны на «раз запустить»)
                3. Кэш браузера.
                4. Там же можно быстро перекомпилировать ISO-шники, модифицировать wim-ы и т.п.

                Нагрузка на физические диски в итоге — меньше, а скорость — выше.


                1. custos
                  24.06.2016 22:25

                  %TEMP% в RAMDisk тоже может быть проблемой. Например, если установщик намерен продолжить установку после перезагрузки. Софт RAMDisk-а не всегда успевает вернуть данные на место.


                  1. Digriz
                    25.06.2016 15:04

                    Если честно — за 5+ лет использования RAM-диска ни разу не столкнулся с такой ситуацией. Даже если %temp% не находится в RAM — при перезагрузке временные файлы могут быть успешно почищены каким-нибудь EraseTemp или вообще скриптом. Установщики обычно пишут всё критичное в %programdata% или напрямую в каталог, куда устанавливается.


          1. zirix
            24.06.2016 12:11
            +1

            pagefile.sys это расширение объема оперативки. Когда оперативки нехватает система в файл данные кидает. А вы эти данные обратно в оперативку…

            Немного логичнее отключит своп и удалить этот файл… Если у вас много оперативки…


            1. ClearAirTurbulence
              24.06.2016 12:35

              Если вы CTO, то неплохо бы иметь базовые знания о том, как работает pagefile в windows, пержде чем говорить об этом.
              http://www.howtogeek.com/199990/should-i-disable-the-page-file-if-my-computer-has-a-lot-of-ram/
              http://lifehacker.com/5426041/understanding-the-windows-pagefile-and-why-you-shouldnt-disable-it


              1. zirix
                24.06.2016 15:15

                Спасибо за статьи, но я знаю как работает своп.


              1. maa_boo
                27.06.2016 15:16

                Я года два просидел без свопа. На 16 гигабайтах памяти. Что я делал не так?


        1. black_semargl
          24.06.2016 10:42

          Потому что дурные браузеры типа ИЕ, при скачивании например странички из инета сначала сохраняют её на диск и только потом отображают.


      1. GoodOKubani
        24.06.2016 00:02

        Использовал RAMDisk для работы в портативном фотошопе.
        Прибавка в скорости очень существенная


      1. Nipheris
        24.06.2016 12:11

        Создавать RAM-диск, чтобы положить туда pagefile? Нет, к такому меня не готовили.

        Вот данные некоторых программ, которые не жалко терять — другое дело.


        1. vorphalack
          24.06.2016 16:18

          самое смешное что в PAE-шные времена такое вполне себе бывало — и вполне работало


      1. MasMaX
        27.06.2016 10:46

        При таких объемах ОЗУ pagefile вообще не нужен. Точнее даже вред будет от него, если система внезапно решит 128Гб ОЗУ на диск скинуть…


    1. asvishnyakov
      24.06.2016 00:26
      +1

      Торренты. Ну почему никто не думает о торрентах?


      1. tUUtiKKi13
        24.06.2016 10:27

        В uTorrent'e можно вручную указать размер оперативки под кэш. 128 мегабайт под дисковый кэш вполне хватает.


    1. zapimir
      24.06.2016 03:54

      Уже больше года юзаю Primo Ramdisk там куча опций по автосохранению содержимого, можно к примеру настроить (по времени, в реальном времени и т.п.)


    1. evilrussian
      24.06.2016 08:04

      Подключили в tmpfs папку data у Couchbase, т.к. диски не справлялись с нагрузкой на раздел, когда Couchbase данные по бакетам и реплики на диск писал


    1. Lindon_cano
      24.06.2016 12:11

      > Разве что %TEMP% туда положить для программ которые иначе не умеют.

      Ну я вот если бы обнаружил на своем ноуте 128 гигов оперативы, да еще и работающие(не смотря на ограничение материнки в 8 гигов) положил бы туда директорию в которой у меня OpenWRT собирается. Вы представляете себе разницу в сборке когда у тебя все исходники лежат в оперативе по сравнению с хардом? Помню во времена когда сидел на Gentoo монтирование директории в которой все собирается в оперативу вызывало дикий восторг по скорости(пока как-то ОпенОффис, Либры тогда еще не было, не влез и не упал вызвав у меня огорчение). Сейчас компилю только свой сборочку OpenWRT под Beeline SmartBox, были бы 128 гигов рама собирал бы в раме.


      1. nerudo
        24.06.2016 12:43

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


      1. Einherjar
        25.06.2016 20:01

        Вы представляете себе разницу в сборке когда у тебя все исходники лежат в оперативе по сравнению с хардом?

        По сравнению с ssd разницы на глаз не видно — все в CPU упирается.


    1. u010602
      24.06.2016 16:12

      Полно софта который это уже умеет делать, есть например PrimoCache и SuperCache, они кешируют наиболее востребованые ячейки в озу мимо файловой системы, т.е. им не важны файлы. Кеши на основе файлов не могут загнать в кеш файл подкачки или другой крупный файл, например диск виртуалки. А так-же системные области диска.

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

      Я лично использую PrimoCache т.к. он свежее, кеширую диск где живут виртуалки. 4гб кеша достаточно что-бы диск не был узким местом при сборке и отладке проекта.


    1. shteyner
      24.06.2016 17:06

      С ходу могу дать парочку вариантов применения:
      1) Виртуальные машины. В такой среде можно будет с ними очень быстро работать. Может быть полезно, если все данные будут на рам диске. К примеру, нужно развернуть 10 небольших виртуалок с базами из мастер образа. Там отлично будут себя чувствовать любые базы.
      2) Виртуалка или portable программа, запущенная с рам диска, после его отключения не будет оставлять после себя следов. Не нужно заморачиваться с форматированием диска. Да, такой комп намного сложнее изъять если что-то пойдет не так. Его довольно сложно перевезти куда-либо, не потеряв данные. Для кого-то это может стать полезно.


      1. Lindon_cano
        24.06.2016 18:20

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


  1. maaGames
    23.06.2016 20:12

    Как-то совсем не впечатляют результаты, для такого супер-компьютера. Подозреваю, что RAM-диски не самые эффективные или тайминги слишком не оптимальные. На моём морально устаревшем компьютере следующие результаты (картинку вставить не могу, извините):

    SeqQ32T1 | 6423 | 6154
    4K!32T1 | 1067 | 903
    Seq | 7773 | 7042
    4K | 1208 | 1004

    i7-4770, ASRock Z87Pro3, DDR3 798MHz 9-9-9-24
    RAM-диск создан бесплатной программой, идущей на диске к материнке (из комплекта A-tuning). Оперативки у меня поменьше, поэтому диск всего 3 гигабайта, но проверял так же на файле в 1 гигабайт.


  1. Bhudh
    23.06.2016 20:37

    | что делать если у вас в компьютере 128 гигабайт оперативной памяти
    Открывать промо-ссылку в конце статьи. Такое ощущение, что это её рекомендуемые системные требования (я, конечно, многое понял, когда заглянул в исходный код; особенно понял, чего делать не следует…).


  1. black_semargl
    23.06.2016 21:09
    -5

    А у меня нет винды…

    tmpfs /tmp tmpfs defaults 0 0
    tmpfs /var/tmp tmpfs defaults 0 0
    tmpfs /home/semargl/.cache/mozilla/firefox tmpfs defaults 0 0
    tmpfs /home/semargl/.cache/thunderbird tmpfs defaults 0 0


    1. 0xd34df00d
      24.06.2016 02:16

      Да ну.

      tmpfs /home/d34df00d/Programming/leechcraft/build/kdevelop tmpfs size=3G,user,exec 0 0
      tmpfs /home/d34df00d/Programming/leechcraft/build/clang tmpfs size=3G,user,exec 0 0
      tmpfs /home/d34df00d/Programming/leechcraft/build/static tmpfs size=3G,user,exec 0 0
      tmpfs /home/d34df00d/Programming/laretz/build tmpfs size=3G,user,exec 0 0
      tmpfs /home/d34df00d/Programming/Optics/cpp/release/data tmpfs size=3G,user,exec 0 0
      tmpfs /var/tmp/portage tmpfs size=10G 0 0


  1. iliabvf
    23.06.2016 21:46
    +1

    С таким объемом можно уже всю ОС загружать в память, включая рабочие программы.


    1. MiXaiL27
      24.06.2016 09:01
      +3

      Я слышал эту фразу 10 с лишним лет назад по отношению к XP, когда стали появляться первый двухгиговые плашки.


      1. iliabvf
        24.06.2016 09:50

        Кстати да, лично я давно мечтаю. Есть и успешные примеры с Windows 7: https://www.youtube.com/watch?v=Va3PmHZwUtQ


  1. wOvAN
    23.06.2016 22:05

    В качестве RAM диска могу посоветовать SoftPerfect RAM Disk https://www.softperfect.com/products/ramdisk/
    Но, к сожалению использовать такой и подобные разделы например как кеш например для StorageSpaces, чтобы ускорить виртуалки не выходит.


  1. Hellsy22
    23.06.2016 22:32

    Я пробовал разные программы для RAM-дисков, но остановился в итоге на ImDisk Virtual Disk Driver. Он хорош своей универсальностью — позволяет создавать RAM-диски, диски с файлом-образом, монтировать .iso и т.д.

    Но он немного хардкорен в плане настроек. Вот как выглядит батник, запускающийся при старте системы (линуксоиды оценят):

    imdisk -a -s 256M -m M: -p "/fs:ntfs /v:RAMDISK /A:1024 /q /c /y" -o awe
    mkdir M:\IE
    mkdir «M:\IE\Temporary Internet Files»

    robocopy C:\Customize\Chrome M:\Chrome /MIR


    Насчет того, «зачем все это надо, если система сама все кеширует» — запись все равно производится и забивает очередь запросов к HDD. Но после перехода на SSD я уже не ощущаю особых преимуществ.


    1. Redy
      23.06.2016 22:56

      Благодаря ImDisk приучился делать бекапы дважды в сутки — он у меня периодически портил записанные на него файлы, а примерно раз в пару недель его RAM-диск, на котором были все папки %TEMP%, отваливался, что намертво вешало win10. Думал проблемы с оперативкой, но перешёл на бесплатный же SoftPerfect RAM Disk и всё стало ок, хоть поначалу богатства настроек ImDisk и не хватало.
      А на SSD, после долгого использования RAM-диска на 8 Гб, даже переходить не стал — поставил, в работе разницы не заметил и подарил тому, кому он нужнее.


  1. wOvAN
    23.06.2016 23:15

    А ещё раньше делали такие штуки Gigabyte i-RAM https://www.youtube.com/watch?v=AM9qUnuxdbk


  1. Insanie
    24.06.2016 00:02
    +3

    Когда увидел тесты на играх, подумал, что сравнивается время загрузки, но все оказалось куда интереснее — зачем сравнивать фпс при смене хранилища данных?=) Можно было сменить монитор и посмотреть, стал ли ютуб быстрее работать.


    1. LifeKILLED
      24.06.2016 17:44

      Игры сейчас всё грузят на лету. А во время загрузки игры — только самое основное.


      1. AlexanderG
        24.06.2016 19:11

        Стриминг в этом случае все равно асинхронный.


  1. diov
    24.06.2016 00:02

    Я хочу поделиться своим опытом использования RAM-дисков.
    Использую SoftPerfect RAM Disk уже больше года.
    Просто копировать фильмы на RAM-диск — это неинтересно.
    Полезнее изменить переменные среды окружения, чтобы перенаправить каталоги Windows\TEMP и AppData\...\Local\...\Temp на RAM диск.
    Это даст ощутимый прирост производительности и скорости работы некоторых программ, типа архиваторов или Photoshop.
    Насколько быстрее стало в цифрах — не знаю, не мерял. Но «ощутимо», раз я заметил )


    1. edd_k
      24.06.2016 01:31
      +1

      А что фотошоп в системном Temp-е забыл? Он вроде свои темпы кидает либо прямо в корень scratch disk-а (современные версии), либо создает в корне папку для себя. Соответственно, направлять его на рам-диск следует непосредственно в его (фотошопа) настройках.


  1. eGor007
    24.06.2016 00:24
    -1

    Автор, ты лучше напиши как танки запускать из ОЗУ и что это поднимает FPS в игре.
    вот ссыль: https://habrahabr.ru/post/131043/


  1. NET_KOT
    24.06.2016 02:12

    Использую RAMDisk Enterprise для кэша браузера. SSD хоть и быстрый, но с рам-диском обращение всё же происходит заметно быстрее.


    1. DjOnline
      24.06.2016 10:50

      Кстати да, по тестам это самый быстрый из существующих, раньше назывался RAMDriv-qsoft.


  1. Sleepwalker_ua
    24.06.2016 02:24

    Одно время пользовался рам-диском для майнкрафта, из 6гб оперативы 2 выделил под директорию игры (там была куча модов и огромная открытая карта где-то 15х8 километров, ну и так, плюшки всякие). И, честно сказать. забыл про 80% лагов игры.
    Когда обзавелся ссдшником (правда. совсем недорогим и небольшим, 120гб всего. кингстоновский трехсотой серии), «переехал» майнкрафтом на него… и понял, что все-таки разница есть — ССД работает значительно шустрее, чем жестак, но немного (в контексте игры) проигрывает рам-диску, особенно если ССДшник на момент игры подгружался еще обновами винды или какими-то другими задачами.
    Жаль, оперативка дороговата. Я бы, наверное, с удовольствием приобрел бы супербыстрый блок энергозависимой памяти гигов эдак на 64-128 за вменяемые деньги (не дороже бакса-двух за гигабайт), пусть даже где-то на уровне ддр3-1333 или даже ддр2-1066, для кэша, тяжелых программ и всяких там рабочих файликов. Ну и играм там место выделить можно.


    1. shteyner
      24.06.2016 16:55

      Ну, по последней вашей фразе: можно купить 2бакса за гиг на ebay б/у память. Чаще, конечно, буферизованная, причем она даже дешевле)
      Да, конечно, в обычные материнки много модулей не поставишь, а за такие деньги можно 8гб только взять. Так что нужно смотреть в сторону серваков, если нужно сделать большущий RAM диск.


      1. Sleepwalker_ua
        24.06.2016 18:25

        Да, основной вопрос материнки обычно. Я бы допустим готов 100 баксов выложить только на оперативу, но даже на б\у больше 24гб собрать врядли получится. В самом-самом лучшем случае — 32. В принципе уже интересно, оставить гигов 10 под оперативу и оставшиеся — на рамдиск. Но маловатый объем, конечно, 20Гб это так… пара программок или одна не самая современная (читай жирная) игруха.


        1. shteyner
          24.06.2016 19:08

          Не сочти за рекламу но вот вариант:
          http://www.ebay.com/itm/HP-DL385-G7-2x-2-20GHz-12C-AMD-6174-192GB-P410i-256MB-BBWC-No-2-5-HDD-/182156601400?hash=item2a69612838
          Если сразу столько памяти не нужно — можно купить только корпус с материнкой и процами. Потом доставлять памяти сколько нужно.
          Но, само собой, это не совсем домашний вариант. Кстати, советую этот магаз, сам там иногда закупаюсь.


          1. Sleepwalker_ua
            24.06.2016 20:54

            за магазин спасибо) С ибеем работаю редко, но, что называется, метко.

            Да, такой вариантик совсем недомашний… Я бы хотел материнку в обычном форм-факторе АТХ с поддержкой 64-128Гб оперативки, на базе интел, и занедорого.
            Но пока что, как показывает мне я.маркет, только материнка новая будет около 500 у.е. стоить. + на сотню-две оперативки + процессор хотя бы уровня свежего i3-i5… И уже получается не очень веселая цифра в тысячу у.е. +- сотня, на апгрейд…
            Жаль. что моя теперешняя материнка всего 32гб поддерживает и модули ддр2 8гб имеют нецензурную цену…


            1. shteyner
              25.06.2016 00:16

              Да, такой вариантик совсем недомашний… Я бы хотел материнку в обычном форм-факторе АТХ с поддержкой 64-128Гб оперативки, на базе интел, и занедорого.

              Ну, i5/i7 последнего поколения поддерживают только 64гб, старых меньше.
              Так что тут ничего не попишешь. Если нужно больше 100гб оперативки — 2х процессорные xeon. Есть серваки в формате миди тауер приблизительно. Можно такие взять. Новое брать слишком дорого, так что б/у с ebay.


  1. AxisPod
    24.06.2016 06:49

    Одно не понимаю, зачем нужна такая дорогая память? Можно ведь и дешевле себе подобное удовольствие устроить на 30-40%. Да и пользуюсь одной софтиной, пробовал игрушки с 16гб рамдрайва запускать, игрушка вмещалась в притык. Проблема в том, что в самой игре разница между SSD и рамдрайв была настолько мизерной, что смысла и нет. А вот запуск системы, подготовка к игре отжирает довольно знатно времени (в случае если содержимое диска будет в образ скидываться). В итоге я раздумал брать еще памяти, т.к. не было смысла, вообще и рамдрайв используется только для папки темп, что действительно имеет смысл.


  1. asgard88
    24.06.2016 07:54

    Использую QSoft RAMDrive Enterprise, диск создается на уровне драйвера, без доп софта прямо в диспетчере устройство конфигурируется. очень удобная штука, тоже перенес на него временные папки и профиль браузера


  1. OnelaW
    24.06.2016 09:10

    Во времена моей прыщавой молодости, такие решения использовались для запуска множества копий одной программы (в банках было популярно во времена вин 98). Запуск всякого консумерского непотребства это уже за гранью.


  1. Isildur
    24.06.2016 12:11

    Довольно давно использую Primo Ramdisk и на ноутбуках и на десктопах, из плюсов — умеет грузить заранее созданный образ диска при загрузке системы, при этом грузится достаточно рано, чтоб на него можно было забросить и файл подкачки и системный и пользовательский темпы
    и умеет работать в компактном режиме, когда память занята настолько, насколько занят диск.
    Результаты с Surface Book i7-6600U
    — Sequential Read (Q= 32,T= 1): 4017.676 MB/s
    Sequential Write (Q= 32,T= 1): 4779.056 MB/s
    Random Read 4KiB (Q= 32,T= 1): 737.188 MB/s [179977.5 IOPS]
    Random Write 4KiB (Q= 32,T= 1): 672.349 MB/s [164147.7 IOPS]
    Sequential Read (T= 1): 6969.002 MB/s
    Sequential Write (T= 1): 7791.929 MB/s
    Random Read 4KiB (Q= 1,T= 1): 746.423 MB/s [182232.2 IOPS]
    Random Write 4KiB (Q= 1,T= 1): 701.395 MB/s [171239.0 IOPS]


  1. ilyaska
    24.06.2016 12:11

    Имеет ли смысл хранить кеш (например, кеш видео редактора) на быстрой юсб 3 флешке? Или у неё низкое случайное чтение?


    1. NET_KOT
      24.06.2016 13:48

      Самая быстрая флешка медленнее самого медленного SSD. И уж точно медленнее RAM-диска. Но время доступа у флешки всяко меньше, чем у обычных жестких дисков. Если вам нужно дешевое решение, можно использовать флешку. Но лучше потратиться и купить SSD под системный диск.


      1. ilyaska
        24.06.2016 15:03

        С ноутбуком или макмини это сложнее. Про ссд всё понятно, но тогда придётся городить бороду проводов — ссд в юсб и прочее. Интересно именно как помощь HDD — насколько будет быстрее и насколько медленнее ссд.


        1. Lindon_cano
          25.06.2016 00:57

          > С ноутбуком или макмини это сложнее.

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


          1. ilyaska
            25.06.2016 01:26

            Согласен, но это не ответ на мой вопрос.


  1. Eric50
    24.06.2016 12:11

    Юзаю soft perfect ram disk, на windows 7. Создал диск на 8 гигов.
    Там лежат %temp% и кэши браузеров. А так же временные логи и объектные файлы, для компиляции.
    Неплохо ускорился сёрфинг по интернету, ускорились архиваторы, и зверски разогнался компилятор C++. Тот же boost вместо двух часов, компилируется десяток минут.
    К сожалению, прога подглючивает, если надо скинуть на жёсткий диск в образ файла. В какой-то момент, в файле образа, появляется ошибка и его нельзя открыть.
    Если бы не этот недостаток, то рабочий проект, перетащил бы на ramdisk и там работал бы.
    А так, юзаю, исключительно как временный диск, без бекапов. При перезагрузке очищаеться.


  1. VadimVerenitsyn
    24.06.2016 12:11

    А вот не Мак'ах кто нибудь пробовал? Каким софтом можно воспользоваться и есть ли в этом толк?


    1. Lindon_cano
      24.06.2016 12:18

      Беглый гуглеж дает ответ на ваш вопрос.

      hdid -nomount ram://will attach a ram disk that can be mounted and used after being format-
      ted with a newfs utility or Disk Utility.app. A sector is 512 bytes.

      A small shell script to create and mount a ram disk:

      #!/bin/sh

      NUMSECTORS=128000
      mydev=`hdid -nomount ram://$NUMSECTORS`
      newfs_hfs $mydev
      mkdir /tmp/mymount
      mount -t hfs $mydev /tmp/mymount


  1. Vinchi
    24.06.2016 15:28

    Насколько юзабелен этот софт для корпоративного применения? — при старте системы до старта MSSQL монтировать RAM disk, чтобы сиквел располагал tempdb в памяти. После перезапуска ОС или службы сиквела он все равно заполняется новыми данными и его потеря при отказах ничем не грозит.


  1. LifeKILLED
    24.06.2016 17:38

    У меня всего 4 гигабайта, но и мне прелести RAMDisk пригодились: надо было записать небольшое игровое видео в режиме lossless (чтобы не занимать процессор кодированием… процессор тоже древний, FPS сильно страдал), но при этом фризило во времени записи на диск (HDD). Пары гигов RAMDisk на этот научный эксперимент хватило вполне :)


  1. wmtoolsnet
    24.06.2016 21:18

    На практике это ускорение видно только на попугаях.
    В реальности, даже на SSD с огромной разницей в скоростях (у меня Crucial M550 — 560Mb \ 500Mb & Samsung 950 Pro PCI — 2500 Mb \ 1400 Mb) визуальная разница в работе не видна. Винда с обеих носителей грузится примерно 10 сек (на минуточку, Skylake + 8 Gb DDR4). Линукс — тоже. Более скажу, с NVME даже чуть дольше, не могу понять почему, но вижу что на этапе подгрузки initrd активно юзается жесткий диск.
    Далее, экспериментировал с MySQL, перенося таблицы в tmpfs, и делая большие выборки (таблица где-то на 2.5 мл записей). Что на SSD, что в памяти — время выборки одно и то же.

    За рамдиск вообще молчу. Ну да, скорость выше. Теперь ваш Google Chrome с жирным кешем будет открываться не за 3 секунды, а за 1. Часто открываете Google Chrome ?)
    ИМХО, бутылочное горлышко в другом месте.


  1. YurySS
    27.06.2016 15:05

    Кто-нибудь знает бесплатный или недорогой софт для ram-disk, который позволяет использовать недоступный для 32-битной системы объём RAM (кроме SuperSpeed Ramdisk, который недорогим не считаю)?


  1. mikhailt
    27.06.2016 15:06

    Постоянно использую SoftPerfect RAM Disk
    Держу там темп и своп.
    Windows 7 x64


  1. Bergtagen
    27.06.2016 15:11

    Два года офисный комп работал с семёркой, полностью живущей в RAM. Делал по этой инструкции: geektimes.ru/post/185172
    Каких-либо аварий не припомню, 28 ГБ для винды вполне хватало (всего было 32 ГБ). Удобно. Поломал систему — рестарт и едем дальше :)


  1. saboteur_kiev
    03.07.2016 12:01

    «Стоимость RAMDisk не относится к сильным сторонам «проекта». В пересчете на рубль за гигабайт SSD накопитель будет намного выгоднее, чем колоссальный объем оперативной памяти – SSD Kingston KC400 емкостью 128 Gb стоит от 3800 рублей, комплект памяти 128 Gb обойдется в 83 000 рублей.»

    Не очень понятно, зачем для рам диска нужно сразу аж 128 gb за тонны денег??
    Я много лет пользуюсь SoftPerfect, рам диск у меня всего 640 мегабайт, и там отлично помещается весь браузер с профайлом и FAR с конэму, что позволяет мне закрывать и открывать браузер практически мгновенно (не люблю держать открытым браузер с сотнями вкладок, на которых двигаются какие-то баннеры, гифки и нагружают мне систему, когда я не хочу)
    А серфинг, даже если и не намного быстрее (не забываем, что ssd может и медленнее рам, но винда же буферизирует/кешируют операции), но рамдиск однозначно экономит циклы записи на ssd.

    Что же касается тестирования скорости — многие рамдиски, в том числе и SoftPerfect могут работать в двух режимах — с полной эмуляцией API диска и без нее. В первом случае они будут видны и для disk manager и для многих утилит тестирования, во втором случае они будут не видны, но скорость чтения/записи возрастает раза в 2-3.