| 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 |
|
|---|
| 232 | Optimization 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: {\href{https://lwn.net/Articles/531853}{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 | @book{MAN:inteldev,
|
|---|
| 618 | key = {Intel 64 and IA-32 Architectures Software Developer’s Manual},
|
|---|
| 619 | title = {Intel® 64 and IA-32 Architectures Software Developer’s Manual},
|
|---|
| 620 | publisher = {Intel{\textregistered}},
|
|---|
| 621 | year = {2016},
|
|---|
| 622 | volume = {3B: System Programming Guide, Part 2},
|
|---|
| 623 | url = {\href{https://www.intel.com/content/www/us/en/architecture-and-technology/64-ia-32-architectures-software-developer-vol-3b-part-2-manual.html}{https://\-www.intel.com/\-content/\-www/\-us/\-en/\-architecture\--and\--technology/\-64\--ia\--32\--architectures\--software\--developer\--vol\--3b\--part\--2\--manual\-.html}},
|
|---|
| 624 | }
|
|---|
| 625 |
|
|---|
| 626 | @misc{MemcachedThreading,
|
|---|
| 627 | author = {Oracle},
|
|---|
| 628 | title = {MySQL 5.6 Reference Manual Including MySQL NDB Cluster 7.3-7.4 Reference Guide},
|
|---|
| 629 | 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}},
|
|---|
| 630 | note = "[Online; accessed 5-August-2022]"
|
|---|
| 631 | }
|
|---|
| 632 |
|
|---|
| 633 | Windows's Scheduler
|
|---|
| 634 | @inbook{MAN:windows/scheduler,
|
|---|
| 635 | author = {Kate Chase and Mark E. Russinovich},
|
|---|
| 636 | title = {Windows Internals},
|
|---|
| 637 | chapter = {Processes, Threads, and Jobs in the Windows Operating System},
|
|---|
| 638 | edition = {5th Edition},
|
|---|
| 639 | publisher = {Microsoft Press},
|
|---|
| 640 | year = {2009},
|
|---|
| 641 | month = {June},
|
|---|
| 642 | series = {Developer Reference},
|
|---|
| 643 | 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}}
|
|---|
| 644 | }
|
|---|
| 645 |
|
|---|
| 646 | @misc{GITHUB:go,
|
|---|
| 647 | title = {GitHub - The Go Programming Language},
|
|---|
| 648 | author = {The Go Programming Language},
|
|---|
| 649 | howpublished = {\href{https://github.com/golang/go}{https://\-github.com/\-golang/\-go}},
|
|---|
| 650 | version = {Change-Id: If07f40b1d73b8f276ee28ffb8b7214175e56c24d}
|
|---|
| 651 | }
|
|---|
| 652 |
|
|---|
| 653 | @inproceedings{YTUBE:go,
|
|---|
| 654 | author = {Dmitry Vyukov},
|
|---|
| 655 | title = {Go scheduler: Implementing language with lightweight concurrency},
|
|---|
| 656 | year = {2019},
|
|---|
| 657 | booktitle = {Hydra},
|
|---|
| 658 | howpublished = {\href{https://www.youtube.com/watch?v=-K11rY57K7k&ab_channel=Hydra}{https://\-www.youtube.com/\-watch?v=-K11rY57K7k&ab_channel=Hydra}}
|
|---|
| 659 | }
|
|---|
| 660 |
|
|---|
| 661 | @inproceedings{:erlang,
|
|---|
| 662 | author = {Kenneth Lundin, Ericsson AB},
|
|---|
| 663 | title = {Inside the Erlang VM},
|
|---|
| 664 | year = {2008},
|
|---|
| 665 | booktitle = {Erlang User Conference},
|
|---|
| 666 | howpublished = {\href{http://www.erlang.se/euc/08/euc_smp.pdf}{http://\-www.erlang.se/\-euc/\-08/\-euc_smp.pdf}}
|
|---|
| 667 | }
|
|---|
| 668 |
|
|---|
| 669 | @manual{MAN:tbb/scheduler,
|
|---|
| 670 | title = {Scheduling Algorithm - Intel{\textregistered} Threading Building Blocks Developer Reference},
|
|---|
| 671 | organization = {Intel{\textregistered}},
|
|---|
| 672 | 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}}
|
|---|
| 673 | }
|
|---|
| 674 |
|
|---|
| 675 | @manual{MAN:quasar,
|
|---|
| 676 | title = {Quasar Core - Quasar User Manual},
|
|---|
| 677 | organization = {Parallel Universe},
|
|---|
| 678 | howpublished = {\href{https://docs.paralleluniverse.co/quasar}{https://\-docs.paralleluniverse.co/\-quasar}}
|
|---|
| 679 | }
|
|---|
| 680 | @misc{MAN:project-loom,
|
|---|
| 681 | howpublished = {\href{https://www.baeldung.com/openjdk-project-loom}{https://\-www.baeldung.com/\-openjdk-project-loom}}
|
|---|
| 682 | }
|
|---|
| 683 |
|
|---|
| 684 | @misc{MAN:kotlin,
|
|---|
| 685 | howpublished = {\href{https://kotlinlang.org/docs/multiplatform-mobile-concurrency-and-coroutines.html}{https://\-kotlinlang.org\-/docs\-/multiplatform\--mobile\--concurrency\--and\--coroutines.html}}
|
|---|
| 686 | }
|
|---|
| 687 |
|
|---|
| 688 | @misc{MAN:java/fork-join,
|
|---|
| 689 | howpublished = {\href{https://www.baeldung.com/java-fork-join}{https://\-www.baeldung.com/\-java-fork-join}}
|
|---|
| 690 | }
|
|---|
| 691 |
|
|---|
| 692 | @misc{apache,
|
|---|
| 693 | key = {Apache Software Foundation},
|
|---|
| 694 | title = {{T}he {A}pache Web Server},
|
|---|
| 695 | howpublished = {\href{http://httpd.apache.org}{http://\-httpd.apache.org}},
|
|---|
| 696 | note = "[Online; accessed 6-June-2022]"
|
|---|
| 697 | }
|
|---|
| 698 |
|
|---|
| 699 | @misc{memcached,
|
|---|
| 700 | key = {Brad Fitzpatrick},
|
|---|
| 701 | title = {{M}emcached},
|
|---|
| 702 | year = {2003},
|
|---|
| 703 | howpublished = {\href{http://httpd.apache.org}{http://\-httpd.apache.org}},
|
|---|
| 704 | note = "[Online; accessed 6-June-2022]"
|
|---|
| 705 | }
|
|---|
| 706 |
|
|---|
| 707 | @misc{libuv,
|
|---|
| 708 | author = {libuv team},
|
|---|
| 709 | title = {libuv: Asynchronous I/O made simple.},
|
|---|
| 710 | howpublished = {\href{https://libuv.org/}{https://\-libuv.org/}},
|
|---|
| 711 | note = "[Online; accessed 5-August-2022]"
|
|---|
| 712 | }
|
|---|
| 713 |
|
|---|
| 714 | @misc{SeriallyReusable,
|
|---|
| 715 | author = {IBM},
|
|---|
| 716 | title = {Serially reusable programs},
|
|---|
| 717 | month = mar,
|
|---|
| 718 | 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}},
|
|---|
| 719 | year = 2021,
|
|---|
| 720 | }
|
|---|
| 721 |
|
|---|
| 722 | @misc{GITHUB:mutilate,
|
|---|
| 723 | title = {Mutilate: high-performance memcached load generator },
|
|---|
| 724 | author = { Jacob Leverich },
|
|---|
| 725 | howpublished = {\href{https://github.com/leverich/mutilate}{https://\-github.com/\-leverich/\-mutilate}},
|
|---|
| 726 | version = {Change-Id: d65c6ef7c2f78ae05a9db3e37d7f6ddff1c0af64}
|
|---|
| 727 | }
|
|---|
| 728 |
|
|---|
| 729 | @misc{GITHUB:SchedulingBenchmarks,
|
|---|
| 730 | title = {Scheduling Benchmarks},
|
|---|
| 731 | author = {Thierry Delisle},
|
|---|
| 732 | howpublished = {\href{https://github.com/cforall/SchedulingBenchmarks_PhD22}{https://\-github.com/\-cforall/\-Scheduling\-Benchmarks\_\-PhD22}},
|
|---|
| 733 | }
|
|---|
| 734 |
|
|---|
| 735 | % --------------------------------------------------
|
|---|
| 736 | % Tech documents
|
|---|
| 737 | @techreport{rfc:tcp,
|
|---|
| 738 | title={Transmission control protocol},
|
|---|
| 739 | author={Postel, Jon},
|
|---|
| 740 | year={1981}
|
|---|
| 741 | }
|
|---|
| 742 |
|
|---|
| 743 | @manual{win:priority,
|
|---|
| 744 | key = {TaskSettings Priority},
|
|---|
| 745 | title = {TaskSettings.Priority property},
|
|---|
| 746 | year = "2020",
|
|---|
| 747 | month = "September",
|
|---|
| 748 | howpublished = {\href{https://docs.microsoft.com/en-us/windows/win32/taskschd/tasksettings-priority}{https://\-docs.microsoft.com/\-en-us/\-windows/\-win32/\-taskschd/\-tasksettings-priority}},
|
|---|
| 749 | note = "[Online; accessed 5-August-2022]"
|
|---|
| 750 | }
|
|---|
| 751 |
|
|---|
| 752 | @manual{win:overlap,
|
|---|
| 753 | key = {Synchronous and Asynchronous IO},
|
|---|
| 754 | title = {Synchronous and Asynchronous I\/O},
|
|---|
| 755 | year = "2021",
|
|---|
| 756 | month = "March",
|
|---|
| 757 | 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}},
|
|---|
| 758 | note = "[Online; accessed 5-August-2022]"
|
|---|
| 759 | }
|
|---|
| 760 |
|
|---|
| 761 | @book{russinovich2009windows,
|
|---|
| 762 | title={Windows Internals},
|
|---|
| 763 | author={Russinovich, M.E. and Solomon, D.A. and Ionescu, A.},
|
|---|
| 764 | isbn={9780735625303},
|
|---|
| 765 | lccn={2009927697},
|
|---|
| 766 | series={Developer Reference Series},
|
|---|
| 767 | url={https://books.google.ca/books?id=SfglSQAACAAJ},
|
|---|
| 768 | year={2009},
|
|---|
| 769 | publisher={Microsoft Press}
|
|---|
| 770 | }
|
|---|
| 771 |
|
|---|
| 772 | @manual{apple:gcd,
|
|---|
| 773 | key = {Grand Central Dispatch},
|
|---|
| 774 | title = {Grand Central Dispatch},
|
|---|
| 775 | year = "2022",
|
|---|
| 776 | author = {Apple Inc.},
|
|---|
| 777 | howpublished = {https://developer.apple.com/documentation/DISPATCH},
|
|---|
| 778 | note = "[Online; accessed 5-August-2022]"
|
|---|
| 779 | }
|
|---|
| 780 |
|
|---|
| 781 | @techreport{apple:gcd2,
|
|---|
| 782 | key = {Grand Central Dispatch},
|
|---|
| 783 | title = {Grand Central Dispatch, A better way to do multicore.},
|
|---|
| 784 | year = "2009",
|
|---|
| 785 | month = "August",
|
|---|
| 786 | author = {Apple Inc.},
|
|---|
| 787 | 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}},
|
|---|
| 788 | note = "[Online; accessed 5-August-2022]"
|
|---|
| 789 | }
|
|---|
| 790 |
|
|---|
| 791 |
|
|---|
| 792 | % --------------------------------------------------
|
|---|
| 793 | % Man Pages
|
|---|
| 794 | @manual{MAN:open,
|
|---|
| 795 | key = "open",
|
|---|
| 796 | title = "open(2) Linux User's Manual",
|
|---|
| 797 | year = "2020",
|
|---|
| 798 | month = "February",
|
|---|
| 799 | }
|
|---|
| 800 |
|
|---|
| 801 | @manual{MAN:accept,
|
|---|
| 802 | key = "accept",
|
|---|
| 803 | title = "accept(2) Linux User's Manual",
|
|---|
| 804 | year = "2019",
|
|---|
| 805 | month = "March",
|
|---|
| 806 | }
|
|---|
| 807 |
|
|---|
| 808 | @manual{MAN:select,
|
|---|
| 809 | key = "select",
|
|---|
| 810 | title = "select(2) Linux User's Manual",
|
|---|
| 811 | year = "2019",
|
|---|
| 812 | month = "March",
|
|---|
| 813 | }
|
|---|
| 814 |
|
|---|
| 815 | @manual{MAN:poll,
|
|---|
| 816 | key = "poll",
|
|---|
| 817 | title = "poll(2) Linux User's Manual",
|
|---|
| 818 | year = "2019",
|
|---|
| 819 | month = "July",
|
|---|
| 820 | }
|
|---|
| 821 |
|
|---|
| 822 | @manual{MAN:epoll,
|
|---|
| 823 | key = "epoll",
|
|---|
| 824 | title = "epoll(7) Linux User's Manual",
|
|---|
| 825 | year = "2019",
|
|---|
| 826 | month = "March",
|
|---|
| 827 | }
|
|---|
| 828 |
|
|---|
| 829 | @manual{MAN:sendfile,
|
|---|
| 830 | key = "sendfile",
|
|---|
| 831 | title = "sendfile(2) Linux User's Manual",
|
|---|
| 832 | year = "2017",
|
|---|
| 833 | month = "September",
|
|---|
| 834 | }
|
|---|
| 835 |
|
|---|
| 836 | @manual{MAN:splice,
|
|---|
| 837 | key = "splice",
|
|---|
| 838 | title = "splice(2) Linux User's Manual",
|
|---|
| 839 | year = "2019",
|
|---|
| 840 | month = "May",
|
|---|
| 841 | }
|
|---|
| 842 |
|
|---|
| 843 | @manual{MAN:eventfd,
|
|---|
| 844 | key = "eventfd",
|
|---|
| 845 | title = "eventfd(2) Linux User's Manual",
|
|---|
| 846 | year = "2019",
|
|---|
| 847 | month = "March",
|
|---|
| 848 | }
|
|---|
| 849 |
|
|---|
| 850 | @manual{MAN:aio,
|
|---|
| 851 | key = "aio",
|
|---|
| 852 | title = "aio(7) Linux User's Manual",
|
|---|
| 853 | year = "2019",
|
|---|
| 854 | month = "March",
|
|---|
| 855 | }
|
|---|
| 856 |
|
|---|
| 857 | @manual{MAN:bash,
|
|---|
| 858 | title = {Bash Reference Manual},
|
|---|
| 859 | author = {Chet Ramey and Brian Fox},
|
|---|
| 860 | year = "2020",
|
|---|
| 861 | month = "December",
|
|---|
| 862 | version = {5,1},
|
|---|
| 863 | howpublished = {\href{https://www.gnu.org/software/bash/manual/bash.pdf}{https://\-www.gnu.org/\-software/\-bash/\-manual/\-bash.pdf}}
|
|---|
| 864 | }
|
|---|
| 865 |
|
|---|
| 866 | @misc{MAN:io_uring,
|
|---|
| 867 | title = {Efficient IO with io\_uring},
|
|---|
| 868 | author = {Axboe, Jens},
|
|---|
| 869 | year = "2019",
|
|---|
| 870 | month = "March",
|
|---|
| 871 | version = {0,4},
|
|---|
| 872 | howpublished = {\href{https://kernel.dk/io_uring.pdf}{https://\-kernel.dk/\-io\_uring.pdf}}
|
|---|
| 873 | }
|
|---|
| 874 |
|
|---|
| 875 |
|
|---|
| 876 | % --------------------------------------------------
|
|---|
| 877 | % Wikipedia Entries
|
|---|
| 878 | @misc{wiki:taskparallel,
|
|---|
| 879 | author = "{Wikipedia contributors}",
|
|---|
| 880 | title = "Control theory --- {W}ikipedia{,} The Free Encyclopedia",
|
|---|
| 881 | year = "2020",
|
|---|
| 882 | howpublished = {\href{https://en.wikipedia.org/wiki/Task_parallelism}{https://\-en.wikipedia.org/\-wiki/\-Task\_parallelism}},
|
|---|
| 883 | note = "[Online; accessed 22-October-2020]"
|
|---|
| 884 | }
|
|---|
| 885 |
|
|---|
| 886 | @misc{wiki:controltheory,
|
|---|
| 887 | author = "{Wikipedia contributors}",
|
|---|
| 888 | title = "Task parallelism --- {W}ikipedia{,} The Free Encyclopedia",
|
|---|
| 889 | year = "2020",
|
|---|
| 890 | howpublished = "\href{https://en.wikipedia.org/wiki/Control_theory}{https://\-en.wikipedia.org/\-wiki/\-Control\_theory}",
|
|---|
| 891 | note = "[Online; accessed 22-October-2020]"
|
|---|
| 892 | }
|
|---|
| 893 |
|
|---|
| 894 | @misc{wiki:implicitpar,
|
|---|
| 895 | author = "{Wikipedia contributors}",
|
|---|
| 896 | title = "Implicit parallelism --- {W}ikipedia{,} The Free Encyclopedia",
|
|---|
| 897 | year = "2020",
|
|---|
| 898 | howpublished = "\href{https://en.wikipedia.org/wiki/Implicit_parallelism}{https://\-en.wikipedia.org/\-wiki/\-Implicit\_parallelism}",
|
|---|
| 899 | note = "[Online; accessed 23-October-2020]"
|
|---|
| 900 | }
|
|---|
| 901 |
|
|---|
| 902 | @misc{wiki:explicitpar,
|
|---|
| 903 | author = "{Wikipedia contributors}",
|
|---|
| 904 | title = "Explicit parallelism --- {W}ikipedia{,} The Free Encyclopedia",
|
|---|
| 905 | year = "2017",
|
|---|
| 906 | howpublished = "\href{https://en.wikipedia.org/wiki/Explicit_parallelism}{https://\-en.wikipedia.org/\-wiki/\-Explicit\_parallelism}",
|
|---|
| 907 | note = "[Online; accessed 23-October-2020]"
|
|---|
| 908 | }
|
|---|
| 909 |
|
|---|
| 910 | @misc{wiki:lcg,
|
|---|
| 911 | author = "{Wikipedia contributors}",
|
|---|
| 912 | title = "Linear congruential generator --- {W}ikipedia{,} The Free Encyclopedia",
|
|---|
| 913 | year = "2020",
|
|---|
| 914 | howpublished = "\href{https://en.wikipedia.org/wiki/Linear_congruential_generator}{https://en.wikipedia.org/wiki/Linear\_congruential\_generator}",
|
|---|
| 915 | note = "[Online; accessed 2-January-2021]"
|
|---|
| 916 | }
|
|---|
| 917 |
|
|---|
| 918 | @misc{wiki:future,
|
|---|
| 919 | author = "{Wikipedia contributors}",
|
|---|
| 920 | title = "Futures and promises --- {W}ikipedia{,} The Free Encyclopedia",
|
|---|
| 921 | year = "2020",
|
|---|
| 922 | howpublished = "\href{https://en.wikipedia.org/wiki/Futures_and_promises}{https://\-en.wikipedia.org/\-wiki/Futures\_and\_promises}",
|
|---|
| 923 | note = "[Online; accessed 9-February-2021]"
|
|---|
| 924 | }
|
|---|
| 925 |
|
|---|
| 926 | @misc{wiki:rcu,
|
|---|
| 927 | author = "{Wikipedia contributors}",
|
|---|
| 928 | title = "Read-copy-update --- {W}ikipedia{,} The Free Encyclopedia",
|
|---|
| 929 | year = "2022",
|
|---|
| 930 | howpublished = "\href{https://en.wikipedia.org/wiki/Linear_congruential_generator}{https://\-en.wikipedia.org/\-wiki/\-Linear\_congruential\_generator}",
|
|---|
| 931 | note = "[Online; accessed 12-April-2022]"
|
|---|
| 932 | }
|
|---|
| 933 |
|
|---|
| 934 | @misc{wiki:rwlock,
|
|---|
| 935 | author = "{Wikipedia contributors}",
|
|---|
| 936 | title = "Readers-writer lock --- {W}ikipedia{,} The Free Encyclopedia",
|
|---|
| 937 | year = "2021",
|
|---|
| 938 | howpublished = "\href{https://en.wikipedia.org/wiki/Readers-writer_lock}{https://\-en.wikipedia.org/\-wiki/\-Readers-writer\_lock}",
|
|---|
| 939 | note = "[Online; accessed 12-April-2022]"
|
|---|
| 940 | }
|
|---|
| 941 |
|
|---|
| 942 | @misc{wiki:binpak,
|
|---|
| 943 | author = "{Wikipedia contributors}",
|
|---|
| 944 | title = "Bin packing problem --- {W}ikipedia{,} The Free Encyclopedia",
|
|---|
| 945 | year = "2022",
|
|---|
| 946 | howpublished = "\href{https://en.wikipedia.org/wiki/Bin_packing_problem}{https://\-en.wikipedia.org/\-wiki/\-Bin\_packing\_problem}",
|
|---|
| 947 | note = "[Online; accessed 29-June-2022]"
|
|---|
| 948 | }
|
|---|
| 949 |
|
|---|
| 950 | @misc{wiki:ma,
|
|---|
| 951 | author = "{Wikipedia contributors}",
|
|---|
| 952 | title = "Bin packing problem --- {W}ikipedia{,} The Free Encyclopedia",
|
|---|
| 953 | year = "2022",
|
|---|
| 954 | howpublished = "\href{https://en.wikipedia.org/wiki/Moving_average#Exponential_moving_average}{https://\-en.wikipedia.org/\-wiki/\-Moving\_average\#Exponential\_moving\_average}",
|
|---|
| 955 | note = "[Online; accessed 5-August-2022]"
|
|---|
| 956 | }
|
|---|
| 957 |
|
|---|
| 958 | @misc{wiki:jni,
|
|---|
| 959 | author = "{Wikipedia contributors}",
|
|---|
| 960 | title = "Java Native Interface --- {W}ikipedia{,} The Free Encyclopedia",
|
|---|
| 961 | year = "2021",
|
|---|
| 962 | howpublished = "\href{https://en.wikipedia.org/wiki/Java_Native_Interface}{https://\-en.wikipedia.org/\-wiki/\-Java\_Native\_Interface}",
|
|---|
| 963 | note = "[Online; accessed 5-August-2022]"
|
|---|
| 964 | }
|
|---|
| 965 |
|
|---|
| 966 | @misc{wiki:zipf,
|
|---|
| 967 | author = "{Wikipedia contributors}",
|
|---|
| 968 | title = "Zipf's law --- {W}ikipedia{,} The Free Encyclopedia",
|
|---|
| 969 | year = "2021",
|
|---|
| 970 | howpublished = "\href{https://en.wikipedia.org/wiki/Zipf%27s_law}{https://\-en.wikipedia.org/\-wiki/\-Zipf\%27s\-\_law}",
|
|---|
| 971 | note = "[Online; accessed 5-August-2022]"
|
|---|
| 972 | }
|
|---|
| 973 |
|
|---|
| 974 | @misc{wiki:htm,
|
|---|
| 975 | author = "{Wikipedia contributors}",
|
|---|
| 976 | title = "Transactional memory --- {W}ikipedia{,} The Free Encyclopedia",
|
|---|
| 977 | year = "2022",
|
|---|
| 978 | howpublished = "\href{https://en.wikipedia.org/wiki/Zipf%27s_law}{https://\-en.wikipedia.org/\-wiki/\-Zipf\%27s\-\_law}",
|
|---|
| 979 | note = "[Online; accessed 7-September-2022]"
|
|---|
| 980 | }
|
|---|
| 981 |
|
|---|
| 982 | @misc{wiki:rdtsc,
|
|---|
| 983 | author = "{Wikipedia contributors}",
|
|---|
| 984 | title = "Time Stamp Counter --- {W}ikipedia{,} The Free Encyclopedia",
|
|---|
| 985 | year = "2022",
|
|---|
| 986 | howpublished = "\href{https://en.wikipedia.org/wiki/Time\_Stamp\_Counter}{https://\-en.wikipedia.org/\-wiki/\-Time\-\_Stamp\-\_Counter}",
|
|---|
| 987 | note = "[Online; accessed 14-November-2022]"
|
|---|
| 988 | }
|
|---|
| 989 |
|
|---|
| 990 | @misc{wiki:lockfree,
|
|---|
| 991 | author = "{Wikipedia contributors}",
|
|---|
| 992 | title = "Non-blocking algorithm --- {W}ikipedia{,} The Free Encyclopedia",
|
|---|
| 993 | year = "2022",
|
|---|
| 994 | howpublished = "\href{https://en.wikipedia.org/wiki/Non-blocking_algorithm}{https://en.wikipedia.org/\-wiki/Non\--blocking\-\_algorithm}",
|
|---|
| 995 | note = "[Online; accessed 22-November-2022]"
|
|---|
| 996 | }
|
|---|
| 997 |
|
|---|
| 998 | @misc{wiki:expected,
|
|---|
| 999 | author = "{Wikipedia contributors}",
|
|---|
| 1000 | title = "Expected value --- {W}ikipedia{,} The Free Encyclopedia",
|
|---|
| 1001 | year = "2022",
|
|---|
| 1002 | howpublished = "\href{https://en.wikipedia.org/wiki/Expected_value}{https://en.wikipedia.org/\-wiki/\-Expected\-\_value}",
|
|---|
| 1003 | note = "[Online; accessed 22-November-2022]"
|
|---|
| 1004 | }
|
|---|
| 1005 |
|
|---|
| 1006 | @misc{wiki:softirq,
|
|---|
| 1007 | author = "{Wikipedia contributors}",
|
|---|
| 1008 | title = "Interrupt --- {W}ikipedia{,} The Free Encyclopedia",
|
|---|
| 1009 | year = "2022",
|
|---|
| 1010 | howpublished = "\href{https://en.wikipedia.org/wiki/Interrupt}{https://en.wikipedia.org/\-wiki/\-Interrupt}",
|
|---|
| 1011 | note = "[Online; accessed 24-November-2022]"
|
|---|
| 1012 | }
|
|---|
| 1013 |
|
|---|
| 1014 | @inproceedings{Pai99Flash,
|
|---|
| 1015 | contributer = {pabuhr@watmsg},
|
|---|
| 1016 | author = {Vivek S. Pai and Peter Druschel and Willy Zwaenepoel},
|
|---|
| 1017 | title = {{F}lash: An efficient and portable {W}eb server},
|
|---|
| 1018 | booktitle = {Proceedings of the 1999 USENIX Annual Technical Conference},
|
|---|
| 1019 | organization= {USENIX Association},
|
|---|
| 1020 | address = {Monterey, California, U.S.A.},
|
|---|
| 1021 | month = jun,
|
|---|
| 1022 | year = {1999},
|
|---|
| 1023 | }
|
|---|
| 1024 |
|
|---|
| 1025 | @inproceedings{Behren03,
|
|---|
| 1026 | contributer = {pabuhr@watmsg},
|
|---|
| 1027 | author = {Rob von Behren and Jeremy Condit and Feng Zhou and George C. Necula and Eric Brewer},
|
|---|
| 1028 | title = {Capriccio: Scalable Threads for Internet Services},
|
|---|
| 1029 | booktitle = {Proceedings of the 19th ACM Symposium on Operating Systems Principles},
|
|---|
| 1030 | year = {2003},
|
|---|
| 1031 | pages = {268-281},
|
|---|
| 1032 | location = {Bolton Landing, NY, USA},
|
|---|
| 1033 | publisher = {ACM Press},
|
|---|
| 1034 | address = {New York, NY, USA},
|
|---|
| 1035 | }
|
|---|
| 1036 |
|
|---|
| 1037 | @article{Welsh01,
|
|---|
| 1038 | contributer = {pabuhr@plg},
|
|---|
| 1039 | author = {Welsh, Matt and Culler, David and Brewer, Eric},
|
|---|
| 1040 | title = {{SEDA}: An Architecture for Well-conditioned, Scalable Internet Services},
|
|---|
| 1041 | journal = {SIGOPS Oper. Syst. Rev.},
|
|---|
| 1042 | volume = {35},
|
|---|
| 1043 | number = {5},
|
|---|
| 1044 | month = oct,
|
|---|
| 1045 | year = {2001},
|
|---|
| 1046 | pages = {230--243},
|
|---|
| 1047 | numpages = {14},
|
|---|
| 1048 | publisher = {ACM},
|
|---|
| 1049 | address = {New York, NY, USA},
|
|---|
| 1050 | }
|
|---|
| 1051 |
|
|---|
| 1052 | @inproceedings{Harji12,
|
|---|
| 1053 | keywords = {web server, architecture, multi-core},
|
|---|
| 1054 | contributer = {pabuhr@plg},
|
|---|
| 1055 | author = {Ashif S. Harji and Peter A. Buhr and Tim Brecht},
|
|---|
| 1056 | title = {Comparing High-Performance Multi-core Web-Server Architectures},
|
|---|
| 1057 | booktitle = {Proceedings of the 5th Annual International Systems and Storage Conference},
|
|---|
| 1058 | series = {SYSTOR '12},
|
|---|
| 1059 | publisher = {ACM},
|
|---|
| 1060 | address = {New York, NY, USA},
|
|---|
| 1061 | location = {Haifa, Israel},
|
|---|
| 1062 | month = jun,
|
|---|
| 1063 | year = 2012,
|
|---|
| 1064 | articleno = 1,
|
|---|
| 1065 | pages = {1:1--1:12},
|
|---|
| 1066 | }
|
|---|
| 1067 |
|
|---|
| 1068 |
|
|---|
| 1069 | @inproceedings{Barford98,
|
|---|
| 1070 | title = {Generating Representative Web Workloads for Network and Server Performance Evaluation},
|
|---|
| 1071 | author = {Paul Barford and Mark Crovella},
|
|---|
| 1072 | booktitle = {Proc. of ACM SIGMETRICS 1998},
|
|---|
| 1073 | address = {Madison, Wis.},
|
|---|
| 1074 | year = {1998}
|
|---|
| 1075 | }
|
|---|
| 1076 |
|
|---|
| 1077 | @article{httperf,
|
|---|
| 1078 | author = {David Mosberger and Tai Jin},
|
|---|
| 1079 | title = {httperf Tool for Measuring Web Server Performance},
|
|---|
| 1080 | journal = {ACM SIGMETRICS},
|
|---|
| 1081 | volume = {26},
|
|---|
| 1082 | number = {3},
|
|---|
| 1083 | year = {1998},
|
|---|
| 1084 | optissn = {0163-5999},
|
|---|
| 1085 | pages = {31-37},
|
|---|
| 1086 | optdoi = {http://doi.acm.org/10.1145/306225.306235},
|
|---|
| 1087 | publisher = {ACM Press},
|
|---|
| 1088 | address = {New York, NY, USA},
|
|---|
| 1089 | }
|
|---|
| 1090 |
|
|---|
| 1091 | % --------------------------------------------------
|
|---|
| 1092 | % True Misc
|
|---|
| 1093 | @misc{AIORant,
|
|---|
| 1094 | author = "Linus Torvalds",
|
|---|
| 1095 | title = "Re: [PATCH 09/13] aio: add support for async openat()",
|
|---|
| 1096 | year = "2016",
|
|---|
| 1097 | month = jan,
|
|---|
| 1098 | howpublished = "\href{https://lwn.net/Articles/671657}{https://\-lwn.net/\-Articles/671657}",
|
|---|
| 1099 | note = "[Online; accessed 6-June-2022]"
|
|---|
| 1100 | }
|
|---|
| 1101 |
|
|---|
| 1102 | @misc{xkcd:dynamicentropy,
|
|---|
| 1103 | author = "Randall Munroe",
|
|---|
| 1104 | title = "2318: Dynamic Entropy",
|
|---|
| 1105 | year = "2020",
|
|---|
| 1106 | month = "June",
|
|---|
| 1107 | howpublished = "\href{https://xkcd.com/2318/}{https://\-xkcd.com/\-2318/}",
|
|---|
| 1108 | note = "[Online; accessed 10-June-2020]"
|
|---|
| 1109 | }
|
|---|
| 1110 |
|
|---|
| 1111 | @misc{xkcd:cloud,
|
|---|
| 1112 | author = "Randall Munroe",
|
|---|
| 1113 | title = "908: The Cloud",
|
|---|
| 1114 | year = "2011",
|
|---|
| 1115 | month = "June",
|
|---|
| 1116 | howpublished = "\href{https://xkcd.com/908/}{https://\-xkcd.com/\-908/}",
|
|---|
| 1117 | note = "[Online; accessed 25-August-2022]"
|
|---|
| 1118 | }
|
|---|
| 1119 |
|
|---|
| 1120 | @misc{go:safepoints,
|
|---|
| 1121 | author = "The Go Programming Language",
|
|---|
| 1122 | title = "src/runtime/preempt.go",
|
|---|
| 1123 | howpublished = {\href{https://go.dev/src/runtime/preempt.go}},
|
|---|
| 1124 | note = "[Online; accessed 5-August-2022]"
|
|---|
| 1125 | }
|
|---|
| 1126 |
|
|---|
| 1127 | @misc{go:cgo,
|
|---|
| 1128 | author = "The Go Programming Language",
|
|---|
| 1129 | title = "cgo",
|
|---|
| 1130 | howpublished = {\href{https://pkg.go.dev/cmd/cgo}},
|
|---|
| 1131 | note = "[Online; accessed 5-August-2022]"
|
|---|
| 1132 | }
|
|---|
| 1133 |
|
|---|
| 1134 | @article{reese2008nginx,
|
|---|
| 1135 | title = {NGINX: the high-performance web server and reverse proxy},
|
|---|
| 1136 | author = {Reese, Will},
|
|---|
| 1137 | journal = {Linux Journal},
|
|---|
| 1138 | volume = {2008},
|
|---|
| 1139 | number = {173},
|
|---|
| 1140 | pages = {2},
|
|---|
| 1141 | year = {2008},
|
|---|
| 1142 | publisher = {Belltown Media}
|
|---|
| 1143 | }
|
|---|
| 1144 |
|
|---|
| 1145 | @phdthesis{Harji10,
|
|---|
| 1146 | author = {Ashif Harji},
|
|---|
| 1147 | title = {Performance Comparison of Uniprocessor and Multiprocessor Web Server Architectures},
|
|---|
| 1148 | school = {University of Waterloo},
|
|---|
| 1149 | year = 2010,
|
|---|
| 1150 | month = feb,
|
|---|
| 1151 | address = {Waterloo, Ontario, Canada, N2L 3G1},
|
|---|
| 1152 | note = {\textsf{http://uwspace.uwaterloo.ca/\-bitstream/\-10012/\-5040/\-1/\-Harji\_thesis.pdf}},
|
|---|
| 1153 | }
|
|---|