@inproceedings{CR-Simple,
  author       = {Nosayba El{-}Sayed and
                  Bianca Schroeder},
  title        = {Checkpoint/restart in practice: When 'simple is better'},
  booktitle    = {2014 {IEEE} International Conference on Cluster Computing, {CLUSTER}
                  2014, Madrid, Spain, September 22-26, 2014},
  pages        = {84--92},
  publisher    = {{IEEE} Computer Society},
  year         = {2014},
  url          = {https://doi.org/10.1109/CLUSTER.2014.6968777},
  doi          = {10.1109/CLUSTER.2014.6968777},
  timestamp    = {Thu, 23 Mar 2023 23:59:40 +0100},
  biburl       = {https://dblp.org/rec/conf/cluster/El-SayedS14.bib},
  bibsource    = {dblp computer science bibliography, https://dblp.org}
}

@ARTICLE{7087377,  
	author={Kaynar, Kerem and Sivrikaya, Fikret},  
	journal={IEEE Transactions on Dependable and Secure Computing},   
	title={Distributed Attack Graph Generation},   
	year={2016},  
	volume={13},  
	number={5},  
	pages={519-532},  
	doi={10.1109/TDSC.2015.2423682}
}

@INPROCEEDINGS{LAPA,
  author={Yi, Feng and Cai, Huang Yi and Xin, Fu Zheng},
  booktitle={2018 IEEE International Conference on Networking, Architecture and Storage (NAS)}, 
  title={A Logic-Based Attack Graph for Analyzing Network Security Risk Against Potential Attack}, 
  year={2018},
  volume={},
  number={},
  pages={1-4},
  doi={10.1109/NAS.2018.8515733}
}

@INPROCEEDINGS{AG-Sample,
  author={Subasi, Omer and Purohit, Sumit and Bhattacharya, Arnab and Chatterjee, Samrat},
  booktitle={2022 IEEE International Symposium on Technologies for Homeland Security (HST)}, 
  title={Impact-Driven Sampling Strategies for Hybrid Attack Graphs}, 
  year={2022},
  volume={},
  number={},
  pages={1-7},
  doi={10.1109/HST56032.2022.10025439}
}


@INPROCEEDINGS{GraphDB,
  author={Simon-Nagy, Gabriella and Fleiner, Rita and Bánáti, Anna},
  booktitle={2022 IEEE 20th Jubilee International Symposium on Intelligent Systems and Informatics (SISY)}, 
  title={Attack Graph Implementation in Graph Database}, 
  year={2022},
  volume={},
  number={},
  pages={000127-000132},
  doi={10.1109/SISY56759.2022.10036309}
}

@INPROCEEDINGS{Graph-DB,
  author={Yuan, Bintao and Pan, Zulie and Shi, Fan and Li, Zhenhan},
  booktitle={2020 IEEE 4th Information Technology, Networking, Electronic and Automation Control Conference (ITNEC)}, 
  title={An Attack Path Generation Methods Based on Graph Database}, 
  year={2020},
  volume={1},
  number={},
  pages={1905-1910},
  doi={10.1109/ITNEC48623.2020.9085039}
}


@book{hursey2010coordinated,
  title={Coordinated checkpoint/restart process fault tolerance for MPI applications on HPC systems},
  author={Hursey, Joshua},
  year={2010},
  publisher={Indiana University}
}

@misc{dmtcp,
      title={DMTCP: Transparent Checkpointing for Cluster Computations and the Desktop}, 
      author={Jason Ansel and Kapil Arya and Gene Cooperman},
      year={2009},
      eprint={cs/0701037},
      archivePrefix={arXiv},
      primaryClass={cs.DC}
}

@article{BLCR,
	title = {Requirements for Linux Checkpoint/Restart},
	author = {Duell, Jason and Hargrove, Paul H and Roman, Eric S},
	doi = {10.2172/793773},
	url = {https://www.osti.gov/biblio/793773}, 
	place = {United States},
	year = {2002},
	month = {2}
}

@INPROCEEDINGS{CR-Survey,
  author={Shahzad, Faisal and Wittmann, Markus and Zeiser, Thomas and Hager, Georg and Wellein, Gerhard},
  booktitle={2013 IEEE International Symposium on Parallel and Distributed Processing, Workshops and Phd Forum}, 
  title={An Evaluation of Different I/O Techniques for Checkpoint/Restart}, 
  year={2013},
  pages={1708-1716},
  doi={10.1109/IPDPSW.2013.145}
}

@INPROCEEDINGS{SCR,
  author={Moody, Adam and Bronevetsky, Greg and Mohror, Kathryn and Supinski, Bronis R. de},
  booktitle={SC '10: Proceedings of the 2010 ACM/IEEE International Conference for High Performance Computing, Networking, Storage and Analysis}, 
  title={Design, Modeling, and Evaluation of a Scalable Multi-level Checkpointing System}, 
  year={2010},
  pages={1-11},
  doi={10.1109/SC.2010.18}
}

@article{ainsworth_graph_2016,
	title = {Graph prefetching using data structure knowledge},
	volume = {01-03-June},
	issn = {9781450343619},
	doi = {10.1145/2925426.2926254},
	journal = {Proceedings of the International Conference on Supercomputing},
	author = {Ainsworth, Sam and Jones, Timothy M.},
	year = {2016},
	keywords = {Graphs, Prefetching},
}

@article{berry_graph_2007,
	title = {Graph {Analysis} with {High} {Performance} {Computing}.},
	journal = {Computing in Science and Engineering},
	author = {Berry, Jonathan and Hendrickson, Bruce},
	year = {2007},
	file = {Graph Analysis With High-Performance Computing:/home/noah/Zotero/storage/T84DCNCC/Graph Analysis With High-Performance Computing.pdf:application/pdf},
}

@mastersthesis{cook_rage_2018,
	title = {{RAGE}: {The} {Rage} {Attack} {Graph} {Engine}},
	author = {Cook, Kyle},
	school = {The {University} of {Tulsa}},
	year = {2018},
	file = {Kyle Cook Thesis:/home/noah/Zotero/storage/2SR28HM2/Kyle Cook Thesis.pdf:application/pdf},
}

@article{cook_scalable_2016,
	title = {Scalable attack graph generation},
	issn = {9781450337526},
	doi = {10.1145/2897795.2897821},
	abstract = {Attack graphs are a powerful modeling technique with which to explore the attack surface of a system. However, they can be difficult to generate due to the exponential growth of the state space, often times making exhaustive search im- practical. This paper discusses an approach for generating large attack graphs with an emphasis on scalable generation over a distributed system. First, a serial algorithm is presented, highlighting bottlenecks and opportunities to exploit inherent concurrency in the generation process. Then a strategy to parallelize this process is presented. Finally, we discuss plans for future work to implement the parallel algorithm using a hybrid distributed/shared memory programming model on a heterogeneous compute node cluster.},
	journal = {Proceedings of the 11th Annual Cyber and Information Security Research Conference, CISRC 2016},
	author = {Cook, Kyle and Shaw, Thomas and Hale, John and Hawrylak, Peter},
	year = {2016},
	keywords = {Attack graphs, Attack modeling, Vulnerability analysis},
	file = {Attachment:/home/noah/Zotero/storage/2YNSLTQH/Scalable Attack Graph Generation:application/pdf},
}

@misc{j_hale_compliance_nodate,
	title = {Compliance {Method} for a {Cyber}-{Physical} {System}},
	author = {{J. Hale} and Hawrylak, P. and Papa, M.},
	note = {U.S. Patent Number 9,471,789, Oct. 18, 2016.},
	number = {9471789},
	file = {Complaince_Graph_US_Patent_9471789:/home/noah/Zotero/storage/55BZN4U7/Complaince_Graph_US_Patent_9471789.pdf:application/pdf},
}

@article{li_combining_2019,
	title = {Combining {OpenCL} and {MPI} to support heterogeneous computing on a cluster},
	issn = {9781450372275},
	doi = {10.1145/3332186.3333059},
	abstract = {This paper presents an implementation of a heterogeneous programming model which combines Open Computing Language (OpenCL) and Message Passing Interface (MPI). The model is applied to solving a Markov decision process (MDP) with value iteration method. The performance test is conducted on a high performance computing cluster. At peak performance, the model is able to achieve a 57X speedup over a serial implementation. For an extremely large input MDP, which has 1,000,000 states, the obtained speedup is still over 12X, showing that this heterogeneous programming model can solve MDPs more efficiently than the serial solver does.},
	journal = {ACM International Conference Proceeding Series},
	author = {Li, Ming and Hawrylak, Peter and Hale, John},
	year = {2019},
	keywords = {Heterogeneous computing, HPC, MDP, MPI, OpenCL, Parallelism},
	file = {Combining OpenCL and MPI to Support Heterogeneous Computing on a Cluster:/home/noah/Zotero/storage/TXHCQ5S8/Combining OpenCL and MPI to Support Heterogeneous Computing on a Cluster.pdf:application/pdf},
}

@article{li_concurrency_2019,
	title = {Concurrency {Strategies} for {Attack} {Graph} {Generation}},
	issn = {9781728120805},
	doi = {10.1109/ICDIS.2019.00033},
	abstract = {The network attack graph is a powerful tool for analyzing network security, but the generation of a large-scale graph is non-trivial. The main challenge is from the explosion of network state space, which greatly increases time and storage costs. In this paper, three parallel algorithms are proposed to generate scalable attack graphs. An OpenMP-based programming implementation is used to test their performance. Compared with the serial algorithm, the best performance from the proposed algorithms provides a 10X speedup.},
	journal = {Proceedings - 2019 2nd International Conference on Data Intelligence and Security, ICDIS 2019},
	author = {Li, Ming and Hawrylak, Peter and Hale, John},
	year = {2019},
	keywords = {Attack Graph, Multi-threaded Programming, Network Security, OpenMP},
	pages = {174--179},
	file = {Ming_LI_Thesis:/home/noah/Zotero/storage/CLSLS335/Ming_LI_Thesis.pdf:application/pdf},
}

@article{ou_scalable_2006,
	title = {A {Scalable} {Approach} to {Attack} {Graph} {Generation}},
	issn = {1595935185},
	author = {Ou, Xinming and Boyer, Wayne F and Mcqueen, Miles A},
	year = {2006},
	journal = {CCS '06: Proceedings of the 13th ACM conference on Computer and communications security},
	keywords = {attack graphs, enterprise network security, logic-programming},
	pages = {336--345},
	file = {1180405.1180446:/home/noah/Zotero/storage/TJKHVC4R/1180405.1180446.pdf:application/pdf},
}

@article{schneier_modeling_1999,
	title = {Modeling {Security} {Threats}},
	url = {https://www.schneier.com/academic/archives/1999/12/attack_trees.html},
	author = {Schneier, Bruce},
	year = {1999},
	journal = {Dr. Dobb's Journal},
	note = {vol. 24, no.12}
}

@article{zhang_boosting_2017,
	title = {Boosting the performance of {FPGA}-based graph processor using hybrid memory cube: {A} case for breadth first search},
	issn = {9781450343541},
	doi = {10.1145/3020078.3021737},
	abstract = {Large graph processing has gained great attention in recent years due to its broad applicability from machine learning to social science. Large real-world graphs, however, are inherently difficult to process efficiently, not only due to their large memory footprint, but also that most graph algorithms entail memory access patterns with poor locality and a low compute-to-memory access ratio. In this work, we leverage the exceptional random access performance of emerging Hybrid Memory Cube (HMC) technology that stacks multiple DRAM dies on top of a logic layer, combined with the flexibility and efficiency of FPGA to address these challenges. To our best knowledge, this is the first work that implements a graph processing system on a FPGA-HMC platform based on software/hardware co-design and co-optimization. We first present the modifications of algorithm and a platform-aware graph processing architecture to perform level-synchronized breadth first search (BFS) on FPGA-HMC platform. To gain better insights into the potential bottlenecks of proposed implementation, we develop an analytical performance model to quantitatively evaluate the HMC access latency and corresponding BFS performance. Based on the analysis, we propose a two-level bitmap scheme to further reduce memory access and perform optimization on key design parameters (e.g. memory access granularity). Finally, we evaluate the performance of our BFS implementation using the AC-510 development kit from Micron. We achieved 166 million edges traversed per second (MTEPS) using GRAPH500 benchmark on a random graph with a scale of 25 and an edge factor of 16, which significantly outperforms CPU and other FPGA-based large graph processors.},
	journal = {FPGA 2017 - Proceedings of the 2017 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays},
	author = {Zhang, Jialiang and Khoram, Soroosh and Li, Jing},
	year = {2017},
	pages = {207--216},
	file = {Boosting the Performance of FPGA-based Graph Processor using Hybrdi Memory Cube:/home/noah/Zotero/storage/CDKPUXYF/Boosting the Performance of FPGA-based Graph Processor using Hybrdi Memory Cube.pdf:application/pdf},
}

