Skip to content

Commit

Permalink
Add Ginkgo papers' references.
Browse files Browse the repository at this point in the history
  • Loading branch information
tcojean committed Jul 2, 2020
1 parent 8f5d494 commit 6f88f27
Show file tree
Hide file tree
Showing 4 changed files with 116 additions and 1 deletion.
94 changes: 94 additions & 0 deletions CITING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,94 @@
# Citing Ginkgo {#citing_ginkgo}

The main Ginkgo paper describing Ginkgo's purpose, design and interface is
available through the following reference:

``` bibtex
@misc{anzt2020ginkgo,
title={Ginkgo: A Modern Linear Operator Algebra Framework for High Performance Computing},
author={Hartwig Anzt and Terry Cojean and Goran Flegar and Fritz Göbel and Thomas Grützmacher and Pratik Nayak and Tobias Ribizel and Yuhsiang Mike Tsai and Enrique S. Quintana-Ortí},
year={2020},
eprint={2006.16852},
archivePrefix={arXiv},
primaryClass={cs.MS}
}
```

Multiple topical papers exist on Ginkgo and its algorithms. The following papers
can be used to cite specific aspects of the Ginkgo project.

### On Portability

``` bibtex
@misc{tsai2020preparing,
title={Preparing Ginkgo for AMD GPUs -- A Testimonial on Porting CUDA Code to HIP},
author={Yuhsiang M. Tsai and Terry Cojean and Tobias Ribizel and Hartwig Anzt},
year={2020},
eprint={2006.14290},
archivePrefix={arXiv},
primaryClass={cs.MS}
}
```

### On Software Sustainability

``` bibtex
@inproceedings{10.1145/3324989.3325719,
author = {Anzt, Hartwig and Chen, Yen-Chen and Cojean, Terry and Dongarra, Jack and Flegar, Goran and Nayak, Pratik and Quintana-Ort\'{\i}, Enrique S. and Tsai, Yuhsiang M. and Wang, Weichung},
title = {Towards Continuous Benchmarking: An Automated Performance Evaluation Framework for High Performance Software},
year = {2019},
isbn = {9781450367707},
publisher = {Association for Computing Machinery},
address = {New York, NY, USA},
url = {https://doi.org/10.1145/3324989.3325719},
doi = {10.1145/3324989.3325719},
booktitle = {Proceedings of the Platform for Advanced Scientific Computing Conference},
articleno = {9},
numpages = {11},
keywords = {interactive performance visualization, healthy software lifecycle, continuous integration, automated performance benchmarking},
location = {Zurich, Switzerland},
series = {PASC ’19}
}
```

### On SpMV performance

``` bibtex
@InProceedings{10.1007/978-3-030-50743-5_16,
author="Tsai, Yuhsiang M.
and Cojean, Terry
and Anzt, Hartwig",
editor="Sadayappan, Ponnuswamy
and Chamberlain, Bradford L.
and Juckeland, Guido
and Ltaief, Hatem",
title="Sparse Linear Algebra on AMD and NVIDIA GPUs -- The Race Is On",
booktitle="High Performance Computing",
year="2020",
publisher="Springer International Publishing",
address="Cham",
pages="309--327",
abstract="Efficiently processing sparse matrices is a central and performance-critical part of many scientific simulation codes. Recognizing the adoption of manycore accelerators in HPC, we evaluate in this paper the performance of the currently best sparse matrix-vector product (SpMV) implementations on high-end GPUs from AMD and NVIDIA. Specifically, we optimize SpMV kernels for the CSR, COO, ELL, and HYB format taking the hardware characteristics of the latest GPU technologies into account. We compare for 2,800 test matrices the performance of our kernels against AMD's hipSPARSE library and NVIDIA's cuSPARSE library, and ultimately assess how the GPU technologies from AMD and NVIDIA compare in terms of SpMV performance.",
isbn="978-3-030-50743-5"
}
@article{10.1145/3380930,
author = {Anzt, Hartwig and Cojean, Terry and Yen-Chen, Chen and Dongarra, Jack and Flegar, Goran and Nayak, Pratik and Tomov, Stanimire and Tsai, Yuhsiang M. and Wang, Weichung},
title = {Load-Balancing Sparse Matrix Vector Product Kernels on GPUs},
year = {2020},
issue_date = {March 2020},
publisher = {Association for Computing Machinery},
address = {New York, NY, USA},
volume = {7},
number = {1},
issn = {2329-4949},
url = {https://doi.org/10.1145/3380930},
doi = {10.1145/3380930},
journal = {ACM Trans. Parallel Comput.},
month = mar,
articleno = {2},
numpages = {26},
keywords = {irregular matrices, GPUs, Sparse Matrix Vector Product (SpMV)}
}
```
20 changes: 20 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -164,3 +164,23 @@ Depending on the configuration options used when building Ginkgo, third party
software may be pulled as additional dependencies, which have their own
licensing conditions. Refer to [ABOUT-LICENSING.md](ABOUT-LICENSING.md) for
details.

Citing Ginkgo
-------------

The main Ginkgo paper describing Ginkgo's purpose, design and interface is
available through the following reference:

``` bibtex
@misc{anzt2020ginkgo,
title={Ginkgo: A Modern Linear Operator Algebra Framework for High Performance Computing},
author={Hartwig Anzt and Terry Cojean and Goran Flegar and Fritz Göbel and Thomas Grützmacher and Pratik Nayak and Tobias Ribizel and Yuhsiang Mike Tsai and Enrique S. Quintana-Ortí},
year={2020},
eprint={2006.16852},
archivePrefix={arXiv},
primaryClass={cs.MS}
}
```

For more information on topical subjects, please refer to the [CITING.md
page](CITING.md).
1 change: 1 addition & 0 deletions doc/DoxygenLayout.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
<tab type="mainpage" visible="yes" title=""/>
<tab type="user" visible="yes" title="Tutorial" url="https://github.com/ginkgo-project/ginkgo/wiki/Tutorial:-Building-a-Poisson-Solver" />
<tab type="user" visible="yes" title="Examples" url="@ref Examples" />
<tab type="user" visible="yes" title="Citing" url="@ref citing_ginkgo" />
<tab type="user" visible="yes" title="Contributing" url="@ref contributing_guidelines" />
<tab type="user" visible="yes" title="Using Ginkgo" url="@ref install_ginkgo">
<tab type="user" visible="yes" title="Installing Ginkgo" url="@ref install_ginkgo" />
Expand Down
2 changes: 1 addition & 1 deletion doc/helpers.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,7 @@ function(ginkgo_doc_gen name in pdf mainpage-in)
${doxygen_base_input}
)
# pick some markdown files we want as pages
set(doxygen_markdown_files "../../INSTALL.md ../../TESTING.md ../../BENCHMARKING.md ../../CONTRIBUTING.md")
set(doxygen_markdown_files "../../INSTALL.md ../../TESTING.md ../../BENCHMARKING.md ../../CONTRIBUTING.md ../../CITING.md")
ginkgo_to_string(doxygen_base_input_str ${doxygen_base_input} )
ginkgo_to_string(doxygen_dev_input_str ${doxygen_dev_input} )
ginkgo_to_string(doxygen_image_path_str ${doxygen_image_path} )
Expand Down

0 comments on commit 6f88f27

Please sign in to comment.