Preview

Вестник СибГУТИ

Расширенный поиск

Анализ эффективности потоково-локальной сборки мусора в распределённых системах хранения и обработки данных

https://doi.org/10.55648/1998-6920-2022-16-1-77-88

Аннотация

В данной работе рассматривается потоково-локальная сборка мусора – техника автоматического управления памятью, которая использует свойство объекта быть доступным только одному потоку исполнения. Возможность выделять и переиспользовать динамическую память независимо в каждом потоке, т.е. без дорогостоящих операций синхронизации, улучшает производительность и масштабируемость прикладных программ. В работе анализируется применимость данной техники к распределённым системам хранения и обработки данных, используемым в промышленности. Результаты свидетельствуют о том, что потоковолокальное управление памятью позволяет в полной мере задействовать ресурсы вычислительной системы и является многообещающим подходом к сборке мусора в высоконагруженных средах исполнения.

Об авторах

А. Ю. Филатов
НГУ; Новосибирский исследовательский центр Huawei
Россия

Филатов Александр Юрьевич, ассистент кафедры программирования ММФ НГУ; ведущий инженер Новосибирского исследовательского центра Huawei

Новосибирск



В. В. Михеев
НГУ; Новосибирский исследовательский центр Huawei
Россия

Михеев Виталий Витальевич, старший преподаватель кафедры программирования ММФ НГУ; старший эксперт Новосибирского исследовательского центра Huawei

Новосибирск



Список литературы

1. Doligez D., Leroy X. A concurrent, generational garbage collector for a multithreaded implementation of ml // Proc. 20th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, 1993. P. 113–123.

2. Domani T., Goldshtein G., Kolodner E., Lewis E., Petrank E, Sheinwald D. Thread-local heaps for java. // In SIGPLAN Not, 2002. P. 76–87.

3. Apache Hadoop® official website [Электронный ресурс] // Apache Hadoop: [сайт]. URL: https://hadoop.apache.org/ (дата обращения: 01.01.2022).

4. Apache Spark official website [Электронный ресурс] // Apache Spark: [сайт]. URL: https://spark.apache.org/ (дата обращения: 01.01.2022).

5. Filatov A., Mikheev V. Evaluation of thread-local garbage collection // Proc. 2020 Ivannikov Memorial Workshop (IVMEM), 2020. P. 15–21.

6. Purdom P., Stigler S., Cheam T. Statistical investigation of three storage allocation algorithms // BIT Numerical Mathematics. 1971. P. 187–195.

7. Sleator D., Tarjan R. Self-adjusting binary search trees // J. ACM. 1985. P. 682–686.

8. Agesen O. Gc points in a threaded environment // Technical report, SMLI TR-98-70. 1998.

9. Dean J., Ghemawat S. Mapreduce: Simplified data processing on large clusters // Commun. ACM, 2008. P. 107–113.

10. Zaharia M., Chowdhury M., Franklin M., Shenker S., Stoica I. Spark: Cluster computing with working sets // Proc. 2nd USENIX Conference on Hot Topics in Cloud Computing, 2010. P. 10.

11. White T. Hadoop: The Definitive Guide // O’Reilly Media, Inc., 4th ed., 2015.

12. HiBench source repository [Электронный ресурс] // GitHub: [сайт]. URL: https://github.com/Intel-bigdata/HiBench (дата обращения: 01.01.2022).

13. MacQueen J. Some methods for classification and analysis of multivariate observations // Berkeley Symposium on Mathematical Statistics and Probability, 1967. P. 281–297.

14. Jones S., Launchbury J., Peyton Jones S. Unboxed values as first class citizens // Proc. ACM Conference on Functional Programming and Computer Architecture, 1991. P. 636–666.

15. O’Malley O. TeraByte Sort on Apache Hadoop [Электронный ресурс] // TeraByte Sort: [сайт]. URL: http://sortbenchmark.org/YahooHadoop.pdf (дата обращения: 01.01.2022).

16. Berger E., McKinley K., Blumofe R., Wilson P. Hoard: A scalable memory allocator for multithreaded applications // SIGARCH Comput. Archit. News. 2000. P. 117–128.

17. Vee V.-Y., Hsu W.-J. A scalable and efficient storage allocator on shared memory multiprocessors // Proc. 1999 International Symposium on Parallel Architectures, Algorithms and Networks, 1999. P. 230.

18. Kirsch C., Payer H., Röck H. Hierarchical plabs, clabs, tlabs in hotspot // Proc. International Conference on Systems (ICONS), 2012.

19. Anderson A. Optimizations in a private nursery-based garbage collector // Proc. 2010 International Symposium on Memory Management, 2010. P. 21–30.

20. Mole M., Jones R., Kalibera T. A study of sharing definitions in thread-local heaps // ICOOOLPS, 2012.

21. Mole M. A study of thread-local garbage collection for multi-core systems // PhD thesis, University of Kent, 2015.


Рецензия

Для цитирования:


Филатов А.Ю., Михеев В.В. Анализ эффективности потоково-локальной сборки мусора в распределённых системах хранения и обработки данных. Вестник СибГУТИ. 2022;(1):77-88. https://doi.org/10.55648/1998-6920-2022-16-1-77-88

For citation:


Filatov A.Yu., Mikheev V.V. Application of Thread-Local Garbage Collection to Distributed Systems for Large-Scale Data Processing. The Herald of the Siberian State University of Telecommunications and Information Science. 2022;(1):77-88. (In Russ.) https://doi.org/10.55648/1998-6920-2022-16-1-77-88

Просмотров: 140


Creative Commons License
Контент доступен под лицензией Creative Commons Attribution 4.0 License.


ISSN 1998-6920 (Print)