EnhancedSolver port complete #3
No reviewers
Labels
No Label
No Milestone
No project
No Assignees
2 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: moebiusband/NuSiF-Solver#3
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch ":main"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Hello Dr. Eitzinger,
This pull request includes segregated Basic and Enhanced Solver. These versions are fully tested end-to-end and works in all generic cases.
Extensive regression and smoke testing is done with every configuration possible ( v1, v2, v3 with mg, rb, sor, also the ENABLE_MPI flag in mpi versions).
EnhancedSolver is built on top of BasicSolver, so the changes in BasicSolver reflects in EnhancedSolver.
Great work! Thank you.
I added some comments.
I suggest to move the residual output from progress to either main.c or a dedicated file. Maybe utils?
Otherwise it is minor things. Maybe we should switch from ICC to ICX as default. ICC is deprecated. But this is not urgent and we can also do it after the merge.
@ -15,3 +15,3 @@
int sum = 0;
for (int i = 0; i < position; i++) {
for (int i = 0; i < position; i += position) {
Is this correct? If yes, why is it a loop? It is always executed only one time?
You were right, this function is not required in comm-v1.c in anymore. Removed.
@ -268,2 +267,4 @@
#endif
}
void commUpdateDatatypes(Comm* oldcomm, Comm* newcomm, int imaxLocal, int jmaxLocal)
I saw this is used in the multigrid solver. Could you add a short comment here what this routine is used for.
@ -50,2 +50,4 @@
fflush(stdout);
}
FILE* initResidualWriter()
I would not put it here, but in the main.c file. The general output is also in main and it is not a lot of code.
@ -11,3 +11,3 @@
extern void printProgress(double);
extern void stopProgress();
extern FILE* initResidualWriter(void);
See above, put in main.c
@ -1,12 +1,12 @@
# Supported: GCC, CLANG, ICC
TAG ?= CLANG
TAG ?= ICC
Maybe we should consider switching to ICX as ICC is deprecated
Done
@ -50,2 +50,4 @@
fflush(stdout);
}
FILE* initResidualWriter()
As mentioned before. Put in main.c
@ -10,5 +10,7 @@
extern void initProgress(double);
extern void printProgress(double);
extern void stopProgress(void);
extern FILE* initResidualWriter(void);
Put in main.c
@ -48,3 +48,18 @@ void stopProgress()
printf("\n");
fflush(stdout);
}
Please move everywhere to main.c or maybe put in separate compilation unit
The requested changes has been done.