Page 519 - 《软件学报》2024年第4期
P. 519
欧阳湘臻 等: 榫卯: 一种可组合的定制化内存分配框架 2097
[23] Dice D, Garthwaite A. Mostly lock-free malloc. In: Proc. of the 3rd Int ’l Symp. on Memory Management. Berlin: Association for
Computing Machinery, 2002. 163–174. [doi: 10.1145/512429.512451]
[24] Michael MM. Scalable lock-free dynamic memory allocation. In: Proc. of the 2004 ACM SIGPLAN Conf. on Programming Language
Design and Implementation. Washington: Association for Computing Machinery, 2004. 35–46. [doi: 10.1145/996841.996848]
[25] Aigner M, Kirsch CM, Lippautz M, Sokolova A. Fast, multicore-scalable, low-fragmentation memory allocation through large virtual
memory and global data structures. In: Proc. of the 2015 ACM SIGPLAN Int’l Conf. on Object-oriented Programming, Systems, Languages,
and Applications. Pittsburgh: Association for Computing Machinery, 2015. 451–469. [doi: 10.1145/2814270.2814294]
[26] Kuszmaul BC. SuperMalloc: A super fast multithreaded malloc for 64-bit machines. In: Proc. of the 2015 Int’l Symp. on Memory Manage-
ment. Portland: ACM, 2015. 41–55. [doi: 10.1145/2754169.2754178]
[27] Hendler D, Shavit N, Yerushalmi L. A scalable lock-free stack algorithm. Journal of Parallel and Distributed Computing, 2010, 70(1):
1–12. [doi: 10.1016/j.jpdc.2009.08.011]
[28] Michael MM, Scott ML. Simple, fast, and practical non-blocking and blocking concurrent queue algorithms. In: Proc. of the 15th Annual
ACM Symp. on Principles of Distributed Computing. Philadelphia: Association for Computing Machinery, 1996. 267–275. [doi: 10.1145/
248052.248106]
[29] Timnat S, Petrank E. A practical wait-free simulation for lock-free data structures. In: Proc. of the 19th ACM SIGPLAN Symp. on
Principles and Practice of Parallel Programmings. Orlando: ACM, 2014. 357–368. [doi: 10.1145/2555243.2555261]
[30] Kogan A, Petrank E. Wait-free queues with multiple enqueuers and dequeuers. In: Proc. of the 16th ACM Symp. on Principles and
Practice of Parallel Programming. San Antonio: Association for Computing Machinery, 2011. 223–234. [doi: 10.1145/1941553.1941585]
[31] Fatourou P, Kallimanis ND. Highly-efficient wait-free synchronization. Theory of Computing Systems, 2014, 55(3): 475–520. [doi: 10.
1007/s00224-013-9491-y]
[32] Kogan A, Petrank E. A methodology for creating fast wait-free data structures. In: Proc. of the 17th ACM SIGPLAN Symp. on Principles
and Practice of Parallel Programming. New Orleans: Association for Computing Machinery, 2014. 141–150. [doi: 10.1145/2145816.
2145835]
[33] Peng YQ, Hao ZY. FA-stack: A fast array-based stack with wait-free progress guarantee. IEEE Trans. on Parallel and Distributed
Systems, 2018, 29(4): 843–857. [doi: 10.1109/TPDS.2017.2770121]
[34] Yang CR, Mellor-Crummey J. A wait-free queue as fast as fetch-and-add. In: Proc. of the 21st ACM SIGPLAN Symp. on Principles and
Practice of Parallel Programming. Barcelona: Association for Computing Machinery, 2016. 16. [doi: 10.1145/2851141.2851168]
[35] Wen HS, Izraelevitz J, Cai WT, Beadle HA, Scott ML. Interval-based memory reclamation. In: Proc. of the 23rd ACM SIGPLAN Symp.
on Principles and Practice of Parallel Programming. Vienna: Association for Computing Machinery, 2018. 1–13. [doi: 10.1145/3178487.
3178488]
[36] Michael MM. Hazard pointers: Safe memory reclamation for lock-free objects. IEEE Trans. on Parallel and Distributed Systems, 2004,
15(6): 491–504. [doi: 10.1109/TPDS.2004.8]
[37] Nikolaev R, Ravindran B. Universal wait-free memory reclamation. In: Proc. of the 25th ACM SIGPLAN Symp. on Principles and
Practice of Parallel Programming. San Diego: Association for Computing Machinery, 2020. 130–143. [doi: 10.1145/3332466.3374540]
[38] Powers B, Tench D, Berger ED, McGregor A. Mesh: Compacting memory management for C/C++ applications. In: Proc. of the 40th
ACM SIGPLAN Conf. on Programming Language Design and Implementation. Phoenix: Association for Computing Machinery, 2019.
333–346. [doi: 10.1145/3314221.3314582]
[39] Herlihy M. Wait-free synchronization. ACM Trans. on Programming Languages and Systems, 1991, 13(1): 124 –149. [doi: 10.1145/
114005.102808]
[40] Petrank E, Musuvathi M, Steesngaard B. Progress guarantee for parallel programs via bounded lock-freedom. In: Proc. of the 30th ACM
SIGPLAN Conf. on Programming Language Design and Implementation. Dublin: Association for Computing Machinery, 2009. 144–154.
[doi: 10.1145/1542476.1542493]
[41] Woo SC, Ohara M, Torrie E, Pal Singh J, Gupta A. The SPLASH-2 programs: Characterization and methodological considerations. In:
Proc. of the 22nd Annual Int’l Symp. on Computer Architecture. New York: Association for Computing Machinery, 1995. 24–36. [doi:
10.1145/223982.223990]
[42] Grunwald D, Zorn B, Henderson R. Improving the cache locality of memory allocation. In: Proc. of the 1993 ACM SIGPLAN Conf. on
Programming Language Design and Implementation. Albuquerque: Association for Computing Machinery, 1993. 177–186. [doi: 10.1145/
155090.155107]
[43] Correia A, Ramalhete P, Felber P. A wait-free universal construction for large objects. In: Proc. of the 25th ACM SIGPLAN Symp. on
Principles and Practice of Parallel Programming. San Diego: Association for Computing Machinery, 2020. 102 –116. [doi: 10.1145/