armon.jl
A performance portable HPC Cartesian CFD solver on CPUs and GPUs
Science Score: 31.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
○.zenodo.json file
-
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (11.8%) to scientific vocabulary
Repository
A performance portable HPC Cartesian CFD solver on CPUs and GPUs
Basic Info
Statistics
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 5
- Releases: 0
Metadata Files
README.md
Armon.jl
Armon.jl is an experimental 2D CFD solver for compressible non-viscous fluids, using a finite volume method.
It was developed to explore Julia's capabilities in HPC and for performance portability: it should perform very well on any CPU (tested on Nvidia Grace CPU, AMD Milan 7763, Intel Skylake Xeon Platinum 8168...) and GPU (tested on Nvidia A100, AMD MI250, Intel Max 1100...) without any additional configuration. Domain decomposition is done using MPI, and cache-blocking is performed in a single process for higher performance on CPU.
The twin project Armon-Kokkos is a mirror of the core of this solver (with much less options, without MPI or cache-blocking) written in C++ using the Kokkos library. It is possible to reuse kernels from that solver in this one, using the Kokkos.jl package.
Armon.jl was created in order to create a portable CFD benchmark.
The benchmark branch is the state of the
repository for which most of the results for an upcoming paper were obtained.
Installation
Armon.jl is an unregistered Julia package: to install it, clone this repository
(using Pkg; Pkg.develop(url="https://github.com/Keluaa/Armon.jl")).
Usage
Parameters are detailed in the help of ArmonParameters.
```julia julia> using Armon
julia> params = ArmonParameters(use_MPI=false, options...);
julia> armon(params); # Run the solver ```
Owner
- Name: Luc Briand
- Login: Keluaa
- Kind: user
- Repositories: 5
- Profile: https://github.com/Keluaa
Citation (CITATION.bib)
@misc{Armon.jl,
author = {Luc Briand <luc.briand35@gmail.com> and contributors},
title = {Armon.jl},
url = {https://github.com/Keluaa/Armon.jl},
version = {v0.1.0},
year = {2023},
month = {2}
}
GitHub Events
Total
- Push event: 21
- Pull request event: 2
- Create event: 2
Last Year
- Push event: 21
- Pull request event: 2
- Create event: 2
Issues and Pull Requests
Last synced: 11 months ago
All Time
- Total issues: 0
- Total pull requests: 20
- Average time to close issues: N/A
- Average time to close pull requests: 12 days
- Total issue authors: 0
- Total pull request authors: 1
- Average comments per issue: 0
- Average comments per pull request: 0.55
- Merged pull requests: 12
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 8
- Average time to close issues: N/A
- Average time to close pull requests: 24 days
- Issue authors: 0
- Pull request authors: 1
- Average comments per issue: 0
- Average comments per pull request: 0.5
- Merged pull requests: 2
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
- Keluaa (30)