https://github.com/tudasc/cfdscope
A Fluid-Dynamics Proxy App for Teaching Performance Engineering
https://github.com/tudasc/cfdscope
Last synced: 2 months ago
JSON representation
A Fluid-Dynamics Proxy App for Teaching Performance Engineering
- Host: GitHub
- URL: https://github.com/tudasc/cfdscope
- Owner: tudasc
- License: mit
- Created: 2025-01-17T12:10:04.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2025-03-07T09:30:43.000Z (2 months ago)
- Last Synced: 2025-03-07T10:29:59.258Z (2 months ago)
- Language: C++
- Size: 123 KB
- Stars: 0
- Watchers: 4
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Authors: AUTHORS
Awesome Lists containing this project
README
# cfdSCOPE
## Build instructions
```bash
mkdir build
cd build
cmake ..
make
```
To enable trace logging, pass `-DENABLE_TRACE_LOG=ON` to CMake. (Note, that you also need to set the correct logging level when calling the executable.)## Run instructions
```bash
./cfdscope -h # print help about command-line arguments
```### Visualization runs
A good size for trying out the simulation and generating data for visualization is 64x64x64 grid cells.
```bash
OMP_NUM_THREADS=8 ./cfdscope -d 64 -e 5 -s 0.4
```### Benchmarking runs
To conduct performance measurements, use a larger simulation setup:
```bash
time OMP_NUM_THREADS=16 ./cfdscope -d 100 -e 6 -s 0.4
```## Visualization
The `visualize.py` script can be used to render a specific frame of the simulation with [Paraview](https://www.paraview.org/).
To use it, first install Paraview via your system's package manager.
See `python visualize.py -h` for available parameters.### Run visualization
```bash
pvpython visualize.py "/fields.csv.*" --frame 20 --size 64
```
Make sure to match the `-size` parameter to the grid size (`-d`) from the simulation call.## Tests
To run the tests, first enable their compilation at configure time by passing `-DBUILD_TESTS=ON` to CMake.
Then, run:
```bash
tests/unittests
tests/integrationtests
```