Переосмислення політик ієрархії пам’яті в системах DRAM+HBM
Анотація
Ефективне управління різнорідними системами пам’яті, що містять пам’ять із високою пропускною здатністю (HBM), є критично важливим для загальної продуктивності. Традиційні підходи часто припускають, що динамічна пам’ять з довільним доступом (DRAM) є найшвидшим рівнем, що може не справджуватися в конфігураціях з HBM. Метою цього дослідження було оцінювання впливу на продуктивність переналаштування політики ієрархії пам’яті шляхом зміни переваги з DRAM на HBM у системах DRAM + HBM. У дослідженні використано модифіковану систему Ambix, у якій адаптовано політики міграції для призначення HBM швидким рівнем та налаштовано внутрішні параметри для кращої відповідності архітектурі DRAM +HBM. Оцінювання проводилося за допомогою тестів HPCG та AMG на двопроцесорному сервері. Встановлено, що розміщення всіх даних у пам’яті HBM забезпечило приріст продуктивності до 24 % порівняно з використанням лише DRAM. Аналіз продемонстрував, що стандартне балансування NUMA в Linux могло спричинити деградацію продуктивності до 4 %, оскільки воно некоректно переміщувало сторінки пам’яті до повільнішого рівня DRAM. Дослідження виявило, що хоча стандартні конфігурації Ambix могли знижувати продуктивність до 23 %, надання переваги HBM покращило результати на величину від 1,4 % до 22 % порівняно з політиками, орієнтованими на DRAM. Крім того, налаштовано внутрішні параметри, що дозволило зменшити частоту сканування таблиць сторінок та збільшити ліміти міграції за цикл. Ці модифікації забезпечили приріст продуктивності від 3 % до 7 % для тесту HPCG порівняно з базовою системою. Для тесту AMG експериментальні результати показали варіювання від деградації на 1,5 % до покращення на 1,4 %, залежно від співвідношення обсягів DRAM:HBM. Отримані результати дозволяють системним архітекторам оптимізувати ієрархію пам’яті в серверах наступного покоління без необхідності внесення змін до ядра ОС або коду програм
Ключові слова
різнорідні системи пам’яті; управління пам’яттю; динамічна пам’ять з довільним доступом; пам’ять з високою пропускною здатністю; ієрархія пам’яті
Використані джерела
- Dongarra, J., Heroux, M.A., & Luszczek, P. (2016). High-performance conjugate-gradient benchmark: A new metric for ranking high-performance computing systems. The International Journal of High Performance Computing Applications, 30(1), 3-10. doi: 10.1177/10943420155.
- Doudali, T.D., Zahka, D., & Gavrilovska, A. (2021). Cori: Dancing to the right beat of periodic data movements over hybrid memory systems. 2021 IEEE international parallel and distributed processing symposium (IPDPS) (pp. 350-359). Piscataway: IEEE. doi: 10.1109/IPDPS49936.2021.00043.
- Duraisamy, P., et al. (2023). Towards an adaptable systems architecture for memory tiering at warehouse-scale. In Proceedings of the 28th ACM international conference on architectural support for programming languages and operating systems (pp. 727-741). New York: Association for Computing Machinery. doi: 10.1145/3582016.3582031.
- Gouk, D., Lee, S., Kwon, M., & Jung, M. (2022). Direct access, high-performance memory disaggregation with DirectCXL. In 2022 USENIX annual technical conference (USENIX ATC 22) (pp. 287-294). Carlsbad: USENIX Association.
- Al Maruf, H., Wang, H., Dhanotia, A., Weiner, J., Agarwal, N., Bhattacharya, P., Petersen, C., Chowdhury, M., Kanaujia, S., & Chauhan, P. (2023). TPP: Transparent page placement for CXL-enabled tiered-memory. In Proceedings of the 28th ACM international conference on architectural support for programming languages and operating systems (pp. 742-755). New York: Association for Computing Machinery. doi: 10.1145/3582016.3582063.
- Huang, Y. (2019). Autonuma: Optimize memory placement in memory tiering system. Retrieved from https://lkml. org/lkml/2021/2/4/289.
- Kammerdiener, B., McMichael, J.Z., Jantz, M.R., Doshi, K.A., & Jones, T. (2023). Flexible and effective object tiering for heterogeneous memory systems. In Proceedings of the 2023 ACM SIGPLAN international symposium on memory management (pp. 163-175). New York: Association for Computing Machinery. doi: 10.1145/3591195.3595277.
- Kannan, S., Ren, Y., & Bhattacharjee, A. (2021). KLOCs: Kernel-level object contexts for heterogeneous memory systems. In Proceedings of the 26th ACM international conference on architectural support for programming languages and operating systems (pp. 65-78). New York: Association for Computing Machinery. doi: 10.1145/3445814.3446745.
- Kim M., Han, S., Park, G., & Kim, D. (2025). MTAT: Adaptive fast memory management for co-located latency-critical workloads in tiered memory system. In Proceedings of the 26th international middleware conference (pp. 86-98). New York: Association for Computing Machinery. doi: 10.1145/3721462.3770767.
- Kim, J., Choe, W., & Ahn, J. (2021). Exploring the design space of page management for multi-tiered memory systems. In 2021 USENIX annual technical conference (USENIX ATC 21) (pp. 715-728). Berkeley: USENIX Association.
- Lee, T., Monga, S., Min, C., & Eom, Y.I. (2023). MEMTIS: Efficient memory tiering with dynamic page classification and page size determination. In Proceedings of the 29th ACM symposium on operating systems principles (pp. 17-34). doi: 10.1145/3600006.3613167.
- Marques, M.S. (2021). Ambix: Rethinking Linux’s page management to support the new Intel Optane DC persistent memory. (Master’s thesis, Instituto Superior Técnico, Universidade de Lisboa, Lisbon, Portugal).
- McCalpin, J.D. (2023). Bandwidth limits in the Intel Xeon Max (sapphire rapids with HBM) processors. In High performance computing: ISC high performance 2023 international workshops (pp. 403-413). Berlin: Springer-Verlag. doi: 10.1007/978-3-031-40843-4_30.
- Moura, D., Mosse, D., & Petrucci, V. (2022). Performance characterization of AutoNUMA memory tiering on graph analytics. In 2022 IEEE international symposium on workload characterization (IISWC) (pp. 171-184). IEEE. doi: 10.1109/iiswc55918.2022.00024.
- Olson, M.B., Kammerdiener, B., Jantz, M.R., Doshi, K.A., & Jones, T. (2022). Online application guidance for heterogeneous memory systems. ACM Transactions on Architecture and Code Optimization, 19(3), article number 45. doi: 10.1145/3533855.
- Park, S., Bhowmik, M., & Uta, A. (2022). DAOS: Data access-aware operating system. In Proceedings of the 31st international symposium on high-performance parallel and distributed computing (pp. 4-15). New York: Association for Computing Machinery. doi: 10.1145/3502181.3531466.
- Póvoas, J., Barreto, J., Chomiski, B., Gonçalves, A., Karabeinikau, F., Maciejewski, M., Schmiegel, J., & Storozhuk, K. (2025). Better memory tiering, right from the first placement. In Proceedings of the 16th ACM/SPEC international conference on performance engineering (pp. 253-265). New York: Association for Computing Machinery. doi: 10.1145/3676151.3719378.
- Raybuck, A., Stamler, T., Zhang, W., Erez, M., & Peter, S. (2021). HeMem: Scalable tiered memory management for big data applications and real NVM. In Proceedings of the ACM SIGOPS 28th symposium on operating systems principles (pp. 392-407). New York: Association for Computing Machinery. doi: 10.1145/3477132.3483550.
- Ren, J., Xu, D., Ryu, J., Shin, K., Kim, D., & Li, D. (2024). MTM: Rethinking memory profiling and migration for multi-tiered large memory. In Proceedings of the nineteenth european conference on computer systems (pp. 803-817). New York: Association for Computing Machinery. doi: 10.1145/3627703.3650075.
- Xiang, L., Lin, Z., Deng, W., Lu, H., Rao, J., Yuan, Y., & Wang, R. (2024). Nomad: Non-exclusive memory tiering via transactional page migration. In 18th USENIX symposium on operating systems design and implementation (OSDI 24) (pp. 19-35). Santa Clara: USENIX Association.
- Xu, D., Ryu, J., Shin, K., Su, P., & Li, D. (2024). FlexMem: Adaptive page profiling and migration for tiered memory. In Proceedings of the 2024 USENIX annual technical conference (USENIX ATC 24) (pp. 817-833). Santa Clara: USENIX Association.
- Yang, U., Falgout, R., & Park, J. (2017). Algebraic multigrid benchmark. Retrieved from https://www.osti.gov/ biblio/1389816.