source: doc/papers/llheap/local.bib@ d2e6f84

Last change on this file since d2e6f84 was 73475a5, checked in by Peter A. Buhr <pabuhr@…>, 5 weeks ago

updates for llheap paper

  • Property mode set to 100644
File size: 24.2 KB
Line 
1% Predefined journal names:
2% acmcs: Computing Surveys acta: Acta Infomatica
3% cacm: Communications of the ACM
4% ibmjrd: IBM J. Research & Development ibmsj: IBM Systems Journal
5% ieeese: IEEE Trans. on Soft. Eng. ieeetc: IEEE Trans. on Computers
6% ieeetcad: IEEE Trans. on Computer-Aided Design of Integrated Circuits
7% ipl: Information Processing Letters jacm: Journal of the ACM
8% jcss: J. Computer & System Sciences scp: Science of Comp. Programming
9% sicomp: SIAM J. on Computing tocs: ACM Trans. on Comp. Systems
10% tods: ACM Trans. on Database Sys. tog: ACM Trans. on Graphics
11% toms: ACM Trans. on Math. Software toois: ACM Trans. on Office Info. Sys.
12% toplas: ACM Trans. on Prog. Lang. & Sys.
13% tcs: Theoretical Computer Science
14@string{ieeepds="IEEE Transactions on Parallel and Distributed Systems"}
15@string{ieeese="IEEE Transactions on Software Engineering"}
16@string{spe="Software---\-Practice and Experience"}
17@string{sigplan="SIGPLAN Notices"}
18@string{joop="Journal of Object-Oriented Programming"}
19@string{popl="Conference Record of the ACM Symposium on Principles of Programming Languages"}
20@string{osr="Operating Systems Review"}
21@string{pldi="Programming Language Design and Implementation"}
22
23@inproceedings{Hochstein05,
24 keywords = {Application software; Computer aided software engineering; Concurrent computing; Educational
25 institutions; High performance computing; Humans; Instruments; Productivity; Programming profession;
26 Software engineering},
27 author = {Lorin Hochstein and Jeff Carver and Forrest Shull and Sima Asgari and Victor Basili and Jeffrey K. Hollingsworth and Marvin V. Zelkowitz},
28 title = {Parallel Programmer Productivity: A Case Study of Novice Parallel Programmers},
29 organization= {Supercomputing, 2005. Proceedings of the ACM/IEEE SC 2005 Conference},
30 publisher = {IEEE},
31 location = {Seattle, Washington, U.S.A.},
32 month = nov,
33 year = {2005},
34 pages = {35-35},
35}
36
37@misc{TBB,
38 keywords = {Intel, TBB},
39 key = {TBB},
40 title = {Thread Building Blocks},
41 howpublished= {Intel, \url{https://www.threadingbuildingblocks.org}},
42 optnote = {Accessed: 2018-3},
43}
44
45@misc{litemalloc,
46 keywords = {lock free},
47 author = {Ivan Tkatchev and Veniamin Gvozdikov},
48 title = {Lite Malloc},
49 month = jul,
50 year = 2018,
51 howpublished= {\url{https://github.com/Begun/lockfree-malloc}},
52}
53
54@manual{www-cfa,
55 key = {CFA},
56 keywords = {Cforall},
57 author = {C$\forall$},
58 title = {C$\forall$ Programmming Language},
59 note = {\url{https://plg.uwaterloo.ca/~cforall}},
60}
61
62@manual{Cpp-Transactions,
63 keywords = {C++, Transactional Memory},
64 title = {Tech. Spec. for C++ Extensions for Transactional Memory {ISO/IEC} {TS} 19841:2015},
65 organization= {International Standard Organization},
66 address = {Geneva, Switzerland},
67 year = 2015,
68 note = {\url{https://www.iso.org/standard/66343.html}},
69}
70
71@misc{2FTwoHardThings,
72 keywords = {Hard Problem},
73 title = {TwoHardThings},
74 author = {Martin Fowler},
75 howpublished= "\url{https://martinfowler.com/bliki/TwoHardThings.html}",
76 year = 2009
77}
78
79@article{IntrusiveData,
80 title = {Intrusive Data Structures},
81 author = {Jiri Soukup},
82 journal = {CppReport},
83 year = 1998,
84 month = May,
85 volume = {10/No5.},
86 page = 22
87}
88
89@article{Herlihy93,
90 author = {Herlihy, Maurice and Moss, J. Eliot B.},
91 title = {Transactional memory: architectural support for lock-free data structures},
92 journal = {SIGARCH Comput. Archit. News},
93 issue_date = {May 1993},
94 volume = {21},
95 number = {2},
96 month = may,
97 year = {1993},
98 pages = {289--300},
99 numpages = {12},
100 publisher = {ACM},
101 address = {New York, NY, USA},
102}
103
104@manual{affinityLinux,
105 key = {TBB},
106 title = "{Linux man page - sched\_setaffinity(2)}",
107 howpublished= {\url{https://man7.org/linux/man-pages/man2/sched_setaffinity.2.html}},
108}
109
110@manual{affinityWindows,
111 title = "{Windows documentation - SetThreadAffinityMask function}",
112 note = {\url{https://docs.microsoft.com/en-us/windows/win32/api/winbase/nf-winbase-setthreadaffinitymask}},
113}
114
115@manual{switchToWindows,
116 title = "{Windows (vs.85) - SwitchToFiber function}"
117}
118
119@manual{affinityFreebsd,
120 title = "{FreeBSD General Commands Manual - CPUSET(1)}"
121}
122
123@manual{affinityNetbsd,
124 title = "{NetBSD Library Functions Manual - AFFINITY(3)}"
125}
126
127@manual{affinityMacosx,
128 title = "{Affinity API Release Notes for OS X v10.5}"
129}
130
131@misc{NodeJs,
132 title = "{Node.js}",
133 howpublished= "\url{https://nodejs.org/en/}",
134}
135
136@misc{SpringMVC,
137 title = "{Spring Web MVC}",
138 howpublished= "\url{https://docs.spring.io/spring/docs/current/spring-framework-reference/web.html}",
139}
140
141@misc{Django,
142 title = "{Django}",
143 howpublished= "\url{https://www.djangoproject.com/}",
144}
145
146@article{Sleator85,
147 author = {Sleator, Daniel Dominic and Tarjan, Robert Endre},
148 title = {Self-Adjusting Binary Search Trees},
149 journal = jacm,
150 volume = 32,
151 number = 3,
152 year = 1985,
153 issn = {0004-5411},
154 pages = {652-686},
155 address = {New York, NY, USA},
156}
157
158@article{Berger00,
159 author = {Emery D. Berger and Kathryn S. McKinley and Robert D. Blumofe and Paul R. Wilson},
160 title = {Hoard: a scalable memory allocator for multithreaded applications},
161 publisher = {Association for Computing Machinery},
162 address = {New York, NY, USA},
163 volume = 28,
164 number = 5,
165 journal = {SIGARCH Comput. Archit. News},
166 year = {2000},
167 month = nov,
168 pages = {117-128},
169}
170
171@inproceedings{berger02reconsidering,
172 author = {Emery D. Berger and Benjamin G. Zorn and Kathryn S. McKinley},
173 title = {Reconsidering Custom Memory Allocation},
174 organization= {Proc. of the 17th ACM SIGPLAN Conference on Object-Oriented Programming: Systems, Languages, and Applications (OOPSLA) 2002},
175 month = nov,
176 year = 2002,
177 location = {Seattle, Washington, USA},
178 publisher = {ACM},
179 address = {New York, NY, USA},
180}
181
182@article{larson99memory,
183 author = {Per-{\AA}ke Larson and Murali Krishnan},
184 title = {Memory Allocation for Long-Running Server Applications},
185 journal = sigplan,
186 volume = 34,
187 number = 3,
188 pages = {176-185},
189 year = 1999,
190 note = {\url{http://citeseer.ist.psu.edu/article/larson98memory.html}},
191}
192
193@techreport{gidpt04,
194 author = {Anders Gidenstam and Marina Papatriantafilou and Philippas Tsigas},
195 title = {Allocating Memory in a Lock-Free Manner},
196 number = {2004-04},
197 institution = {Computing Science},
198 address = {Chalmers University of Technology},
199 year = 2004,
200 note = {\url{http://citeseer.ist.psu.edu/gidenstam04allocating.html}},
201}
202
203@phdthesis{berger02thesis,
204 author = {Emery Berger},
205 title = {Memory Management for High-Performance Applications},
206 school = {The University of Texas at Austin},
207 year = 2002,
208 month = aug,
209 note = {\url{http://citeseer.ist.psu.edu/article/berger02memory.html}},
210}
211
212@misc{sgimisc,
213 author = {SGI},
214 title = {The Standard Template Library for {C++}},
215 howpublished= {\textsf{www.sgi.com/tech/stl/Allocators.html}},
216}
217
218@misc{dlmalloc,
219 author = {Doug Lea},
220 title = {dlmalloc version 2.8.4},
221 month = may,
222 year = 2009,
223 howpublished= {\url{ftp://g.oswego.edu/pub/misc/malloc.c}},
224}
225
226@misc{ptmalloc2,
227 author = {Wolfram Gloger},
228 title = {ptmalloc version 2},
229 month = jun,
230 year = 2006,
231 howpublished= {\url{http://www.malloc.de/malloc/ptmalloc2-current.tar.gz}},
232}
233
234@misc{nedmalloc,
235 author = {Niall Douglas},
236 title = {nedmalloc version 1.06 Beta},
237 month = jan,
238 year = 2010,
239 howpublished= {\url{http://prdownloads.sourceforge.net/nedmalloc/nedmalloc\_v1.06beta1\_svn1151.zip}},
240}
241
242@misc{hoard,
243 author = {Emery D. Berger},
244 title = {hoard version 3.8},
245 month = nov,
246 year = 2009,
247 howpublished= {\url{http://www.cs.umass.edu/~emery/hoard/hoard-3.8/source/hoard-38.tar.gz}},
248}
249
250@comment{mtmalloc,
251 author = {Greg Nakhimovsky},
252 title = {Improving Scalability of Multithreaded Dynamic Memory Allocation},
253 journal = {Dr. Dobb's},
254 month = jul,
255 year = 2001,
256 note = {\url{http://www.ddj.com/mobile/184404685?pgno=1}},
257}
258
259@misc{mtmalloc,
260 key = {mtmalloc},
261 title = {mtmalloc.c},
262 year = 2009,
263 howpublished= {\url{http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/lib/libmtmalloc/common/mtmalloc.c}},
264}
265
266@misc{tcmalloc,
267 author = {{multiple contributors}},
268 title = {TCMalloc : Thread-Caching Malloc},
269 month = dec,
270 year = 2024,
271 howpublished= {\url{https://gperftools.github.io/gperftools/tcmalloc.html}},
272}
273
274@inproceedings{streamflow,
275 author = {Scott Schneider and Christos D. Antonopoulos and Dimitrios S. Nikolopoulos},
276 title = {Scalable Locality-Conscious Multithreaded Memory Allocation},
277 organization= {International Symposium on Memory Management (ISSM'06)},
278 year = 2006,
279 month = jun,
280 location = {Ottawa, Ontario, Canada},
281 publisher = {ACM},
282 address = {New York, NY, USA},
283 pages = {84-94},
284}
285
286@misc{streamflowweb,
287 author = {Scott Schneider and Christos Antonopoulos and Dimitrios Nikolopoulos},
288 title = {Streamflow},
289 howpublished= {\url{http://people.cs.vt.edu/~scschnei/streamflow}},
290}
291
292@misc{llheap,
293 author = {Peter A. Buhr and Mubeen Zulfiqar},
294 title = {llheap: low-latency memory allocator},
295 year = 2025,
296 month = jun,
297 howpublished= {\url{https://github.com/cforall/llheap}},
298}
299
300@inproceedings{Blumofe94,
301 author = {R. Blumofe and C. Leiserson},
302 title = {Scheduling Multithreaded Computations by Work Stealing},
303 organization= {Proceedings of the 35th Annual Symposium on Foundations of Computer Science, Santa Fe, New Mexico.},
304 pages = {356-368},
305 year = 1994,
306 month = nov,
307 note = {\url{http://citeseer.ist.psu.edu/article/blumofe94scheduling.html}},
308}
309
310@article{Johnstone99,
311 author = {Mark S. Johnstone and Paul R. Wilson},
312 title = {The Memory Fragmentation Problem: Solved?},
313 journal = sigplan,
314 volume = 34,
315 number = 3,
316 pages = {26-36},
317 year = 1999,
318}
319
320@inproceedings{Grunwald93,
321 author = {Dirk Grunwald and Benjamin G. Zorn and Robert Henderson},
322 title = {Improving the Cache Locality of Memory Allocation},
323 organization= {{SIGPLAN} Conference on Programming Language Design and Implementation},
324 pages = {177-186},
325 year = 1993,
326 note = {\url{http://citeseer.ist.psu.edu/grunwald93improving.html}},
327}
328
329@inproceedings{Wilson95,
330 author = {Wilson, Paul R. and Johnstone, Mark S. and Neely, Michael and Boles, David},
331 title = {Dynamic Storage Allocation: A Survey and Critical Review},
332 organization= {Proc. Int. Workshop on Memory Management},
333 address = {Kinross Scotland, UK},
334 year = 1995,
335 note = {\url{http://citeseer.ist.psu.edu/wilson95dynamic.html}},
336}
337
338@inproceedings{Siebert00,
339 author = {Fridtjof Siebert},
340 title = {Eliminating External Fragmentation in a Non-moving Garbage Collector for Java},
341 organization= {CASES '00: Proceedings of the 2000 international conference on Compilers, architecture, and synthesis for embedded systems},
342 year = 2000,
343 isbn = {1-58113-338-3},
344 pages = {9-17},
345 location = {San Jose, CA, USA},
346 publisher = {ACM Press},
347 address = {New York, NY, USA}
348}
349
350@inproceedings{Lim98,
351 author = {Tian F. Lim and Przemyslaw Pardyak and Brian N. Bershad},
352 title = {A Memory-Efficient Real-Time Non-copying Garbage Collector},
353 organization= {ISMM '98: Proceedings of the 1st international symposium on Memory management},
354 year = 1998,
355 pages = {118-129},
356 location = {Vancouver, British Columbia, Canada},
357 publisher = {ACM Press},
358 address = {New York, NY, USA}
359}
360
361@article{Chang01,
362 author = {J. Morris Chang and Woo Hyong Lee and Witawas Srisa-an},
363 title = {A Study of the Allocation Behavior of {C++} Programs},
364 journal = {J. Syst. Softw.},
365 volume = 57,
366 number = 2,
367 year = 2001,
368 issn = {0164-1212},
369 pages = {107-118},
370 publisher = {Elsevier Science Inc.},
371 address = {New York, NY, USA}
372}
373
374@article{Herlihy93b,
375 author = {Maurice Herlihy},
376 title = {A Methodology for Implementing Highly Concurrent Data Objects},
377 journal = toplas,
378 volume = 15,
379 number = 5,
380 year = 1993,
381 issn = {0164-0925},
382 pages = {745-770},
383 publisher = {ACM Press},
384 address = {New York, NY, USA}
385}
386
387@article{Denning05,
388 author = {Peter J. Denning},
389 title = {The Locality Principle},
390 journal = cacm,
391 volume = 48,
392 number = 7,
393 year = 2005,
394 issn = {0001-0782},
395 pages = {19-24},
396 publisher = {ACM Press},
397 address = {New York, NY, USA}
398}
399
400@misc{wilson-locality,
401 author = {Paul R. Wilson},
402 title = {Locality of Reference, Patterns in Program Behavior, Memory Management, and Memory Hierarchies},
403 note = {\url{http://citeseer.ist.psu.edu/337869.html}},
404}
405
406@inproceedings{Feng05,
407 author = {Yi Feng and Emery D. Berger},
408 title = {A Locality-Improving Dynamic Memory Allocator},
409 organization= {Proceedings of the 2005 Workshop on Memory System Performance},
410 location = {Chicago, Illinois},
411 publisher = {ACM},
412 address = {New York, NY, USA},
413 month = jun,
414 year = 2005,
415 pages = {68-77},
416}
417
418@inproceedings{grunwald-locality,
419 author = {Dirk Grunwald and Benjamin Zorn and Robert Henderson},
420 title = {Improving the Cache Locality of Memory Allocation},
421 organization= {PLDI '93: Proceedings of the ACM SIGPLAN 1993 conference on Programming language design and implementation},
422 year = 1993,
423 isbn = {0-89791-598-4},
424 pages = {177-186},
425 location = {Albuquerque, New Mexico, USA},
426 publisher = {ACM Press},
427 address = {New York, NY, USA}
428}
429
430@article{Alexandrescu01b,
431 author = {Andrei Alexandrescu},
432 title = {{volatile} -- Multithreaded Programmer's Best Friend},
433 journal = {Dr. Dobb's},
434 month = feb,
435 year = 2001,
436 note = {\url{http://www.ddj.com/cpp/184403766}},
437}
438
439@article{Attardi03,
440 author = {Joseph Attardi and Neelakanth Nadgir},
441 title = {A Comparison of Memory Allocators in Multiprocessors},
442 journal = {Sun Developer Network},
443 month = jun,
444 year = 2003,
445 note = {\url{http://developers.sun.com/solaris/articles/multiproc/multiproc.html}},
446}
447
448@unpublished{memlayout,
449 author = {Peter Jay Salzman},
450 title = {Memory Layout and the Stack},
451 journal = {Using GNU's GDB Debugger},
452 note = {\url{http://dirac.org/linux/gdb/02a-Memory\_Layout\_And\_The\_Stack.php}},
453}
454
455@unpublished{Ferguson07,
456 author = {Justin N. Ferguson},
457 title = {Understanding the Heap by Breaking It},
458 note = {\url{https://www.blackhat.com/presentations/bh-usa-07/Ferguson/Whitepaper/bh-usa-07-ferguson-WP.pdf}},
459}
460
461@inproceedings{Huang06,
462 author = {Xianglong Huang and Brian T Lewis and Kathryn S McKinley},
463 title = {Dynamic Code Management: Improving Whole Program Code Locality in Managed Runtimes},
464 organization= {VEE '06: Proc. of the 2nd International Conf. on Virtual Execution Environments},
465 year = 2006,
466 location = {Ottawa, Ontario, Canada},
467 publisher = {ACM Press},
468 address = {New York, NY, USA},
469 pages = {133-143},
470}
471
472@inproceedings{Herlihy03,
473 author = {M. Herlihy and V. Luchangco and M. Moir},
474 title = {Obstruction-free Synchronization: Double-ended Queues as an Example},
475 organization= {Proceedings of the 23rd IEEE International Conference on Distributed Computing Systems},
476 year = 2003,
477 month = may,
478 note = {\url{http://www.cs.brown.edu/~mph/publications.html}},
479}
480
481@techreport{Detlefs93,
482 author = {David L. Detlefs and Al Dosser and Benjamin Zorn},
483 title = {Memory Allocation Costs in Large {C} and {C++} Programs},
484 number = {CU-CS-665-93},
485 institution = {University of Colorado},
486 address = {130 Lytton Avenue, Palo Alto, CA 94301 and Campus Box 430, Boulder, CO 80309},
487 year = 1993,
488 note = {\url{http://citeseer.ist.psu.edu/detlefs93memory.html}},
489}
490
491@inproceedings{Oyama99,
492 author = {Y. Oyama and K. Taura and A. Yonezawa},
493 title = {Executing Parallel Programs With Synchronization Bottlenecks Efficiently},
494 organization= {Proceedings of International Workshop on Parallel and Distributed Computing for Symbolic and Irregular Applications (PDSIA '99)},
495 year = {1999},
496 pages = {182--204},
497 publisher = {World Scientific},
498 address = {Sendai, Japan},
499}
500
501@inproceedings{Dice02,
502 author = {Dave Dice and Alex Garthwaite},
503 title = {Mostly Lock-Free Malloc},
504 organization= {Proceedings of the 3rd international symposium on Memory management (ISMM'02)},
505 month = jun,
506 year = 2002,
507 pages = {163-174},
508 location = {Berlin, Germany},
509 publisher = {ACM},
510 address = {New York, NY, USA},
511}
512
513@article{Sleator85,
514 author = {Sleator, Daniel Dominic and Tarjan, Robert Endre},
515 title = {Self-Adjusting Binary Search Trees},
516 journal = jacm,
517 volume = 32,
518 number = 3,
519 year = 1985,
520 issn = {0004-5411},
521 pages = {652-686},
522 doi = {http://doi.acm.org.proxy.lib.uwaterloo.ca/10.1145/3828.3835},
523 address = {New York, NY, USA},
524}
525
526@techreport{gidpt04,
527 author = {Anders Gidenstam and Marina Papatriantafilou and Philippas Tsigas},
528 title = {Allocating Memory in a Lock-Free Manner},
529 number = {2004-04},
530 institution = {Computing Science},
531 address = {Chalmers University of Technology},
532 year = 2004,
533 note = {\url{http://citeseer.ist.psu.edu/gidenstam04allocating.html}},
534}
535
536@phdthesis{berger02thesis,
537 author = {Emery Berger},
538 title = {Memory Management for High-Performance Applications},
539 school = {The University of Texas at Austin},
540 year = 2002,
541 month = aug,
542 note = {\url{http://citeseer.ist.psu.edu/article/berger02memory.html}},
543}
544
545@misc{sgimisc,
546 author = {SGI},
547 title = {The Standard Template Library for {C++}},
548 howpublished= {\url{www.sgi.com/tech/stl/Allocators.html}},
549}
550
551@misc{ptmalloc3,
552 author = {Wolfram Gloger},
553 title = {ptmalloc version 3},
554 month = may,
555 year = 2006,
556 howpublished= {\url{http://www.malloc.de/malloc/ptmalloc3-current.tar.gz}},
557}
558
559@misc{tbbmalloc,
560 key = {tbbmalloc},
561 author = {{multiple contributors}},
562 title = {Threading Building Blocks},
563 month = mar,
564 year = 2020,
565 howpublished= {\url{https://github.com/oneapi-src/oneTBB/releases/tag/v2020.2}},
566}
567
568@misc{GNUallocAPI,
569 author = {GNU},
570 title = {Summary of malloc-Related Functions},
571 year = 2020,
572 howpublished= {\url{https://www.gnu.org/software/libc/manual/html\_node/Summary-of-Malloc.html}},
573}
574
575@misc{SeriallyReusable,
576 author = {IBM},
577 title = {Serially reusable programs},
578 month = mar,
579 year = 2021,
580 howpublished= {\url{https://www.ibm.com/docs/en/ztpf/1.1.0.15?topic=structures-serially-reusable-programs}},
581}
582
583@misc{librseq,
584 author = {Mathieu Desnoyers},
585 title = {Library for Restartable Sequences},
586 month = mar,
587 year = 2022,
588 howpublished= {\url{https://github.com/compudj/librseq}},
589}
590
591@misc{glibc,
592 key = {glibc},
593 author = {{multiple contributors}},
594 title = {glibc version 2.31},
595 month = feb,
596 year = 2020,
597 howpublished= {\url{https://www.gnu.org/software/libc}},
598}
599
600@misc{jemalloc,
601 key = {jemalloc},
602 author = {{multiple contributors}},
603 title = {jemalloc version 5.2.1},
604 month = apr,
605 year = 2022,
606 howpublished= {\url{https://github.com/jemalloc/jemalloc}},
607}
608
609@misc{Evans06,
610 author = {Jason Evans},
611 title = {A Scalable Concurrent \texttt{malloc(3)} Implementation for {FreeBSD}},
612 month = apr,
613 year = 2006,
614 howpublished= {\url{https://papers.freebsd.org/2006/bsdcan/evans-jemalloc.files/evans-jemalloc-paper.pdf}},
615}
616
617@misc{uniformPRNG,
618 author = {\CC Standard Library},
619 title = {\lstinline{uniform_int_distribution}},
620 month = apr,
621 year = 2022,
622 howpublished= {\url{https://en.cppreference.com/w/cpp/numeric/random/uniform_int_distribution}},
623}
624
625@misc{fisherPRNG,
626 author = {\CC Standard Library},
627 title = {\lstinline{fister_f_distribution}},
628 month = apr,
629 year = 2022,
630 howpublished= {\url{https://www.cplusplus.com/reference/random/fisher_f_distribution}},
631}
632
633@misc{streamflowweb,
634 author = {Scott Schneider and Christos Antonopoulos and Dimitrios Nikolopoulos},
635 title = {Streamflow},
636 howpublished= {\url{http://people.cs.vt.edu/~scschnei/streamflow}},
637}
638
639@inproceedings{Blumofe94,
640 author = {R. Blumofe and C. Leiserson},
641 title = {Scheduling Multithreaded Computations by Work Stealing},
642 organization= {Proceedings of the 35th Annual Symposium on Foundations of Computer Science, Santa Fe, New Mexico.},
643 pages = {356-368},
644 year = 1994,
645 month = nov,
646 note = {\url{http://citeseer.ist.psu.edu/article/blumofe94scheduling.html}},
647}
648
649@article{Chang01,
650 author = {J. Morris Chang and Woo Hyong Lee and Witawas Srisa-an},
651 title = {A Study of the Allocation Behavior of {C++} Programs},
652 journal = {J. Syst. Softw.},
653 volume = 57,
654 number = 2,
655 year = 2001,
656 issn = {0164-1212},
657 pages = {107-118},
658 publisher = {Elsevier Science Inc.},
659 address = {New York, NY, USA}
660}
661
662@misc{wilson-locality,
663 author = {Paul R. Wilson},
664 title = {Locality of Reference, Patterns in Program Behavior, Memory Management, and Memory Hierarchies},
665 note = {\url{http://citeseer.ist.psu.edu/337869.html}},
666}
667
668@inproceedings{grunwald-locality,
669 author = {Dirk Grunwald and Benjamin Zorn and Robert Henderson},
670 title = {Improving the Cache Locality of Memory Allocation},
671 organization= {PLDI '93: Proceedings of the ACM SIGPLAN 1993 conference on Programming language design and implementation},
672 year = 1993,
673 pages = {177-186},
674 location = {Albuquerque, New Mexico, USA},
675 publisher = {ACM Press},
676 address = {New York, NY, USA}
677}
678
679@inproceedings{Bolosky93,
680 author = {William J. Bolosky and Michael L. Scott},
681 title = {False Sharing and its Effect on Shared Memory Performance},
682 organization= {4th Symp. on Experiences with Distributed and Multiprocessor Systems (SEDMS)},
683 year = 1993,
684 location = {San Diego, CA, USA},
685 publisher = {USENIX Association},
686 address = {Berkeley, CA, USA},
687 note = {\url{https://www.cs.rochester.edu/u/scott/papers/1993\_SEDMS\_false\_sharing.pdf}},
688}
689
690@article{Alexandrescu01b,
691 author = {Andrei Alexandrescu},
692 title = {{volatile} -- Multithreaded Programmer's Best Friend},
693 journal = {Dr. Dobb's},
694 month = feb,
695 year = 2001,
696 note = {\url{http://www.ddj.com/cpp/184403766}},
697}
698
699@misc{Desnoyers19,
700 author = {Mathieu Desnoyers},
701 title = {The 5-year journey to bring restartable sequences to Linux},
702 month = feb,
703 year = 2019,
704 howpublished={\url{https://www.efficios.com/blog/2019/02/08/linux-restartable-sequences}},
705}
706
707@article{Attardi03,
708 author = {Joseph Attardi and Neelakanth Nadgir},
709 title = {A Comparison of Memory Allocators in Multiprocessors},
710 journal = {Sun Developer Network},
711 month = jun,
712 year = 2003,
713 note = {\url{http://developers.sun.com/solaris/articles/multiproc/multiproc.html}},
714}
715
716@unpublished{Ferguson07,
717 author = {Justin N. Ferguson},
718 title = {Understanding the Heap by Breaking It},
719 note = {\url{https://www.blackhat.com/presentations/bh-usa-07/Ferguson/Whitepaper/bh-usa-07-ferguson-WP.pdf}},
720}
721
722@inproceedings{Herlihy03,
723 author = {M. Herlihy and V. Luchangco and M. Moir},
724 title = {Obstruction-free Synchronization: Double-ended Queues as an Example},
725 organization= {Proceedings of the 23rd IEEE International Conference on Distributed Computing Systems},
726 year = 2003,
727 month = may,
728 note = {\url{http://www.cs.brown.edu/~mph/publications.html}},
729}
730
731@article{Fatourou12,
732 keywords = {synchronization techniques, hierarchical algorithms, concurrent data structures, combining, blocking algorithms},
733 author = {Panagiota Fatourou and Nikolaos D. Kallimanis},
734 title = {Revisiting the Combining Synchronization Technique},
735 publisher = {ACM},
736 address = {New York, NY, USA},
737 volume = 47,
738 number = 8,
739 journal = {SIGPLAN Not.},
740 year = 2012,
741 month = feb,
742 pages = {257-266},
743}
744
745@manual{Go1.3,
746 keywords = {conservative garbage collection},
747 title = {Go 1.3 Release Notes},
748 month = jun,
749 year = 2014,
750 note = {\url{https://go.dev/doc/go1.3\#garbage_collector}},
751}
752
753@misc{JavaScriptGC,
754 keywords = {Intel, TBB},
755 author = {Steve Fink},
756 title = {JavaScript: Clawing Our Way Back To Precision},
757 howpublished= {\url{https://blog.mozilla.org/javascript/2013/07/18/clawing-our-way-back-to-precision/}},
758 month = jul,
759 year = 2013,
760}
Note: See TracBrowser for help on using the repository browser.