Abstract
Fast allocation of large blocks of physically contiguous memory plays a crucial role to boost the performance of multimedia applications in modern memory-constrained portable devices, such as smartphones, tablets, etc. Existing systems have addressed this issue by provisioning a large statically reserved memory area (SRA) in which only dedicated applications can allocate pages. However, this in turn degrades the performance of applications that are prohibited to utilize the SRA due to the reduced available memory pool. To overcome this drawback while maintaining the benefits of the SRA, we propose a new memory management scheme that uses a special memory region, called page-cache-preferred area (PCPA), in concert with a quick memory reclaiming algorithm. The key of the proposed scheme is to enhance the memory utilization efficiency by enabling to allocate page-cached pages of all applications in the PCPA until predetermined applications require to allocate big chunks of contiguous memory. At this point, clean page-cached pages in the PCPA are rapidly evicted without write-back to a secondary storage. Compared to the SRA scheme, experimental results show that the average launch time of real-world applications and the execution time of I/O-intensive benchmarks are reduced by 9.2% and 24.7%, respectively.
- Nadav Amit, Muli Ben-Yehuda, Dan Tsafrir, and Assaf Schuster. 2011. vIOMMU: Efficient IOMMU emulation. In Proceedings of the Annual USENIX Technical Conference (USENIXATC'11). Google ScholarDigital Library
- Nadav Amit, Muli Ben-Yehuda, and Ben-Ami Yassour. 2010. IOMMU: Strategies for mitigating the IOTLB bottleneck. In Proceedings of the International Conference on Computer Architecture (ISCA'10). 256--274. Google ScholarDigital Library
- Roberto Ammendola, Andrea Biagioni, Ottorino Frezza, Francesca Lo Cicero, Alessandro Lonardo, Pier Stanislao Paolucci, Davide Rossetti, Francesco Simula, Laura Tosoratto, and Piero Vicini. 2013. Virtual-to-physical address translation for an FPGA-based interconnect with host and GPU remote DMA capabilities. In Proceedings of the International Conference on Field-Programmable Technology (FPT'13). 58--65.Google ScholarCross Ref
- ARM Architecture. 2014. Cortex-A9 technical reference manual. http://infocenter.arm.com/help/topic/com.arm.doc.ddi0388i/DDI0388I_cortexa9_r4p1_trm.pdf.Google Scholar
- Emery D. Berger, Kathryn S. Mckinley, Robert D. Blumofe, and Paul R. Wilson. 2000. Hoard: A scalable memory allocator for multithreaded applications. In Proceedings of the 9th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS'00). ACM Press, New York, 117--128. Google ScholarDigital Library
- CMA. 2012. A deep dive into CMA. http://lwn.net/Articles/486301/.Google Scholar
- Jonathan Corbet. 2010. Memory compaction (2010). http://lwn.net/Articles/368869/.Google Scholar
- Google. 2014a. ActivityManager. http://developer.android.com/reference/android/app/ActivityManager.html.Google Scholar
- Google. 2014b. Android.os.Binder. http://developer.android.com/reference/android/os/Binder.html.Google Scholar
- Google. 2014c. Camera HAL overview. https://source.android.com/devices/camera/camera.html.Google Scholar
- Google. 2014d. Graphics. https://source.android.com/devices/graphics.html.Google Scholar
- Google. 2014e. Monkeyrunner. http://developer.android.com/tools/help/monkeyrunner concepts.html.Google Scholar
- Jean-Pierre Henot, M. Ropert, Julien Le Tanou, Jean K, and Thomas Guionnet. 2013. High efficiency video coding (HEVC): Replacing or complementing existing compression standards. In Proceedings of the IEEE International Symposium on Broadband Multimedia Systems and Broadcasting (BMSB'13).Google ScholarCross Ref
- Hiroshi Inoue, Hideaki Komatsu, and Toshio Nakatani. 2009. A study of memory management for Web-based applications on multicore processors. In Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI'09). ACM Press, New York, 386--396. Google ScholarDigital Library
- IOzone. 2006. IOzone filesystem benchmark. http://www.iozone.org/.Google Scholar
- Jinkyu Jeong, Hwanju Kim, Jaeho Hwang, Joonwon Lee, and Seungryoul Maeng. 2012. DaaC: Device-reserved memory as an eviction-based file cache. In Proceedings of the International Conference on Compilers, Architectures and Synthesis for Embedded Systems (CASES'12), Ahmed Jerraya, Luca P. Carloni, Vincent John Mooney III, and Rodric M. Rabbah, Eds. ACM Press, New York, 191--200. Google ScholarDigital Library
- Jinkyu Jeong, Hwanju Kim, Jeaho Hwang, Joonwon Lee, and Seungryoul Maeng. 2013. Rigorous rental memory management for embedded systems. ACM Trans. Embedd. Comput. Syst. 12, 1. Google ScholarDigital Library
- Mark S. Johnstone and Paul R. Wilson. 1998. The memory fragmentation problem: Solved? In Proceedings of the 1st International Symposium on Memory Management (ISMM'98). ACM Press, New York, 26--36. Google ScholarDigital Library
- Igor Kalkov, Dominik Franke, John F. Schommer, and Stefan Kowalewski. 2012. A real-time extension to the Android platform. In Proceedings of the 10th International Workshop on Java Technologies for Real-Time and Embedded Systems (JTRES'12). ACM Press, New York, 105--114. Google ScholarDigital Library
- Myung-Jin Lee, Joo-Yong Oh, and Soon-Ju Kang. 2011. Design of multimedia stream channel arbiter in home network gateway. IEEE Trans. Consumer Electron. 57, 4, 1661--1669.Google ScholarCross Ref
- Linaro. 2013. ION interface and memory allocator. https://wiki.linaro.org/BenjaminGaignard/ion.Google Scholar
- Robert Love. 2004. I/O scheduler. http://www.linuxjournal.com/article/6931.Google Scholar
- Robert Love. 2010. Linux Kernel Development, 3rd ed. Addison Wesley. Google ScholarDigital Library
- Lwnnet. 2012. The Android ION memory allocator. http://lwn.net/Articles/480055/.Google Scholar
- Miguel Masmano, Ismael Ripoll, Alfons Crespo, and Jorge Real. 2004. TLSF: A new dynamic memory allocator for real-time systems. In Proceedings of the 16th Euromicro Conference on Real-Time Systems (ECRTS'04). 79--88. Google ScholarDigital Library
- Rivalino Matias, Tais Ferreira, and Autran Macedo. 2011. An experimental study on user-level memory allocators in middleware applications. In Proceedings of the IEEE International Conference on Systems, Man, and Cybernetics (SMC'11). 2431--2436.Google ScholarCross Ref
- M. Ramakrishna, Jisung Kim, Woohyong Lee, and Youngki Chung. 2008. Smart dynamic memory allocator for embedded systems. In Proceedings of the 23rd International Symposium on Computer and Information Sciences (ISCIS'08). 1--6.Google ScholarCross Ref
- SPEC CPU2006. 2014. SPEC's benchmarks and published results. http://www.spec.org/benchmarks/html.Google Scholar
- Sysbench. 2014. SysBench: A system performance benchmark. https://launchpad.net/sysbench.Google Scholar
- Sumesh Udayakumaran, Angel Dominguez, and Rajeev Barua. 2006. Dynamic allocation for scratch-pad memory using compile-time decisions. ACM Trans. Embedd. Comput. Syst. 5, 2, 472--511. Google ScholarDigital Library
- Guibin Wang and Wei Song. 2011. Communication-aware task partition and voltage scaling for energy minimization on heterogeneous parallel systems. In Proceedings of the 12th International Conference on Parallel and Distributed Computing, Applications and Technologies (PDCAT'11). 327--333. Google ScholarDigital Library
- Fengguang Wu, Hongsheng Xi, and Chenfeng Xu. 2008. On the design of a new Linux readahead frame-work. SIGOPS Oper. Syst. Rev. 42, 5, 75--84. Google ScholarDigital Library
- Chia-Hao Yu, Chung-Kai Liu, Chih-Heng Kang, Tsun-Hsien Wang, Chih-Chien Shen, and Shau-Yin Tseng. 2007. An efficient DMA controller for multimedia application in MPU based SOC. In Proceedings of the International Conference on Multimedia and Expo (ICME'07). 80--83.Google ScholarCross Ref
Index Terms
- Memory Management Scheme to Improve Utilization Efficiency and Provide Fast Contiguous Allocation without a Statically Reserved Area
Recommendations
Enabling Hybrid PCM Memory System with Inherent Memory Management
RACS '16: Proceedings of the International Conference on Research in Adaptive and Convergent SystemsReplacing the traditional volatile main memory, e.g., DRAM, with a non-volatile phase change memory (PCM) has become a possible solution to reduce the energy consumption of computing systems. To further reduce the bit cost of PCM, the development trend ...
Write-aware memory management for hybrid SLC-MLC PCM memory systems
In recent years, phase-change memory (PCM) has generated a great deal of interest because of its byte addressability and non-volatility properties. It is regarded as a good alternative storage medium that can reduce the performance gap between the main ...
Migration based page caching algorithm for a hybrid main memory of DRAM and PRAM
SAC '11: Proceedings of the 2011 ACM Symposium on Applied ComputingAs the DRAM based main memory significantly increases the power and cost budget of a computer system, new memory technologies such as Phase-change RAM (PRAM), Ferroelectric RAM (FRAM), and Magnetic RAM (MRAM) have been proposed to replace the DRAM. ...
Comments