Dongwook Lee, Junghoon Kim, U. Kim, Y. Eom, H. Jun, W. Kim
{"title":"A Fast Lock-Free User Memory Space Allocator for Embedded Systems","authors":"Dongwook Lee, Junghoon Kim, U. Kim, Y. Eom, H. Jun, W. Kim","doi":"10.1109/ICCSA.2011.46","DOIUrl":null,"url":null,"abstract":"Many embedded systems get improvements on hardware such as massive memory and multi-cores. According these improvements, some application that demands per-formance of excessive operations per seconds has been app-eared. These applications often use dynamic memory allocation. But, existing allocators does not scale well, thus those applications is limited theirs performance by allocators. Moreover, because the applications that run on embedded systems are rarely powered-off, the external fragmentation problem is critical. This paper introduces the allocator, lock-free and scalable that free the synchronization cost and low the fragmentation. Our allocator has per-thread heap and allocate the close size memory instead of the exact size of memory to reduce synchronization cost and allocation/de-allocation time. Our result on test application that can be run with 1 to 32 threads demonstrate that our allocator yields low average fragmentation and improves overall program performance over the standard Linux allocator by up to a factor of 60 on 32 threads, and up to a factor of 10 over the next best allocator we tested.","PeriodicalId":428638,"journal":{"name":"2011 International Conference on Computational Science and Its Applications","volume":"174 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2011-06-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"4","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2011 International Conference on Computational Science and Its Applications","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ICCSA.2011.46","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 4
Abstract
Many embedded systems get improvements on hardware such as massive memory and multi-cores. According these improvements, some application that demands per-formance of excessive operations per seconds has been app-eared. These applications often use dynamic memory allocation. But, existing allocators does not scale well, thus those applications is limited theirs performance by allocators. Moreover, because the applications that run on embedded systems are rarely powered-off, the external fragmentation problem is critical. This paper introduces the allocator, lock-free and scalable that free the synchronization cost and low the fragmentation. Our allocator has per-thread heap and allocate the close size memory instead of the exact size of memory to reduce synchronization cost and allocation/de-allocation time. Our result on test application that can be run with 1 to 32 threads demonstrate that our allocator yields low average fragmentation and improves overall program performance over the standard Linux allocator by up to a factor of 60 on 32 threads, and up to a factor of 10 over the next best allocator we tested.