За последние 10 лет производительность процессоров увеличилась в 10 раз, оперативной памяти – в 8 раз, сетей – в 100 раз, внутренней шины вычислительных систем – в 20 раз, а накопителей на жестких дисках – всего в 1,5 раза. Таким образом, ускорение подсистемы хранения серверов сильно отстает от роста производительности центрального процессора, оперативной памяти, внутренней шины и пропускной способности сетей.
Недостаточная производительность NAND, SSD или традиционных жестких дисков (HDD) приводит к увеличению времени отклика приложений. Решение – использование Persistent Memory (PMEM). Это новый вид памяти, который покрывает разрыв между оперативной памятью (RAM) и дисковой памятью (Flash/SSD) с точки зрения быстродействия и энергонезависимости.
Иерархия хранения данных
Ближайший к вычислительным ядрам элемент процессора в иерархии памяти — это регистры CPU, они имеют самую низкую задержку среди всех хранилищ в системе. Однако объем этого типа хранилища очень маленький, и раньше данные приходилось копировать с кэш-памяти, куда они, в свою очередь, попадали из основной памяти (DRAM), а туда — из дискового хранилища. Вся эта процедура вызывала огромное замедление доступа вычислительных процессоров к данным, а, следовательно, значительное снижение производительности. С другой стороны, иерархия памяти делает возможным доступ к большим объемам данных и их обработку высокопроизводительными вычислительными устройствами.
Однако на рынке уже появился совершенно новый тип хранилища, который невольно заставляет разработчика, пользователя и администратора переосмыслить, как и где они хранят данные — это Persistent Memory.
Persistent Memory, которая также называется энергонезависимой памятью (NVM) или памятью класса систем хранения (SCM), обеспечивает мостик в иерархии хранения данных, заполняющий разрыв в производительности и емкости.
Иерархия хранения данных с Persistent Memory
Технология Persistent Memory по производительности гораздо ближе к DRAM, чем к NAND, что позволяет процессору напрямую копировать данные из ее хранилища в свою кэш-память.
С Persistent Memory приложения получают новый уровень для размещения данных, дополнительно к DRAM и SSD/HDD-уровням. Вместе с тем Persistent Memory предлагает большую емкость, чем DRAM, и значительно большую производительность, чем SSD/HDD. Среди возможных сценариев построения систем, очевидно, будут и такие, которые вообще не станут использовать DRAM или SSD/HDD- уровни хранения. Программы могут получать доступ к Persistent Memory как к обычной DRAM в режиме Memory или как к системе хранения данных в режиме AppDirect. Также доступ может обеспечиваться в так называемом режиме Mixed, в котором часть Persistent Memory функционирует в одном, а часть — в другом режиме.
Persistent Memory в режиме AppDirect — это хранилище данных, которое не теряет их, если исчезает питание. Наиболее распространенный пример подобного хранилища — флеш-память. Она доступна много лет, но ее производительность гораздо хуже, чем у обычной DRAM и Persistent Memory.
Несмотря на то, что системы хранения данных SSD/Flash предлагают значительное увеличение производительности по сравнению с подобными системами на базе HDD, они все еще гораздо медленнее, чем память типа DRAM. Это различие настолько велико, что для достижения высокой скорости передачи данных в DRAM и дальше к процессору в некоторых системах обработки данных приходится строить дисковые хранилища на сотни или даже тысячи дисковых накопителей, чтобы их интегральная производительность была достаточной для обеспечения процессора потоком данных, который требуют приложения для достижения ожидаемой производительности.
2 в 1: свойства памяти и классического дискового хранилища
Persistent Memory от HPE — это не только оригинальное архитектурное решение (размещение энергонезависимого хранилища данных на шине памяти).
Благодаря энергонезависимости больше не нужно копировать данные в память с периферийных устройств, например, с диска. Больше не нужно кэшировать данные в памяти ради того, чтобы сохранить их на диске, — вместо этого можно одновременно хранить данные и получать прямой доступ к данным в Persistent Memory для их дальнейшей обработки в процессоре.
Скоростные характеристики PM приближены к характеристикам традиционной энергозависимой DRAM и обеспечивают постоянный доступ к данным для высокопроизводительных вычислений, аналитики больших данных и передачи данных даже в случае исчезновения питания системы или ее отключения.
Persistent Memory — это новое интегрированное решение HPE для хранения данных, работающее на скорости памяти с емкостью в терабайт. Это решение идеально подходит для преодоления узких мест работы в приложениях и впечатляющего ускорения работы сервера с использованием компонентов в центрах обработки данных.
«Persistent Memory — это вестник новой категории сверхбыстрых хранилищ, которые радикально меняют подход к нагрузкам на серверы, — настолько быстро, что программное обеспечение становится узким местом», — рассказал Антон Гаврилюк, один из разработчиков HPE Persistent Memory.
Именно поэтому для достижения лучших результатов компания HPE предлагает комплексный подход, проведение performance analysis, который через анализ текущей инфраструктуры заказчика позволит спрогнозировать ожидаемый прирост производительности при использовании HPE Persistent Memory. Или же, в случае выявления нецелесообразности использования Persistent Memory, эксперт предоставит план действий по решению существующих проблем с производительностью.
Благодаря использованию Persistent Memory CPU работают совсем по-другому. Это дает возможность не просто повысить производительность, но и позволяет существенно уменьшить стоимость владения благодаря сокращению ресурсов CPU, а также стоимости дорогих лицензий на программное обеспечение.
PM — это устройство, поддерживающее побайтную адресацию и прямой доступ, доступ к данным в ней может осуществляться с помощью CPU-инструкций (load/store/flush). Это гораздо эффективнее, чем семантика ввода-вывода с блочных устройств, где блоки данных являются минимальными адресными объектами. Кроме того, поскольку процессор выполняет загрузку/хранение памяти, он не прерывается обычной обработкой ввода-вывода (например, прерываниями и переключениями контекста). В конце концов, вы платите за процессор, покупаете серверы или арендуете экземпляры у поставщика облачных услуг — почему бы не использовать CPU наиболее эффективно?
HPE Persistent Memory приближает массивные наборы данных к центральному процессору для ускорения процесса обработки и анализа. Это также повышает устойчивость центров обработки данных, сокращая время перезапуска базы данных с часов до минут или даже секунд.
Статья, созданная ITvibes.
PR-материал