source: doc/theses/thierry_delisle_PhD/thesis/local.bib @ 7a0f798b

ADTast-experimentalpthread-emulation
Last change on this file since 7a0f798b was 7a0f798b, checked in by Thierry Delisle <tdelisle@…>, 2 years ago

Merged peter's last changes and filled in most of the TODOs

  • Property mode set to 100644
File size: 40.8 KB
Line 
1% --------------------------------------------------
2% Cforall
3@misc{cfa:frontpage,
4  howpublished = {\href{https://cforall.uwaterloo.ca}{https://\-cforall.uwaterloo.ca}}
5}
6@article{cfa:typesystem,
7  author    = {Aaron Moss and Robert Schluntz and Peter A. Buhr},
8  title     = {{\CFA} : Adding modern programming language features to {C}},
9  journal   = {Softw. Pract. Exp.},
10  volume    = {48},
11  number    = {12},
12  pages     = {2111--2146},
13  year      = {2018},
14  url       = {https://doi.org/10.1002/spe.2624},
15  doi       = {10.1002/spe.2624},
16  timestamp = {Thu, 09 Apr 2020 17:14:14 +0200},
17  biburl    = {https://dblp.org/rec/journals/spe/MossSB18.bib},
18  bibsource = {dblp computer science bibliography, https://dblp.org}
19}
20
21
22
23% --------------------------------------------------
24% old survey mostly about job scheduling
25% talks about the literature mostly centering on upfront/static scheduling with task graphs as inputs
26% already mentions multi-core
27@article{DBLP:journals/csur/Gonzalez77,
28  author    = {Mario J. Gonzalez Jr.},
29  title     = {Deterministic Processor Scheduling},
30  journal   = {{ACM} Comput. Surv.},
31  volume    = {9},
32  number    = {3},
33  pages     = {173--204},
34  year      = {1977},
35  url       = {https://doi.org/10.1145/356698.356700},
36  doi       = {10.1145/356698.356700},
37  timestamp = {Tue, 06 Nov 2018 12:50:48 +0100},
38  biburl    = {https://dblp.org/rec/journals/csur/Gonzalez77.bib},
39  bibsource = {dblp computer science bibliography, https://dblp.org}
40}
41
42% very short survey, highlights more interseting surveys as :
43% Casavant and Kuhl [1988], Chapin [1993], Shirazi et al. [1995], and Singhal and Shivaratri [1994]
44% still seems to mention static or partially static scheduling as a dominating trend
45@article{DBLP:journals/csur/Chapin96,
46  author    = {Steve J. Chapin},
47  title     = {Distributed and Multiprocessor Scheduling},
48  journal   = {{ACM} Comput. Surv.},
49  volume    = {28},
50  number    = {1},
51  pages     = {233--235},
52  year      = {1996},
53  url       = {https://doi.org/10.1145/234313.234410},
54  doi       = {10.1145/234313.234410},
55  timestamp = {Tue, 06 Nov 2018 12:50:49 +0100},
56  biburl    = {https://dblp.org/rec/journals/csur/Chapin96.bib},
57  bibsource = {dblp computer science bibliography, https://dblp.org}
58}
59
60% more comprehensive survey that discusses many algorithms
61% still exclusively static scheduling
62@article{DBLP:journals/csur/KwokA99,
63  author    = {Yu{-}Kwong Kwok and Ishfaq Ahmad},
64  title     = {Static scheduling algorithms for allocating directed task graphs to multiprocessors},
65  journal   = {{ACM} Comput. Surv.},
66  volume    = {31},
67  number    = {4},
68  pages     = {406--471},
69  year      = {1999},
70  url       = {https://doi.org/10.1145/344588.344618},
71  doi       = {10.1145/344588.344618},
72  timestamp = {Fri, 30 Nov 2018 12:48:46 +0100},
73  biburl    = {https://dblp.org/rec/journals/csur/KwokA99.bib},
74  bibsource = {dblp computer science bibliography, https://dblp.org}
75}
76
77% recent survey on kernel-thread scheduling
78% specifically focusing on schedulers that try to optimize to
79% reduce contention or reduce cache conflicts or improve some other ressource sharing metric
80@article{DBLP:journals/csur/ZhuravlevSBFP12,
81  author    = {Sergey Zhuravlev and Juan Carlos Saez and Sergey Blagodurov and Alexandra Fedorova and Manuel Prieto},
82  title     = {Survey of scheduling techniques for addressing shared resources in multicore processors},
83  journal   = {{ACM} Comput. Surv.},
84  volume    = {45},
85  number    = {1},
86  pages     = {4:1--4:28},
87  year      = {2012},
88  url       = {https://doi.org/10.1145/2379776.2379780},
89  doi       = {10.1145/2379776.2379780},
90  timestamp = {Tue, 06 Nov 2018 12:50:49 +0100},
91  biburl    = {https://dblp.org/rec/journals/csur/ZhuravlevSBFP12.bib},
92  bibsource = {dblp computer science bibliography, https://dblp.org}
93}
94
95% great survey on work-stealing
96% highlights many of the recent work both theoretical and not
97@article{DBLP:journals/ijpp/YangH18,
98  author    = {Jixiang Yang and Qingbi He},
99  title     = {Scheduling Parallel Computations by Work Stealing: {A} Survey},
100  journal   = {Int. J. Parallel Program.},
101  volume    = {46},
102  number    = {2},
103  pages     = {173--197},
104  year      = {2018},
105  url       = {https://doi.org/10.1007/s10766-016-0484-8},
106  doi       = {10.1007/s10766-016-0484-8},
107  timestamp = {Wed, 01 Apr 2020 08:50:06 +0200},
108  biburl    = {https://dblp.org/rec/journals/ijpp/YangH18.bib},
109  bibsource = {dblp computer science bibliography, https://dblp.org}
110}
111
112% --------------------------------------------------
113% introduction of work stealing
114@inproceedings{DBLP:conf/fpca/BurtonS81,
115  author    = {F. Warren Burton and M. Ronan Sleep},
116  editor    = {Arvind and Jack B. Dennis},
117  title     = {Executing functional programs on a virtual tree of processors},
118  booktitle = {Proceedings of the 1981 conference on Functional programming languages and computer architecture, {FPCA} 1981, Wentworth, New Hampshire, USA, October 1981},
119  pages     = {187--194},
120  publisher = {{ACM}},
121  year      = {1981},
122  url       = {https://doi.org/10.1145/800223.806778},
123  doi       = {10.1145/800223.806778},
124  timestamp = {Tue, 06 Nov 2018 11:07:48 +0100},
125  biburl    = {https://dblp.org/rec/conf/fpca/BurtonS81.bib},
126  bibsource = {dblp computer science bibliography, https://dblp.org}
127}
128
129% introduction of randomized work stealing
130@inproceedings{DBLP:conf/focs/Blumofe94,
131  author    = {Robert D. Blumofe},
132  title     = {Scheduling Multithreaded Computations by Work Stealing},
133  booktitle = {35th Annual Symposium on Foundations of Computer Science, Santa Fe, New Mexico, USA, 20-22 November 1994},
134  pages     = {356--368},
135  publisher = {{IEEE} Computer Society},
136  year      = {1994},
137  url       = {https://doi.org/10.1109/SFCS.1994.365680},
138  doi       = {10.1109/SFCS.1994.365680},
139  timestamp = {Wed, 16 Oct 2019 14:14:54 +0200},
140  biburl    = {https://dblp.org/rec/conf/focs/Blumofe94.bib},
141  bibsource = {dblp computer science bibliography, https://dblp.org}
142}
143
144% migration cost
145@inproceedings{DBLP:conf/sigmetrics/SquillanteN91,
146  author    = {Mark S. Squillante and Randolph D. Nelson},
147  editor    = {Tom W. Keller},
148  title     = {Analysis of Task Migration in Shared-Memory Multiprocessor Scheduling},
149  booktitle = {Proceedings of the 1991 {ACM} {SIGMETRICS} conference on Measurement and modeling of computer systems, San Diego, California, USA, May 21-24, 1991},
150  pages     = {143--155},
151  publisher = {{ACM}},
152  year      = {1991},
153  url       = {https://doi.org/10.1145/107971.107987},
154  doi       = {10.1145/107971.107987},
155  timestamp = {Sat, 07 Sep 2019 11:59:22 +0200},
156  biburl    = {https://dblp.org/rec/conf/sigmetrics/SquillanteN91.bib},
157  bibsource = {dblp computer science bibliography, https://dblp.org}
158}
159
160@article{DBLP:journals/pe/EagerLZ86,
161  author    = {Derek L. Eager and Edward D. Lazowska and John Zahorjan},
162  title     = {A Comparison of Receiver-Initiated and Sender-Initiated Adaptive Load Sharing},
163  journal   = {Perform. Evaluation},
164  volume    = {6},
165  number    = {1},
166  pages     = {53--68},
167  year      = {1986},
168  url       = {https://doi.org/10.1016/0166-5316(86)90008-8},
169  doi       = {10.1016/0166-5316(86)90008-8},
170  timestamp = {Sat, 22 Feb 2020 19:26:16 +0100},
171  biburl    = {https://dblp.org/rec/journals/pe/EagerLZ86.bib},
172  bibsource = {dblp computer science bibliography, https://dblp.org}
173}
174
175% affinity for work-stealing
176@article{DBLP:journals/tpds/SquillanteL93,
177  author    = {Mark S. Squillante and Edward D. Lazowska},
178  title     = {Using Processor-Cache Affinity Information in Shared-Memory Multiprocessor Scheduling},
179  journal   = {{IEEE} Trans. Parallel Distributed Syst.},
180  volume    = {4},
181  number    = {2},
182  pages     = {131--143},
183  year      = {1993},
184  url       = {https://doi.org/10.1109/71.207589},
185  doi       = {10.1109/71.207589},
186  timestamp = {Fri, 02 Oct 2020 14:40:30 +0200},
187  biburl    = {https://dblp.org/rec/journals/tpds/SquillanteL93.bib},
188  bibsource = {dblp computer science bibliography, https://dblp.org}
189}
190
191 systems with affinity scheduling
192@inproceedings{squillante2001threshold,
193  title={Threshold-based priority policies for parallel-server systems with affinity scheduling},
194  author={Squillante, Mark S and Xia, Cathy H and Yao, David D and Zhang, Li},
195  booktitle={Proceedings of the 2001 American Control Conference.(Cat. No. 01CH37148)},
196  volume={4},
197  pages={2992--2999},
198  year={2001},
199  organization={IEEE}
200}
201
202@article{DBLP:journals/mst/AcarBB02,
203  author    = {Umut A. Acar and Guy E. Blelloch and Robert D. Blumofe},
204  title     = {The Data Locality of Work Stealing},
205  journal   = {Theory Comput. Syst.},
206  volume    = {35},
207  number    = {3},
208  pages     = {321--347},
209  year      = {2002},
210  url       = {https://doi.org/10.1007/s00224-002-1057-3},
211  doi       = {10.1007/s00224-002-1057-3},
212  timestamp = {Sun, 28 May 2017 13:18:25 +0200},
213  biburl    = {https://dblp.org/rec/journals/mst/AcarBB02.bib},
214  bibsource = {dblp computer science bibliography, https://dblp.org}
215}
216
217@article{DBLP:journals/tcs/NarangS11,
218  author    = {Ankur Narang and Rudrapatna K. Shyamasundar},
219  title     = {Performance driven distributed scheduling of parallel hybrid computations},
220  journal   = {Theor. Comput. Sci.},
221  volume    = {412},
222  number    = {32},
223  pages     = {4212--4225},
224  year      = {2011},
225  url       = {https://doi.org/10.1016/j.tcs.2010.11.044},
226  doi       = {10.1016/j.tcs.2010.11.044},
227  timestamp = {Sun, 28 May 2017 13:20:06 +0200},
228  biburl    = {https://dblp.org/rec/journals/tcs/NarangS11.bib},
229  bibsource = {dblp computer science bibliography, https://dblp.org}
230}
231
232Optimization via reflection on work stealing in TBB
233@inproceedings{DBLP:conf/ipps/RobisonVK08,
234  author    = {Arch Robison and Michael Voss and Alexey Kukanov},
235  title     = {Optimization via Reflection on Work Stealing in {TBB}},
236  booktitle = {22nd {IEEE} International Symposium on Parallel and Distributed Processing, {IPDPS} 2008, Miami, Florida USA, April 14-18, 2008},
237  pages     = {1--8},
238  publisher = {{IEEE}},
239  year      = {2008},
240  url       = {https://doi.org/10.1109/IPDPS.2008.4536188},
241  doi       = {10.1109/IPDPS.2008.4536188},
242  timestamp = {Wed, 16 Oct 2019 14:14:51 +0200},
243  biburl    = {https://dblp.org/rec/conf/ipps/RobisonVK08.bib},
244  bibsource = {dblp computer science bibliography, https://dblp.org}
245}
246
247@article{DBLP:journals/ipl/SuksompongLS16,
248  author    = {Warut Suksompong and Charles E. Leiserson and Tao B. Schardl},
249  title     = {On the efficiency of localized work stealing},
250  journal   = {Inf. Process. Lett.},
251  volume    = {116},
252  number    = {2},
253  pages     = {100--106},
254  year      = {2016},
255  url       = {https://doi.org/10.1016/j.ipl.2015.10.002},
256  doi       = {10.1016/j.ipl.2015.10.002},
257  timestamp = {Fri, 26 May 2017 22:54:40 +0200},
258  biburl    = {https://dblp.org/rec/journals/ipl/SuksompongLS16.bib},
259  bibsource = {dblp computer science bibliography, https://dblp.org}
260}
261
262%theory
263@article{DBLP:journals/jpdc/MirchandaneyTS90,
264  author    = {Ravi Mirchandaney and Donald F. Towsley and John A. Stankovic},
265  title     = {Adaptive Load Sharing in Heterogeneous Distributed Systems},
266  journal   = {J. Parallel Distributed Comput.},
267  volume    = {9},
268  number    = {4},
269  pages     = {331--346},
270  year      = {1990},
271  url       = {https://doi.org/10.1016/0743-7315(90)90118-9},
272  doi       = {10.1016/0743-7315(90)90118-9},
273  timestamp = {Sat, 22 Feb 2020 19:36:31 +0100},
274  biburl    = {https://dblp.org/rec/journals/jpdc/MirchandaneyTS90.bib},
275  bibsource = {dblp computer science bibliography, https://dblp.org}
276}
277
278@article{DBLP:journals/mst/BenderR02,
279  author    = {Michael A. Bender and Michael O. Rabin},
280  title     = {Online Scheduling of Parallel Programs on Heterogeneous Systems with Applications to Cilk},
281  journal   = {Theory Comput. Syst.},
282  volume    = {35},
283  number    = {3},
284  pages     = {289--304},
285  year      = {2002},
286  url       = {https://doi.org/10.1007/s00224-002-1055-5},
287  doi       = {10.1007/s00224-002-1055-5},
288  timestamp = {Sun, 28 May 2017 13:18:24 +0200},
289  biburl    = {https://dblp.org/rec/journals/mst/BenderR02.bib},
290  bibsource = {dblp computer science bibliography, https://dblp.org}
291}
292
293@inproceedings{DBLP:conf/sigmetrics/GastG10,
294  author    = {Nicolas Gast and Bruno Gaujal},
295  editor    = {Vishal Misra and Paul Barford and Mark S. Squillante},
296  title     = {A mean field model of work stealing in large-scale systems},
297  booktitle = {{SIGMETRICS} 2010, Proceedings of the 2010 {ACM} {SIGMETRICS} International Conference on Measurement and Modeling of Computer Systems, New York, New York, USA, 14-18 June 2010},
298  pages     = {13--24},
299  publisher = {{ACM}},
300  year      = {2010},
301  url       = {https://doi.org/10.1145/1811039.1811042},
302  doi       = {10.1145/1811039.1811042},
303  timestamp = {Tue, 06 Nov 2018 11:07:18 +0100},
304  biburl    = {https://dblp.org/rec/conf/sigmetrics/GastG10.bib},
305  bibsource = {dblp computer science bibliography, https://dblp.org}
306}
307
308@article{DBLP:journals/jacm/BlellochGM99,
309  author    = {Guy E. Blelloch and Phillip B. Gibbons and Yossi Matias},
310  title     = {Provably Efficient Scheduling for Languages with Fine-Grained Parallelism},
311  journal   = {J. {ACM}},
312  volume    = {46},
313  number    = {2},
314  pages     = {281--321},
315  year      = {1999},
316  url       = {https://doi.org/10.1145/301970.301974},
317  doi       = {10.1145/301970.301974},
318  timestamp = {Tue, 06 Nov 2018 12:51:45 +0100},
319  biburl    = {https://dblp.org/rec/journals/jacm/BlellochGM99.bib},
320  bibsource = {dblp computer science bibliography, https://dblp.org}
321}
322
323@article{DBLP:journals/siamcomp/BerenbrinkFG03,
324  author    = {Petra Berenbrink and Tom Friedetzky and Leslie Ann Goldberg},
325  title     = {The Natural Work-Stealing Algorithm is Stable},
326  journal   = {{SIAM} J. Comput.},
327  volume    = {32},
328  number    = {5},
329  pages     = {1260--1279},
330  year      = {2003},
331  url       = {https://doi.org/10.1137/S0097539701399551},
332  doi       = {10.1137/S0097539701399551},
333  timestamp = {Sat, 27 May 2017 14:22:58 +0200},
334  biburl    = {https://dblp.org/rec/journals/siamcomp/BerenbrinkFG03.bib},
335  bibsource = {dblp computer science bibliography, https://dblp.org}
336}
337
338@article{DBLP:journals/mst/AroraBP01,
339  author    = {Nimar S. Arora and Robert D. Blumofe and C. Greg Plaxton},
340  title     = {Thread Scheduling for Multiprogrammed Multiprocessors},
341  journal   = {Theory Comput. Syst.},
342  volume    = {34},
343  number    = {2},
344  pages     = {115--144},
345  year      = {2001},
346  url       = {https://doi.org/10.1007/s00224-001-0004-z},
347  doi       = {10.1007/s00224-001-0004-z},
348  timestamp = {Sun, 28 May 2017 13:18:24 +0200},
349  biburl    = {https://dblp.org/rec/journals/mst/AroraBP01.bib},
350  bibsource = {dblp computer science bibliography, https://dblp.org}
351}
352
353@article{DBLP:journals/anor/TchiboukdjianGT13,
354  author    = {Marc Tchiboukdjian and Nicolas Gast and Denis Trystram},
355  title     = {Decentralized list scheduling},
356  journal   = {Ann. Oper. Res.},
357  volume    = {207},
358  number    = {1},
359  pages     = {237--259},
360  year      = {2013},
361  url       = {https://doi.org/10.1007/s10479-012-1149-7},
362  doi       = {10.1007/s10479-012-1149-7},
363  timestamp = {Thu, 13 Aug 2020 12:41:25 +0200},
364  biburl    = {https://dblp.org/rec/journals/anor/TchiboukdjianGT13.bib},
365  bibsource = {dblp computer science bibliography, https://dblp.org}
366}
367
368@inproceedings{DBLP:conf/isaac/TchiboukdjianGTRB10,
369  author    = {Marc Tchiboukdjian and Nicolas Gast and Denis Trystram and Jean{-}Louis Roch and Julien Bernard},
370  editor    = {Otfried Cheong and Kyung{-}Yong Chwa and Kunsoo Park},
371  title     = {A Tighter Analysis of Work Stealing},
372  booktitle = {Algorithms and Computation - 21st International Symposium, {ISAAC} 2010, Jeju Island, Korea, December 15-17, 2010, Proceedings, Part {II}},
373  series    = {Lecture Notes in Computer Science},
374  volume    = {6507},
375  pages     = {291--302},
376  publisher = {Springer},
377  year      = {2010},
378  url       = {https://doi.org/10.1007/978-3-642-17514-5\_25},
379  doi       = {10.1007/978-3-642-17514-5\_25},
380  timestamp = {Fri, 13 Dec 2019 13:08:09 +0100},
381  biburl    = {https://dblp.org/rec/conf/isaac/TchiboukdjianGTRB10.bib},
382  bibsource = {dblp computer science bibliography, https://dblp.org}
383}
384
385@inproceedings{DBLP:conf/ppopp/AgrawalLS10,
386  author    = {Kunal Agrawal and Charles E. Leiserson and Jim Sukha},
387  editor    = {R. Govindarajan and David A. Padua and Mary W. Hall},
388  title     = {Helper locks for fork-join parallel programming},
389  booktitle = {Proceedings of the 15th {ACM} {SIGPLAN} Symposium on Principles and Practice of Parallel Programming, {PPOPP} 2010, Bangalore, India, January 9-14, 2010},
390  pages     = {245--256},
391  publisher = {{ACM}},
392  year      = {2010},
393  url       = {https://doi.org/10.1145/1693453.1693487},
394  doi       = {10.1145/1693453.1693487},
395  timestamp = {Tue, 06 Nov 2018 16:57:27 +0100},
396  biburl    = {https://dblp.org/rec/conf/ppopp/AgrawalLS10.bib},
397  bibsource = {dblp computer science bibliography, https://dblp.org}
398}
399
400@inproceedings{DBLP:conf/spaa/AgrawalFLSSU14,
401  author    = {Kunal Agrawal and Jeremy T. Fineman and Kefu Lu and Brendan Sheridan and Jim Sukha and Robert Utterback},
402  editor    = {Guy E. Blelloch and Peter Sanders},
403  title     = {Provably good scheduling for parallel programs that use data structures through implicit batching},
404  booktitle = {26th {ACM} Symposium on Parallelism in Algorithms and Architectures, {SPAA} '14, Prague, Czech Republic - June 23 - 25, 2014},
405  pages     = {84--95},
406  publisher = {{ACM}},
407  year      = {2014},
408  url       = {https://doi.org/10.1145/2612669.2612688},
409  doi       = {10.1145/2612669.2612688},
410  timestamp = {Wed, 21 Nov 2018 11:18:43 +0100},
411  biburl    = {https://dblp.org/rec/conf/spaa/AgrawalFLSSU14.bib},
412  bibsource = {dblp computer science bibliography, https://dblp.org}
413}
414
415@inproceedings{DBLP:conf/ipps/ColeR13,
416  author    = {Richard Cole and
417               Vijaya Ramachandran},
418  title     = {Analysis of Randomized Work Stealing with False Sharing},
419  booktitle = {27th {IEEE} International Symposium on Parallel and Distributed Processing,
420               {IPDPS} 2013, Cambridge, MA, USA, May 20-24, 2013},
421  pages     = {985--998},
422  publisher = {{IEEE} Computer Society},
423  year      = {2013},
424  url       = {https://doi.org/10.1109/IPDPS.2013.86},
425  doi       = {10.1109/IPDPS.2013.86},
426  timestamp = {Wed, 16 Oct 2019 14:14:51 +0200},
427  biburl    = {https://dblp.org/rec/conf/ipps/ColeR13.bib},
428  bibsource = {dblp computer science bibliography, https://dblp.org}
429}
430
431@inproceedings{Albers12,
432    author      = {Susanne Albers and Antonios Antoniadis},
433    title       = {Race to Idle: New Algorithms for Speed Scaling with a Sleep State},
434    booktitle   = {Proceedings of the 2012  Annual ACM-SIAM Symposium on Discrete Algorithms (SODA)},
435    doi         = {10.1137/1.9781611973099.100},
436    URL         = {https://epubs.siam.org/doi/abs/10.1137/1.9781611973099.100},
437    eprint      = {https://epubs.siam.org/doi/pdf/10.1137/1.9781611973099.100},
438    year        = 2012,
439    month       = jan,
440    pages       = {1266-1285},
441}
442
443@inproceedings{atikoglu2012workload,
444  title={Workload analysis of a large-scale key-value store},
445  author={Atikoglu, Berk and Xu, Yuehai and Frachtenberg, Eitan and Jiang, Song and Paleczny, Mike},
446  booktitle={Proceedings of the 12th ACM SIGMETRICS/PERFORMANCE joint international conference on Measurement and Modeling of Computer Systems},
447  pages={53--64},
448  year={2012}
449}
450
451@article{schillings1996engineering,
452  title={Be engineering insights: Benaphores},
453  author={Schillings, Benoit},
454  journal={Be Newsletters},
455  volume={1},
456  number={26},
457  year={1996}
458}
459
460% Trevor's relaxed FIFO list
461@inproceedings{alistarh2018relaxed,
462  title={Relaxed schedulers can efficiently parallelize iterative algorithms},
463  author={Alistarh, Dan and Brown, Trevor and Kopinsky, Justin and Nadiradze, Giorgi},
464  booktitle={Proceedings of the 2018 ACM Symposium on Principles of Distributed Computing},
465  pages={377--386},
466  year={2018}
467}
468
469@article{zhuravlev2012survey,
470  title={Survey of energy-cognizant scheduling techniques},
471  author={Zhuravlev, Sergey and Saez, Juan Carlos and Blagodurov, Sergey and Fedorova, Alexandra and Prieto, Manuel},
472  journal={IEEE Transactions on Parallel and Distributed Systems},
473  volume={24},
474  number={7},
475  pages={1447--1464},
476  year={2012},
477  publisher={IEEE}
478}
479
480@article{vikranth2013topology,
481  title={Topology aware task stealing for on-chip NUMA multi-core processors},
482  author={Vikranth, BRWACRR and Wankar, Rajeev and Rao, C Raghavendra},
483  journal={Procedia Computer Science},
484  volume={18},
485  pages={379--388},
486  year={2013},
487  publisher={Elsevier}
488}
489
490@inproceedings{min2011hierarchical,
491  title={Hierarchical work stealing on manycore clusters},
492  author={Min, Seung-Jai and Iancu, Costin and Yelick, Katherine},
493  booktitle={Fifth Conference on Partitioned Global Address Space Programming Models (PGAS11)},
494  volume={625},
495  year={2011},
496  organization={Citeseer}
497}
498
499@article{ribic2014energy,
500  title={Energy-efficient work-stealing language runtimes},
501  author={Ribic, Haris and Liu, Yu David},
502  journal={ACM SIGARCH Computer Architecture News},
503  volume={42},
504  number={1},
505  pages={513--528},
506  year={2014},
507  publisher={ACM New York, NY, USA}
508}
509
510@inproceedings{torng2016asymmetry,
511  title={Asymmetry-aware work-stealing runtimes},
512  author={Torng, Christopher and Wang, Moyang and Batten, Christopher},
513  booktitle={2016 ACM/IEEE 43rd Annual International Symposium on Computer Architecture (ISCA)},
514  pages={40--52},
515  year={2016},
516  organization={IEEE}
517}
518
519% --------------------------------------------------
520% ULE FreeBSD scheduler
521@inproceedings{DBLP:conf/bsdcon/Roberson03,
522  author    = {Jeff Roberson},
523  editor    = {Gregory Neil Shapiro},
524  title     = {{ULE:} {A} Modern Scheduler for FreeBSD},
525  booktitle = {Proceedings of BSDCon 2003, San Mateo, California, USA, September 8-12, 2003},
526  pages     = {17--28},
527  publisher = {{USENIX}},
528  year      = {2003},
529  url       = {http://www.usenix.org/publications/library/proceedings/bsdcon03/tech/roberson.html},
530  timestamp = {Wed, 04 Jul 2018 13:06:34 +0200},
531  biburl    = {https://dblp.org/rec/conf/bsdcon/Roberson03.bib},
532  bibsource = {dblp computer science bibliography, https://dblp.org}
533}
534
535% --------------------------------------------------
536% Martin's LibFibre
537@article{DBLP:journals/pomacs/KarstenB20,
538  author    = {Martin Karsten and Saman Barghi},
539  title     = {User-level Threading: Have Your Cake and Eat It Too},
540  journal   = {Proc. {ACM} Meas. Anal. Comput. Syst.},
541  volume    = {4},
542  number    = {1},
543  pages     = {17:1--17:30},
544  year      = {2020},
545  url       = {https://doi.org/10.1145/3379483},
546  doi       = {10.1145/3379483},
547  timestamp = {Thu, 09 Jul 2020 22:58:54 +0200},
548  biburl    = {https://dblp.org/rec/journals/pomacs/KarstenB20.bib},
549  bibsource = {dblp computer science bibliography, https://dblp.org}
550}
551
552% --------------------------------------------------
553% Linux CFS
554@inproceedings{DBLP:conf/eurosys/LoziLFGQF16,
555  author    = {Jean{-}Pierre Lozi and Baptiste Lepers and Justin R. Funston and Fabien Gaud and Vivien Qu{\'{e}}ma and Alexandra Fedorova},
556  editor    = {Cristian Cadar and Peter R. Pietzuch and Kimberly Keeton and Rodrigo Rodrigues},
557  title     = {The Linux scheduler: a decade of wasted cores},
558  booktitle = {Proceedings of the Eleventh European Conference on Computer Systems, EuroSys 2016, London, United Kingdom, April 18-21, 2016},
559  pages     = {1:1--1:16},
560  publisher = {{ACM}},
561  year      = {2016},
562  url       = {https://doi.org/10.1145/2901318.2901326},
563  doi       = {10.1145/2901318.2901326},
564  timestamp = {Tue, 06 Nov 2018 16:58:31 +0100},
565  biburl    = {https://dblp.org/rec/conf/eurosys/LoziLFGQF16.bib},
566  bibsource = {dblp computer science bibliography, https://dblp.org}
567}
568
569@misc{MAN:linux/cfs,
570  title = {{CFS} Scheduler - The Linux Kernel documentation},
571  howpublished = {\href{https://www.kernel.org/doc/html/latest/scheduler/sched-design-CFS.html}{https://\-www.kernel.org/\-doc/\-html/\-latest/\-scheduler/\-sched-design-CFS.html}}
572}
573
574@misc{MAN:linux/cfs2,
575  title = {{CFS}: Completely fair process scheduling in Linux},
576  author = {Marty Kalin},
577  year = {2019},
578  month = {February},
579  howpublished = {\href{https://opensource.com/article/19/2/fair-scheduling-linux}{https://\-opensource.com/\-article/\-19/2\-/\-fair-scheduling-linux}}
580}
581
582@article{MAN:linux/cfs/pelt,
583  title={Per-entity load tracking},
584  author={Corbet, Jonathan},
585  journal={LWN article, available at: https://lwn.net/Articles/531853},
586  year={2013}
587}
588
589@misc{MAN:linux/cfs/balancing,
590  title={Reworking {CFS} load balancing},
591  journal={LWN article},
592  year={2019},
593  howpublished = {\href{https://lwn.net/Articles/793427}{https://\-lwn.net/\-Articles/\-793427}},
594}
595
596@manual{MAN:linux/sched,
597  title = {SCHED(7) - Linux Programmer's Manual},
598  url   = {https://man7.org/linux/man-pages/man7/sched.7.html},
599  year  = {2019},
600  month = {august}
601}
602
603@manual{MAN:bsd/kqueue,
604  title = {KQUEUE(2) - FreeBSD System Calls Manual},
605  url   = {https://www.freebsd.org/cgi/man.cgi?query=kqueue},
606  year  = {2020},
607  month = {may}
608}
609
610% Apple's MAC OS X
611@manual{MAN:apple/scheduler,
612  title = {Mach Scheduling and Thread Interfaces - Kernel Programming Guide},
613  organization = {Apple Inc.},
614  note = {\href{https://developer.apple.com/library/archive/documentation/Darwin/Conceptual/KernelProgramming/scheduler/scheduler.html}{https://\-developer.apple.com/\-library/archive/\-documentation/\-Darwin/\-Conceptual/\-KernelProgramming/\-scheduler/\-scheduler.html}}
615}
616
617@misc{MemcachedThreading,
618  author = {Oracle},
619  title = {MySQL 5.6 Reference Manual Including MySQL NDB Cluster 7.3-7.4 Reference Guide},
620  howpublished = {\href{https://docs.oracle.com/cd/E17952_01/mysql-5.6-en/ha-memcached-using-threads.html}{https://docs.oracle.com/\-cd/E17952\_01/\-mysql-5.6-en/\-ha-memcached-using-threads.html}},
621  note = "[Online; accessed 5-August-2022]"
622}
623
624Windows's Scheduler
625@inbook{MAN:windows/scheduler,
626  author = {Kate Chase and Mark E. Russinovich},
627  title = {Windows Internals},
628  chapter = {Processes, Threads, and Jobs in the Windows Operating System},
629  edition = {5th Edition},
630  publisher = {Microsoft Press},
631  year = {2009},
632  month = {June},
633  series = {Developer Reference},
634  howpublished = {\href{https://www.microsoftpressstore.com/articles/article.aspx?p=2233328&seqNum=7#:~:text=Overview\%20of\%20Windows\%20Scheduling,a\%20phenomenon\%20called\%20processor\%20affinity}{https://\-www.microsoftpressstore.com/\-articles/\-article.aspx?p=2233328&seqNum=7#:~:text=Overview\%20of\%20Windows\%20Scheduling,a\%20phenomenon\%20called\%20processor\%20affinity}}
635}
636
637@misc{GITHUB:go,
638  title = {GitHub - The Go Programming Language},
639  author = {The Go Programming Language},
640  howpublished = {\href{https://github.com/golang/go}{https://\-github.com/\-golang/\-go}},
641  version = {Change-Id: If07f40b1d73b8f276ee28ffb8b7214175e56c24d}
642}
643
644@inproceedings{YTUBE:go,
645  author = {Dmitry Vyukov},
646  title = {Go scheduler: Implementing language with lightweight concurrency},
647  year = {2019},
648  booktitle = {Hydra},
649  howpublished = {\href{https://www.youtube.com/watch?v=-K11rY57K7k&ab_channel=Hydra}{https://\-www.youtube.com/\-watch?v=-K11rY57K7k&ab_channel=Hydra}}
650}
651
652@inproceedings{:erlang,
653  author = {Kenneth Lundin, Ericsson AB},
654  title = {Inside the Erlang VM},
655  year = {2008},
656  booktitle = {Erlang User Conference},
657  howpublished = {\href{http://www.erlang.se/euc/08/euc_smp.pdf}{http://\-www.erlang.se/\-euc/\-08/\-euc_smp.pdf}}
658}
659
660@manual{MAN:tbb/scheduler,
661  title = {Scheduling Algorithm - Intel{\textregistered} Threading Building Blocks Developer Reference},
662  organization = {Intel{\textregistered}},
663  howpublished = {\href{https://www.threadingbuildingblocks.org/docs/help/reference/task_scheduler/scheduling_algorithm.html}{https://\-www.threadingbuildingblocks.org/\-docs/\-help/\-reference/\-task\_scheduler/\-scheduling\_algorithm.html}}
664}
665
666@manual{MAN:quasar,
667  title = {Quasar Core - Quasar User Manual},
668  organization = {Parallel Universe},
669  howpublished = {\href{https://docs.paralleluniverse.co/quasar}{https://\-docs.paralleluniverse.co/\-quasar}}
670}
671@misc{MAN:project-loom,
672  howpublished = {\href{https://www.baeldung.com/openjdk-project-loom}{https://\-www.baeldung.com/\-openjdk-project-loom}}
673}
674
675@misc{MAN:java/fork-join,
676  howpublished = {\href{https://www.baeldung.com/java-fork-join}{https://\-www.baeldung.com/\-java-fork-join}}
677}
678
679@misc{apache,
680  key = {Apache Software Foundation},
681  title = {{T}he {A}pache Web Server},
682  howpublished = {\href{http://httpd.apache.org}{http://\-httpd.apache.org}},
683  note = "[Online; accessed 6-June-2022]"
684}
685
686@misc{memcached,
687  key = {Brad Fitzpatrick},
688  title = {{M}emcached},
689  year = {2003},
690  howpublished = {\href{http://httpd.apache.org}{http://\-httpd.apache.org}},
691  note = "[Online; accessed 6-June-2022]"
692}
693
694@misc{libuv,
695  author = {libuv team},
696  title = {libuv: Asynchronous I/O made simple.},
697  howpublished = {\href{https://libuv.org/}{https://\-libuv.org/}},
698  note = "[Online; accessed 5-August-2022]"
699}
700
701@misc{SeriallyReusable,
702    author      = {IBM},
703    title       = {Serially reusable programs},
704    month       = mar,
705    howpublished= {\href{https://www.ibm.com/docs/en/ztpf/1.1.0.15?topic=structures-serially-reusable-programs}{https://www.ibm.com/\-docs/\-en/\-ztpf/\-1.1.0.15?\-topic=structures\--serially\--reusable-programs}},
706    year        = 2021,
707}
708
709@misc{GITHUB:mutilate,
710  title = {Mutilate: high-performance memcached load generator },
711  author = { Jacob Leverich },
712  howpublished = {\href{https://github.com/leverich/mutilate}{https://\-github.com/\-leverich/\-mutilate}},
713  version = {Change-Id: d65c6ef7c2f78ae05a9db3e37d7f6ddff1c0af64}
714}
715
716% --------------------------------------------------
717% Tech documents
718@techreport{rfc:tcp,
719  title={Transmission control protocol},
720  author={Postel, Jon},
721  year={1981}
722}
723
724@manual{win:priority,
725  key = {TaskSettings Priority},
726  title = {TaskSettings.Priority property},
727  year = "2020",
728  month = "September",
729  howpublished = {\href{https://docs.microsoft.com/en-us/windows/win32/taskschd/tasksettings-priority}{https://\-docs.microsoft.com/\-en-us/\-windows/\-win32/\-taskschd/\-tasksettings-priority}},
730  note = "[Online; accessed 5-August-2022]"
731}
732
733@manual{win:overlap,
734  key = {Synchronous and Asynchronous IO},
735  title = {Synchronous and Asynchronous I\/O},
736  year = "2021",
737  month = "March",
738  howpublished = {\href{https://docs.microsoft.com/en-us/windows/win32/fileio/synchronous-and-asynchronous-i-o}{https://\-docs.microsoft.com/\-en-us/\-windows/\-win32/\-fileio/\-synchronous-and-asynchronous-i-o}},
739  note = "[Online; accessed 5-August-2022]"
740}
741
742@book{russinovich2009windows,
743  title={Windows Internals},
744  author={Russinovich, M.E. and Solomon, D.A. and Ionescu, A.},
745  isbn={9780735625303},
746  lccn={2009927697},
747  series={Developer Reference Series},
748  url={https://books.google.ca/books?id=SfglSQAACAAJ},
749  year={2009},
750  publisher={Microsoft Press}
751}
752
753@manual{apple:gcd,
754  key = {Grand Central Dispatch},
755  title = {Grand Central Dispatch},
756  year = "2022",
757  author = {Apple Inc.},
758  howpublished = {https://developer.apple.com/documentation/DISPATCH},
759  note = "[Online; accessed 5-August-2022]"
760}
761
762@techreport{apple:gcd2,
763  key = {Grand Central Dispatch},
764  title = {Grand Central Dispatch, A better way to do multicore.},
765  year = "2009",
766  month = "August",
767  author = {Apple Inc.},
768  howpublished = {\href{http://web.archive.org/web/20090920043909/http://images.apple.com/macosx/technology/docs/GrandCentral_TB_brief_20090903.pdf}{http://web.archive.org/web/20090920043909/http://\-images.apple.com/\-macosx/\-technology/\-docs/\-GrandCentral\_TB\_brief\_20090903.pdf}},
769  note = "[Online; accessed 5-August-2022]"
770}
771
772
773% --------------------------------------------------
774% Man Pages
775@manual{MAN:open,
776  key        = "open",
777  title      = "open(2) Linux User's Manual",
778  year       = "2020",
779  month      = "February",
780}
781
782@manual{MAN:accept,
783  key        = "accept",
784  title      = "accept(2) Linux User's Manual",
785  year       = "2019",
786  month      = "March",
787}
788
789@manual{MAN:select,
790  key        = "select",
791  title      = "select(2) Linux User's Manual",
792  year       = "2019",
793  month      = "March",
794}
795
796@manual{MAN:poll,
797  key        = "poll",
798  title      = "poll(2) Linux User's Manual",
799  year       = "2019",
800  month      = "July",
801}
802
803@manual{MAN:epoll,
804  key        = "epoll",
805  title      = "epoll(7) Linux User's Manual",
806  year       = "2019",
807  month      = "March",
808}
809
810@manual{MAN:sendfile,
811  key        = "sendfile",
812  title      = "sendfile(2) Linux User's Manual",
813  year       = "2017",
814  month      = "September",
815}
816
817@manual{MAN:splice,
818  key        = "splice",
819  title      = "splice(2) Linux User's Manual",
820  year       = "2019",
821  month      = "May",
822}
823
824@manual{MAN:aio,
825  key        = "aio",
826  title      = "aio(7) Linux User's Manual",
827  year       = "2019",
828  month      = "March",
829}
830
831@misc{MAN:io_uring,
832  title   = {Efficient IO with io\_uring},
833  author  = {Axboe, Jens},
834  year    = "2019",
835  month   = "March",
836  version = {0,4},
837  howpublished = {\href{https://kernel.dk/io_uring.pdf}{https://\-kernel.dk/\-io\_uring.pdf}}
838}
839
840% --------------------------------------------------
841% Wikipedia Entries
842@misc{wiki:taskparallel,
843  author = "{Wikipedia contributors}",
844  title = "Control theory --- {W}ikipedia{,} The Free Encyclopedia",
845  year = "2020",
846  howpublished = {\href{https://en.wikipedia.org/wiki/Task_parallelism}{https://\-en.wikipedia.org/\-wiki/\-Task\_parallelism}},
847  note = "[Online; accessed 22-October-2020]"
848}
849
850@misc{wiki:controltheory,
851  author = "{Wikipedia contributors}",
852  title = "Task parallelism --- {W}ikipedia{,} The Free Encyclopedia",
853  year = "2020",
854  howpublished = "\href{https://en.wikipedia.org/wiki/Control_theory}{https://\-en.wikipedia.org/\-wiki/\-Control\_theory}",
855  note = "[Online; accessed 22-October-2020]"
856}
857
858@misc{wiki:implicitpar,
859  author = "{Wikipedia contributors}",
860  title = "Implicit parallelism --- {W}ikipedia{,} The Free Encyclopedia",
861  year = "2020",
862  howpublished = "\href{https://en.wikipedia.org/wiki/Implicit_parallelism}{https://\-en.wikipedia.org/\-wiki/\-Implicit\_parallelism}",
863  note = "[Online; accessed 23-October-2020]"
864}
865
866@misc{wiki:explicitpar,
867  author = "{Wikipedia contributors}",
868  title = "Explicit parallelism --- {W}ikipedia{,} The Free Encyclopedia",
869  year = "2017",
870  howpublished = "\href{https://en.wikipedia.org/wiki/Explicit_parallelism}{https://\-en.wikipedia.org/\-wiki/\-Explicit\_parallelism}",
871  note = "[Online; accessed 23-October-2020]"
872}
873
874@misc{wiki:lcg,
875  author = "{Wikipedia contributors}",
876  title = "Linear congruential generator --- {W}ikipedia{,} The Free Encyclopedia",
877  year = "2020",
878  howpublished = "\href{https://en.wikipedia.org/wiki/Linear_congruential_generator}{https://en.wikipedia.org/wiki/Linear\_congruential\_generator}",
879  note = "[Online; accessed 2-January-2021]"
880}
881
882@misc{wiki:future,
883  author = "{Wikipedia contributors}",
884  title = "Futures and promises --- {W}ikipedia{,} The Free Encyclopedia",
885  year = "2020",
886  howpublished = "\href{https://en.wikipedia.org/wiki/Futures_and_promises}{https://\-en.wikipedia.org/\-wiki/Futures\_and\_promises}",
887  note = "[Online; accessed 9-February-2021]"
888}
889
890@misc{wiki:rcu,
891  author = "{Wikipedia contributors}",
892  title = "Read-copy-update --- {W}ikipedia{,} The Free Encyclopedia",
893  year = "2022",
894  howpublished = "\href{https://en.wikipedia.org/wiki/Linear_congruential_generator}{https://\-en.wikipedia.org/\-wiki/\-Linear\_congruential\_generator}",
895  note = "[Online; accessed 12-April-2022]"
896}
897
898@misc{wiki:rwlock,
899  author = "{Wikipedia contributors}",
900  title = "Readers-writer lock --- {W}ikipedia{,} The Free Encyclopedia",
901  year = "2021",
902  howpublished = "\href{https://en.wikipedia.org/wiki/Readers-writer_lock}{https://\-en.wikipedia.org/\-wiki/\-Readers-writer\_lock}",
903  note = "[Online; accessed 12-April-2022]"
904}
905
906@misc{wiki:binpak,
907  author = "{Wikipedia contributors}",
908  title = "Bin packing problem --- {W}ikipedia{,} The Free Encyclopedia",
909  year = "2022",
910  howpublished = "\href{https://en.wikipedia.org/wiki/Bin_packing_problem}{https://\-en.wikipedia.org/\-wiki/\-Bin\_packing\_problem}",
911  note = "[Online; accessed 29-June-2022]"
912}
913
914@misc{wiki:ma,
915  author = "{Wikipedia contributors}",
916  title = "Bin packing problem --- {W}ikipedia{,} The Free Encyclopedia",
917  year = "2022",
918  howpublished = "\href{https://en.wikipedia.org/wiki/Moving_average#Exponential_moving_average}{https://\-en.wikipedia.org/\-wiki/\-Moving\_average\#Exponential\_moving\_average}",
919  note = "[Online; accessed 5-August-2022]"
920}
921
922@misc{wiki:jni,
923  author = "{Wikipedia contributors}",
924  title = "Java Native Interface --- {W}ikipedia{,} The Free Encyclopedia",
925  year = "2021",
926  howpublished = "\href{https://en.wikipedia.org/wiki/Java_Native_Interface}{https://\-en.wikipedia.org/\-wiki/\-Java\_Native\_Interface}",
927  note = "[Online; accessed 5-August-2022]"
928}
929
930@misc{wiki:zipf,
931  author = "{Wikipedia contributors}",
932  title = "Zipf's law --- {W}ikipedia{,} The Free Encyclopedia",
933  year = "2021",
934  howpublished = "\href{https://en.wikipedia.org/wiki/Zipf%27s_law}{https://\-en.wikipedia.org/\-wiki/\-Zipf\%27s\-\_law}",
935  note = "[Online; accessed 5-August-2022]"
936}
937
938@inproceedings{Pai99Flash,
939    contributer = {pabuhr@watmsg},
940    author      = {Vivek S. Pai and Peter Druschel and Willy Zwaenepoel},
941    title       = {{F}lash: An efficient and portable {W}eb server},
942    booktitle   = {Proceedings of the 1999 USENIX Annual Technical Conference},
943    organization= {USENIX Association},
944    address     = {Monterey, California, U.S.A.},
945    month       = jun,
946    year        = {1999},
947}
948
949@inproceedings{Behren03,
950    contributer = {pabuhr@watmsg},
951    author      = {Rob von Behren and Jeremy Condit and Feng Zhou and George C. Necula and Eric Brewer},
952    title       = {Capriccio: Scalable Threads for Internet Services},
953    booktitle   = {Proceedings of the 19th ACM Symposium on Operating Systems Principles},
954    year        = {2003},
955    pages       = {268-281},
956    location    = {Bolton Landing, NY, USA},
957    publisher   = {ACM Press},
958    address     = {New York, NY, USA},
959}
960
961@article{Welsh01,
962    contributer = {pabuhr@plg},
963    author      = {Welsh, Matt and Culler, David and Brewer, Eric},
964    title       = {{SEDA}: An Architecture for Well-conditioned, Scalable Internet Services},
965    journal     = {SIGOPS Oper. Syst. Rev.},
966    volume      = {35},
967    number      = {5},
968    month       = oct,
969    year        = {2001},
970    pages       = {230--243},
971    numpages    = {14},
972    publisher   = {ACM},
973    address     = {New York, NY, USA},
974}
975
976@inproceedings{Harji12,
977    keywords    = {web server, architecture, multi-core},
978    contributer = {pabuhr@plg},
979    author      = {Ashif S. Harji and Peter A. Buhr and Tim Brecht},
980    title       = {Comparing High-Performance Multi-core Web-Server Architectures},
981    booktitle   = {Proceedings of the 5th Annual International Systems and Storage Conference},
982    series      = {SYSTOR '12},
983    publisher   = {ACM},
984    address     = {New York, NY, USA},
985    location    = {Haifa, Israel},
986    month       = jun,
987    year        = 2012,
988    articleno   = 1,
989    pages       = {1:1--1:12},
990}
991
992
993@inproceedings{Barford98,
994    title       = {Generating Representative Web Workloads for Network and Server Performance Evaluation},
995    author      = {Paul Barford and Mark Crovella},
996    booktitle   = {Proc. of ACM SIGMETRICS 1998},
997    address     = {Madison, Wis.},
998    year        = {1998}
999}
1000
1001@article{httperf,
1002    author      = {David Mosberger and Tai Jin},
1003    title       = {httperf Tool for Measuring Web Server Performance},
1004    journal     = {ACM SIGMETRICS},
1005    volume      = {26},
1006    number      = {3},
1007    year        = {1998},
1008    optissn     = {0163-5999},
1009    pages       = {31-37},
1010    optdoi      = {http://doi.acm.org/10.1145/306225.306235},
1011    publisher   = {ACM Press},
1012    address     = {New York, NY, USA},
1013}
1014
1015% --------------------------------------------------
1016% True Misc
1017@misc{AIORant,
1018  author = "Linus Torvalds",
1019  title = "Re: [PATCH 09/13] aio: add support for async openat()",
1020  year = "2016",
1021  month = jan,
1022  howpublished = "\href{https://lwn.net/Articles/671657}{https://\-lwn.net/\-Articles/671657}",
1023  note = "[Online; accessed 6-June-2022]"
1024}
1025
1026@misc{xkcd:dynamicentropy,
1027  author = "Randall Munroe",
1028  title = "2318: Dynamic Entropy",
1029  year = "2020",
1030  month = "June",
1031  howpublished = "\href{https://xkcd.com/2318/}",
1032  note = "[Online; accessed 10-June-2020]"
1033}
1034
1035@misc{xkcd:cloud,
1036  author = "Randall Munroe",
1037  title = "908: The Cloud",
1038  year = "2011",
1039  month = "June",
1040  howpublished = "\href{https://xkcd.com/908/}",
1041  note = "[Online; accessed 25-August-2022]"
1042}
1043
1044@misc{go:safepoints,
1045  author = "The Go Programming Language",
1046  title = "src/runtime/preempt.go",
1047  howpublished = {\href{https://go.dev/src/runtime/preempt.go}},
1048  note = "[Online; accessed 5-August-2022]"
1049}
1050
1051@misc{go:cgo,
1052  author = "The Go Programming Language",
1053  title = "cgo",
1054  howpublished = {\href{https://pkg.go.dev/cmd/cgo}},
1055  note = "[Online; accessed 5-August-2022]"
1056}
1057
1058@article{reese2008nginx,
1059    title       = {NGINX: the high-performance web server and reverse proxy},
1060    author      = {Reese, Will},
1061    journal     = {Linux Journal},
1062    volume      = {2008},
1063    number      = {173},
1064    pages       = {2},
1065    year        = {2008},
1066    publisher   = {Belltown Media}
1067}
1068
1069@phdthesis{Harji10,
1070    author      = {Ashif Harji},
1071    title       = {Performance Comparison of Uniprocessor and Multiprocessor Web Server Architectures},
1072    school      = {University of Waterloo},
1073    year        = 2010,
1074    month       = feb,
1075    address     = {Waterloo, Ontario, Canada, N2L 3G1},
1076    note        = {\textsf{http://uwspace.uwaterloo.ca/\-bitstream/\-10012/\-5040/\-1/\-Harji\_thesis.pdf}},
1077}
Note: See TracBrowser for help on using the repository browser.