% Time-stamp: <2006-06-24 10:49:49 rainey>

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% BibTex
%%
%% Mike Rainey
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

@inproceedings{LoCalMem_26,
  author = {Rainey, Mike and Borkowski, Michael H. and Vollmer, Michael and Koparkar, Chaitanya S. and Kainen, Mikah and Singhal, Vidush},
  title = {LoCalMem: Type-Directed Adaptive Serialization for Location- and Content-Addressable Memory},
  year = {2026},
  publisher = {Association for Computing Machinery},
  address = {New York, NY, USA},
  volume = {10},
  number = {ICFP},
  journal = {Proc. ACM Program. Lang.},
  month = aug,
  url = {http://mike-rainey.site/papers/localmem.pdf},
  keywords = {conference}
}

@article{SPIRE_26,
  title = {SPIRE: Structure-Preserving Interpretable Retrieval of Evidence},
  author = {Rainey, Mike and Acar, Umut and Sezer, Muhammed},
  year = {2026},
  month = apr,
  doi = {10.5281/zenodo.19441410},
  url = {https://zenodo.org/records/19441410},
  publisher = {Zenodo},
  keywords = {techreport}
}

@inproceedings{GraFeyn_24,
  title = {GraFeyn: Efficient Parallel Sparse Simulation of Quantum Circuits},
  author = {Westrick, Sam and Liu, Pengyu and Kang, Byeongjee and McDonald, Colin and Rainey, Mike and Xu, Mingkuan and Arora, Jatin and Ding, Yongshan and Acar, Umut A.},
  booktitle = {Proceedings of the IEEE International Conference on Quantum Computing and Engineering},
  eventdate = {2024-09-15/2024-09-20},
  venue = {Montréal, Canada},
  year = {2024},
  url = {https://www.cs.cmu.edu/~swestric/24/qce24-grafeyn.pdf},
  keywords = {conference}
}

@inproceedings{LoCalGC_24,
  author = {Koparkar, Chaitanya and Singhal, Vidush and Gupta, Aditya and Rainey, Mike and Vollmer, Michael and Pelenitsyn, Artem and Tobin-Hochstadt, Sam and Kulkarni, Milind and Newton, Ryan R.},
  title = {Garbage Collection for Mostly Serialized Heaps},
  year = {2024},
  issue_date = {June 2024},
  publisher = {Association for Computing Machinery},
  address = {New York, NY, USA},
  number = {ISMM},
  url = {https://a.pelenitsyn.top/Papers/2024-gibbon-gc.pdf},
  journal = {International Symposium on Memory Management},
  month = jun,
  keywords = {conference}
}

@inproceedings{Marmoset_24,
  author = {Singhal, Vidush and Koparkar, Chaitanya and Zullo, Joseph and Pelenitsyn, Artem and Vollmer, Michael and Rainey, Mike and Kulkarni, Milind and Newton, Ryan R.},
  title = {Optimizing Layout of Recursive Datatypes with Marmoset},
  year = {2024},
  issue_date = {June 2024},
  publisher = {Association for Computing Machinery},
  address = {New York, NY, USA},
  number = {ECOOP},
  url = {https://arxiv.org/pdf/2405.17590},
  journal = {European Conference on Object-Oriented Programming},
  month = jun,
  keywords = {conference}
}

@inproceedings{Compiling_loops_heartbeat_24,
  title={Compiling Loop-Based Nested Parallelism for Irregular Workloads},
  author={Su, Yian and Rainey, Mike and Wanninger, Nick and Dhiantravan, Nadharm and Liang, Jasper and Acar, Umut and Dinda, Peter and Campanoni, Simone},
  booktitle={The 29th ACM International Conference on Architectural Support for Programming Languages and Operating Systems},
  series = {ASPLOS '24},
  volume={22},
  number={ASPLOS},
  year={2024},
  organization={ACM},
  address = {New York, NY, USA},
  numpages = {17},
  url={http://mike-rainey.site/papers/HELIX_ASPLOS_2024.pdf},
  keywords = {conference}
}

@inproceedings{Automatic_parallelism_management_24,
author = {Westrick, Sam and Fluet, Matthew and Rainey, Mike and Acar, Umut A.},
title = {Automatic Parallelism Management},
year = {2024},
issue_date = {January 2024},
publisher = {Association for Computing Machinery},
address = {New York, NY, USA},
volume = {8},
number = {POPL},
url = {https://doi.org/10.1145/3632880},
doi = {10.1145/3632880},
journal = {Proc. ACM Program. Lang.},
month = {jan},
articleno = {38},
numpages = {32},
keywords = {conference}
}

@inproceedings{Block_parallel_fusion_22,
author = {Westrick, Sam and Rainey, Mike and Anderson, Daniel and Blelloch, Guy E.},
title = {Parallel Block-Delayed Sequences},
year = {2022},
isbn = {9781450392044},
publisher = {Association for Computing Machinery},
address = {New York, NY, USA},
url = {https://doi.org/10.1145/3503221.3508434},
doi = {10.1145/3503221.3508434},
booktitle = {Proceedings of the 27th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming},
pages = {61–75},
numpages = {15},
location = {Seoul, Republic of Korea},
series = {PPoPP '22},
  keywords = {conference}
}

@inproceedings{ParallelLoCal_21,
  author = {Koparkar, Chaitanya and Rainey, Mike and Vollmer, Michael and Kulkarni, Milind and Newton, Ryan R.},
  title = {Efficient Tree-Traversals: Reconciling Parallelism and Dense Data Representations},
  year = {2021},
  issue_date = {August 2021},
  publisher = {Association for Computing Machinery},
  address = {New York, NY, USA},
  volume = {5},
  number = {ICFP},
  url = {https://doi.org/10.1145/3473596},
  doi = {10.1145/3473596},
  journal = {Proc. ACM Program. Lang.},
  month = aug,
  articleno = {91},
  numpages = {29},
  keywords = {conference}
}

@inproceedings{TPAL_21,
  author = {Rainey, Mike and Hale, Kyle and Newton, Ryan R. and Hardavellas, Nikos and Campanoni, Simone and Dinda, Peter and Acar, Umut A.},
  booktitle = {Proceedings of the 42nd ACM SIGPLAN Conference on Programming Language Design and
      Implementation},
  series = {PLDI '21},
  month = {June},
  year = {2021},
  url = {http://mike-rainey.site/papers/tpal-long.pdf},
  title = {Task Parallel Assembly Language for Uncompromising Parallelism},
  year = {2021},
  publisher = {ACM},
  address = {New York, NY, USA},
  keywords={conference}
}

@inproceedings{LoCal_19,
  author={Vollmer, Michael and Koparkar, Chaitanya and Rainey, Mike and Sakka, Laith and Kulkarni, Milind and Newton, Ryan R.},
  title={LoCal: A Language for Programs Operating on Serialized Data},
  booktitle={40th {ACM} {SIGPLAN} Conference on Programming Language Design and Implementation},
  series = {PLDI '19},
  year={2019},
  organization={ACM},
  url={http://mike-rainey.site/papers/lo-cal19.pdf},
  keywords={conference}
}

@inproceedings{OracleGuided_19,
 author = {Acar, Umut A. and Aksenov, Vitaly and Chargu{\'e}raud, Arthur and Rainey, Mike},
 title = {Provably and Practically Efficient Granularity Control},
 booktitle = {Proceedings of the 24th Symposium on Principles and Practice of Parallel Programming},
 series = {PPoPP '19},
 year = {2019},
 isbn = {978-1-4503-6225-2},
 location = {Washington, District of Columbia},
 pages = {214--228},
 numpages = {15},
 url = {http://mike-rainey.site/papers/oracle-ppop19-long.pdf},
 acmid = {3295725},
 publisher = {ACM},
 address = {New York, NY, USA},
 keywords={conference}
} 

@inproceedings{Heartbeat_17,
  author={Acar, Umut A and Chargu{\'e}raud, Arthur and Guatto, Adrien and Rainey, Mike and Sieczkowski, Filip},
  title={Heartbeat Scheduling: Provable Efficiency for Nested Parallelism},
  booktitle={39th {ACM} {SIGPLAN} Conference on Programming Language Design and Implementation},
  series = {PLDI '18},
  year={2018},
  organization={ACM},
  url={http://mike-rainey.site/papers/heartbeat.pdf},
  keywords = {conference}
}

@techreport{Work_inflation_17,
  author    = {Umut A. Acar and
               Arthur Chargu{\'{e}}raud and
               Mike Rainey},
  title     = {Parallel Work Inflation, Memory Effects, and their Empirical Analysis},
  journal   = {CoRR},
  volume    = {abs/1709.03767},
  year      = {2017},
  url       = {http://arxiv.org/abs/1709.03767},
  archivePrefix = {arXiv},
  eprint    = {1709.03767},
  timestamp = {Thu, 05 Oct 2017 09:42:49 +0200},
  biburl    = {http://dblp.org/rec/bib/journals/corr/abs-1709-03767},
  bibsource = {dblp computer science bibliography, http://dblp.org},
  keywords = {techreport}
}

@workshop{ML_chunkedseq_17,
  title = {{Efficient Representations for Large Dynamic Sequences in {ML}}},
  author = {Chargu{\'e}raud, Arthur and Rainey, Mike},
  url = {https://hal.inria.fr/hal-01669407},
  howpublished = {{ML Family Workshop}},
  year = {2017},
  month = Sep,
  url={https://hal.inria.fr/hal-01669407/file/chunkseq_ml.pdf},
  hal_id = {hal-01669407},
  hal_version = {v1},
  keywords={workshop}
}

@inproceedings{Dynamic_snzi_17,
  author={Acar, Umut A and Ben-David, Naama and Rainey, Mike},
  title={Contention in Structured Concurrency: Provably Efficient Dynamic NonZero Indicators for Nested Parallel Computation},
  booktitle={22nd {ACM} {SIGPLAN} Symposium on Principles and Practice of Parallel Programming},
  series = {PPoPP '17},
  year={2017},
  organization={ACM},
  url={http://mike-rainey.site/papers/dynsnzi.pdf},
  keywords = {conference}
}

@book{PASL_book_16,
  title={An Introduction to Parallel Computing in C++},
  author={Acar, Umut A and Charguéraud, Arthur and Rainey, Mike},
  year={2016},
  keywords = {book}
}

@inproceedings{Oracle_scheduling_16,
  author={Acar, Umut A and Charguéraud, Arthur and Rainey, Mike},
  title = {Oracle-Guided Scheduling for Controlling Granularity in Implicitly Parallel Languages},
  journal={Journal of Functional Programming},
  year = {2016},
  publisher={Cambridge University Press},
  url={http://mike-rainey.site/papers/jfp-oracle-guided.pdf},
  keywords = {journal}
}

@inproceedings{PDFS_15,
 author={Acar, Umut A and Charguéraud, Arthur and Rainey, Mike},
 title = {A Work-efficient Algorithm for Parallel Unordered Depth-first Search},
 booktitle = {Proceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis},
 series = {SC '15},
 year = {2015},
 pages = {67:1--67:12},
 articleno = {67},
 numpages = {12},
 url={http://mike-rainey.site/papers/pdfs_sc15.pdf},
 publisher = {ACM},
 keywords = {conference}
}

@incollection{Chunked_sequences_14,
  title={Theory and Practice of Chunked Sequences},
  author={Acar, Umut A and Charguéraud, Arthur and Rainey, Mike},
  booktitle={The 22nd Annual European Symposium on Algorithms},
  series = {ESA '14},
  pages={25--36},
  year={2014},
  publisher={Springer},
  url={http://mike-rainey.site/papers/chunked_seq.pdf},
  keywords = {conference}
}

@inproceedings{Work_stealing_13,
  title={Scheduling Parallel Programs by Work Stealing with Private Deques},
  author={Acar, Umut A and Charguéraud, Arthur and Rainey, Mike},
  booktitle={18th {ACM} {SIGPLAN} Symposium on Principles and Practice of Parallel Programming},
  series = {PPoPP '13},
  volume={48},
  number={8},
  pages={219--228},
  year={2013},
  organization={ACM},
  url={http://mike-rainey.site/papers/full.pdf},
  keywords = {conference}
}

@inproceedings{Dag_calculus_16,
  title={Dag-Calculus: A Calculus for Parallel Computation},
  author={Acar, Umut A and Charguéraud, Arthur and Rainey, Mike and Sieczkowski, Filip},
  booktitle={The 26th {ACM} {SIGPLAN} International Conference on Functional Programming},
  series = {ICFP '16},
  year={2016},
  organization={ACM},
  url={http://mike-rainey.site/papers/dag-calculus.pdf},
  keywords = {conference}
}

@inproceedings{Data_flattening_13,
  title={Data-only Flattening for Nested Data Parallelism},
  author={Bergstrom, Lars and Fluet, Matthew and Rainey, Mike and Reppy, John and Rosen, Stephen and Shaw, Adam},
  booktitle={18th {ACM} {SIGPLAN} Symposium on Principles and Practice of Parallel Programming},
  volume={48},
  number={8},
  pages={81--92},
  series = {PPoPP '13},
  year={2013},
  organization={ACM},
  url={http://mike-rainey.site/papers/ppopp13-flat.pdf},
  keywords = {conference}
}
  
@inproceedings{Lazy_splitting_10,
  title={Lazy Tree Splitting},
  author={Bergstrom, Lars and Rainey, Mike and Reppy, John and Shaw, Adam and Fluet, Matthew},
  booktitle={The 20th {ACM} {SIGPLAN} International Conference on Functional Programming},
  series = {ICFP '10},
  volume={45},
  number={9},
  pages={93--104},
  year={2010},
  organization={ACM},
  url={http://mike-rainey.site/papers/icfp10-lts.pdf},
  keywords = {conference}
}

@inproceedings{Lazy_splitting_12,
  title={Lazy Tree Splitting},
  author={Bergstrom, Lars and Fluet, Matthew and Rainey, Mike and Reppy, John and Shaw, Adam},
  journal={Journal of Functional Programming},
  volume={22},
  number={4-5},
  pages={382--438},
  year={2012},
  publisher={Cambridge University Press},
  url={http://mike-rainey.site/papers/jfp-lts-submitted.pdf},
  keywords = {journal}
}

@workshop{Scheduling_primitives,
  author={Acar, Umut A and Charguéraud, Arthur and Rainey, Mike},
  title = {Efficient Primitives for Creating and Scheduling Parallel Computations},
  month = 1,
  year = {2012},
  booktitle = {Declarative Aspects of Multicore Programming},
  series = {DAMP '12},
  note = "Appears in the short-paper track.",
  url={http://mike-rainey.site/papers/damp2012_primitives.pdf},
  keywords = {workshop}
}

@inproceedings{Oracle_scheduling_11,
  title={Oracle Scheduling: Controlling Granularity in Implicitly Parallel Languages},
  author={Acar, Umut A and Charguéraud, Arthur and Rainey, Mike},
  booktitle={Proceedings of the 2011 {ACM} international conference on Object oriented programming systems languages and applications},
  series = {OOPSLA '11},
  volume={46},
  number={10},
  pages={499--518},
  year={2011},
  organization={ACM},
  url={http://mike-rainey.site/papers/oracle_scheduling.pdf},
  keywords = {conference}
}

@inproceedings{Implicitly_threaded_08,
  title={Implicitly-threaded Parallelism in Manticore},
  author={Fluet, Matthew and Rainey, Mike and Reppy, John and Shaw, Adam},
  booktitle={The 13th {ACM} {SIGPLAN} International Conference on Functional Programming},
  series = {ICFP '08},
  volume={43},
  number={9},
  pages={119--130},
  year={2008},
  organization={ACM},
  url={http://mike-rainey.site/papers/icfp08-implicit.pdf},
  keywords = {conference}
}

@inproceedings{Implicitly_threaded_10,
  title={Implicitly Threaded Parallelism in Manticore},
  author={Fluet, Matthew and Rainey, Mike and Reppy, John and Shaw, Adam},
  journal={Journal of Functional Programming},
  volume={20},
  number={5-6},
  pages={537--576},
  year={2010},
  publisher={Cambridge University Press},
  keywords = {journal}
}

@phdthesis{Rainey_phd_10,
  author = "Mike Rainey",
  title = "Effective Scheduling Techniques for High-Level Parallel Programming Languages",
  year = 2010,
  month = 8,
  school = "University of Chicago",
  url={http://mike-rainey.site/papers/rainey-phd.pdf},
  keywords = {book}
}

@inproceedings{Scheduling_framework_08,
  title={A Scheduling Framework for General-purpose Parallel Languages},
  author={Fluet, Matthew and Rainey, Mike and Reppy, John},
  booktitle={The 13th {ACM} {SIGPLAN} International Conference on Functional Programming},
  series = {ICFP '08},
  volume={43},
  number={9},
  pages={241--252},
  year={2008},
  organization={ACM},
  url={http://mike-rainey.site/papers/icfp08-sched.pdf},
  keywords = {conference}
}

@workshop{Calling_conventions_08,
  title={Calling Variadic Functions from a Strongly-typed Language},
  author={Blume, Matthias and Rainey, Michael and Reppy, John},
  booktitle={Proceedings of the 2008 {ACM} {SIGPLAN} workshop on {ML}},
  series = {ML '08},
  pages={47--58},
  year={2008},
  organization={ACM},
  url={http://mike-rainey.site/papers/ml-varargs.pdf},
  keywords={workshop}
}

@book{Redex_book_09,
  title={Semantics Engineering with PLT Redex},
  author={Felleisen, Matthias and Findler, Robert Bruce and Flatt, Matthew},
  year={2009},
  publisher={The MIT Press},
  keywords = {book}
}

@workshop{Manticore_07,
  title={Manticore: A Heterogeneous Parallel Language},
  author={Fluet, Matthew and Rainey, Mike and Reppy, John and Shaw, Adam and Xiao, Yingqi},
  booktitle={Proceedings of the 2007 workshop on Declarative aspects of multicore programming},
  pages={37--44},
  year={2007},
  organization={ACM},
  keywords={workshop}
}

@INPROCEEDINGS{Scalable_cholesky_05,
    author = {David S. Wise and Craig Citro and Joshua Hursey and Fang Liu and Michael Rainey},
    title = {A Paradigm for Parallel Matrix Algorithms: Scalable Cholesky},
    booktitle = {In Euro-Par 2005 – Parallel Processing},
    year = {2005},
    url={http://dx.doi.org/10.1007/11549468_76},
  keywords = {conference}
}

@techreport{Best_refactoring,
  author    = {Mike Rainey},
  title     = {The best multicore refactoring you've never heard of},
  year      = {2023},
  url       = {http://mike-rainey.site/papers/pardefunc.pdf},
  keywords  = {workshop}
}
