You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
<img src="https://img.shields.io/badge/Portfolio-Case%20Study-2ea44f.svg" alt="Portfolio case study">
10
13
</a>
11
14
</p>
12
15
@@ -28,6 +31,7 @@ The project was developed for a High Performance Computing course at Bergische U
28
31
- deadlock-free communication between neighboring MPI ranks
29
32
- strong-scaling measurements across several process counts
30
33
- Octave scripts for runtime, efficiency, and route-quality plots
34
+
- GitHub Actions production build and two-rank smoke execution
31
35
32
36
## How the solver works
33
37
@@ -102,6 +106,21 @@ Submit the cluster scaling study with:
102
106
sbatch script/scaling_test.sh
103
107
```
104
108
109
+
## Continuous integration
110
+
111
+
The GitHub Actions workflow performs two separate checks:
112
+
113
+
1. it builds the production solver with the unchanged scientific defaults
114
+
2. it builds a temporary reduced-iteration binary in the CI runner and executes it with two MPI ranks
115
+
116
+
The smoke run verifies that:
117
+
118
+
- MPI communication completes without hanging
119
+
- the global reduction returns a finite positive route length
120
+
- the saved route is a valid permutation of all 52 Berlin52 cities
121
+
122
+
The temporary iteration reduction is used only to keep CI fast. It does not change the repository’s production solver or the published scaling results.
123
+
105
124
## Repository structure
106
125
107
126
```text
@@ -110,6 +129,7 @@ script/scaling_test.sh cluster scaling study
110
129
script/plot_*.m Octave plotting scripts
111
130
data/berlin52.tsp included benchmark case
112
131
figures/ selected published plots
132
+
.github/workflows/ci.yml production build and MPI smoke test
0 commit comments