CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > SU2

MPI stability

Register Blogs Community New Posts Updated Threads Search

Like Tree1Likes
  • 1 Post By pcg

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   May 4, 2020, 22:31
Default MPI stability
  #1
Member
 
Join Date: Dec 2019
Posts: 30
Rep Power: 6
jcownbey is on a distinguished road
This question was asked in a previous thread, but with no answer. I am encountering the same issues.

I tried running SU2 on the same mesh and config file with a different number of cores to determine the optimal number of cells/core I should use. I also examined the residual, RhoE, of each run. The residuals seem to become more unstable as more cores are used, causing the solution to diverge.

Attached is the residual of a run on a axisymmetric nozzle with 600k points. (Spacing at the wall is 1e-7 m). Each run ran for 10000 iterations. The legend in the attachment shows the cells/core
Attached Images
File Type: png Capture.PNG (41.3 KB, 40 views)
jcownbey is offline   Reply With Quote

Old   May 5, 2020, 04:38
Default
  #2
pcg
Senior Member
 
Pedro Gomes
Join Date: Dec 2017
Posts: 465
Rep Power: 13
pcg is on a distinguished road
Given the rate at which the case is converging, I would say you are at the limit of what SU2 can handle (what is the aspect ratio of your wall cells? What options are you using?).

The most challenging aspect of implementing CFD methods is preserving their properties as you try to scale up. For example, our multigrid approach loses effectiveness as you increase core count, likewise for the LU-SGS and ILU preconditioners (which manifests itself as an increase in number of linear solver iterations for the same tolerance).
pcg is offline   Reply With Quote

Old   May 5, 2020, 17:08
Default
  #3
Member
 
Join Date: Dec 2019
Posts: 30
Rep Power: 6
jcownbey is on a distinguished road
The aspect ratio at the wall is ~3000 in this mesh.

This is a RANS calculation with SA turbulence using an implicit method and a AUSM scheme. Everything is 1st-order with a CFL of 10. The entropy coefficient is set to 1. I am using the ILU preconditioner for this run. Below is a copy of my config file for reference. I have also had trouble with achieving convergence for this simulation - could that also be contributing to the instability from using more cores?

% File Version 7.0.3 "Blackbird"

% ------------- DIRECT, ADJOINT, AND LINEARIZED PROBLEM DEFINITION ------------%
% Solver type (EULER, NAVIER_STOKES, RANS,
% INC_EULER, INC_NAVIER_STOKES, INC_RANS
% FEM_EULER, FEM_NAVIER_STOKES, FEM_RANS, FEM_LES,
% HEAT_EQUATION_FVM, ELASTICITY)
SOLVER= RANS
KIND_TURB_MODEL= SA % Specify turbulence model (NONE, SA, SA_NEG, SST, SA_E, SA_COMP, SA_E_COMP, SST_SUST)
MATH_PROBLEM= DIRECT % Mathematical problem (DIRECT, CONTINUOUS_ADJOINT, DISCRETE_ADJOINT)
AXISYMMETRIC= YES % Axisymmetric simulation, only compressible flows (NO, YES)
RESTART_SOL= YES % Restart solution (NO, YES)
SYSTEM_MEASUREMENTS= SI

% ------------------------------- SOLVER CONTROL ------------------------------%
ITER= 10000 % Maximum number of inner iterations
CONV_FIELD= RMS_DENSITY % Convergence field
CONV_RESIDUAL_MINVAL= -12 % Min value of the residual (log10 of the residual)
CONV_STARTITER= 1 % Start convergence criteria at iteration number
CONV_CAUCHY_ELEMS= 100 % Number of elements to apply the criteria
CONV_CAUCHY_EPS= 1E-10 % Epsilon to control the series convergence

% ------------------------- TIME-DEPENDENT SIMULATION -------------------------------%
TIME_DOMAIN= NO % Time domain simulation

% -------------------- COMPRESSIBLE FREE-STREAM DEFINITION --------------------%
MACH_NUMBER= 1e-9 % Mach number (non-dimensional, based on the free-stream values)
% Init option to choose between Reynolds (default) or thermodynamics quantities
% for initializing the solution (REYNOLDS, TD_CONDITIONS)
INIT_OPTION= TD_CONDITIONS
% Free-stream option to choose between density and temperature (default) for
% initializing the solution (TEMPERATURE_FS, DENSITY_FS)
FREESTREAM_OPTION= TEMPERATURE_FS
FREESTREAM_PRESSURE= 2000 % Free-stream pressure (101325.0 N/m^2, 2116.216 psf by default)
FREESTREAM_TEMPERATURE= 212 % Free-stream temperature (288.15 K, 518.67 R by default)
% Compressible flow non-dimensionalization (DIMENSIONAL, FREESTREAM_PRESS_EQ_ONE,
% FREESTREAM_VEL_EQ_MACH, FREESTREAM_VEL_EQ_ONE)
REF_DIMENSIONALIZATION= DIMENSIONAL

% ---- IDEAL GAS, POLYTROPIC, VAN DER WAALS AND PENG ROBINSON CONSTANTS -------%
% Fluid model (STANDARD_AIR, IDEAL_GAS, VW_GAS, PR_GAS,
% CONSTANT_DENSITY, INC_IDEAL_GAS, INC_IDEAL_GAS_POLY)
FLUID_MODEL= IDEAL_GAS
% Ratio of specific heats (1.4 default and the value is hardcoded
% for the model STANDARD_AIR, compressible only)
GAMMA_VALUE= 1.3448
% Specific gas constant (287.058 J/kg*K default and this value is hardcoded
% for the model STANDARD_AIR, compressible only)
GAS_CONSTANT= 283.22845

% Temperature polynomial coefficients (up to quartic) for specific heat Cp.
% Format -> Cp(T) : b0 + b1*T + b2*T^2 + b3*T^3 + b4*T^4
CP_POLYCOEFFS= (926.55709422388, 0.169323866173782, 1.26310949215E-4, -1.07657580419E-7, 2.10452345942872E-11)

% --------------------------- VISCOSITY MODEL ---------------------------------%
VISCOSITY_MODEL= SUTHERLAND % Viscosity model (SUTHERLAND, CONSTANT_VISCOSITY, POLYNOMIAL_VISCOSITY).
MU_REF= 1.762690163418573e-05 % Sutherland Viscosity Ref (1.716E-5 default value for AIR SI)
MU_T_REF= 273 % Sutherland Temperature Ref (273.15 K default value for AIR SI)
SUTHERLAND_CONSTANT= 140.3321773281668 % Sutherland constant (110.4 default value for AIR SI)

% --------------------------- THERMAL CONDUCTIVITY MODEL ----------------------%
% Laminar Conductivity model (CONSTANT_CONDUCTIVITY, CONSTANT_PRANDTL,
% POLYNOMIAL_CONDUCTIVITY).
CONDUCTIVITY_MODEL= CONSTANT_PRANDTL
PRANDTL_LAM= 0.7377 % Laminar Prandtl number (0.72 (air), only for CONSTANT_PRANDTL)
% Temperature polynomial coefficients (up to quartic) for conductivity.
% Format -> Kt(T) : b0 + b1*T + b2*T^2 + b3*T^3 + b4*T^4
% KT_POLYCOEFFS= (6.22054491931E-1, 2.89460469859E-4, -3.30992530520E-7, 1.54377673179E-10, -2.52938929691E-14)
% Definition of the turbulent thermal conductivity model for RANS
TURBULENT_CONDUCTIVITY_MODEL= CONSTANT_PRANDTL_TURB % (CONSTANT_PRANDTL_TURB by default, NONE).
PRANDTL_TURB= 0.90 % Turbulent Prandtl number (0.9 (air) by default)

% -------------------- BOUNDARY CONDITION DEFINITION --------------------------%
%MARKER_EULER= ( Wall )
% Navier-Stokes (no-slip), constant heat flux wall marker(s) (NONE = no marker)
% Format: ( marker name, constant heat flux (J/m^2), ... )
MARKER_HEATFLUX= ( Wall, 0.0 )
%MARKER_FAR= ( Inflow ) % Far-field boundary marker(s) (NONE = no marker)
MARKER_SUPERSONIC_INLET= ( Inflow, 1639.4, 1853900, 834.851544183, 0, 0 )
MARKER_SUPERSONIC_OUTLET= ( Outflow ) % Supersonic outlet boundary marker(s) (NONE = no marker)
%INLET_TYPE= TOTAL_CONDITIONS % Inlet boundary type (TOTAL_CONDITIONS, MASS_FLOW)
% Riemann boundary marker(s) (NONE = no marker)
% Format: (marker, data kind flag, list of data)
%MARKER_RIEMANN= ( Inflow, TOTAL_CONDITIONS_PT, 1853900, 1639.4, 1.0, 0.0, 0.0, Outflow, STATIC_PRESSURE, 2022.55 0.0, 0.0, 0.0, 0.0)
MARKER_SYM= ( Symmetry ) % Symmetry boundary marker(s) (NONE = no marker)

% ------------- COMMON PARAMETERS DEFINING THE NUMERICAL METHOD ---------------%
NUM_METHOD_GRAD= GREEN_GAUSS % Numerical method for spatial gradients (GREEN_GAUSS, WEIGHTED_LEAST_SQUARES)
CFL_NUMBER= 10 % CFL number (initial value for the adaptive CFL number)
CFL_ADAPT= NO % Adaptive CFL number (NO, YES)
% Parameters of the adaptive CFL number (factor down, factor up, CFL min value,
% CFL max value )
CFL_ADAPT_PARAM= ( 0.7, 1.2, 10.0, 25.0 )
MAX_DELTA_TIME= 1E6 % Maximum Delta Time in local time stepping simulations
RK_ALPHA_COEFF= ( 0.66667, 0.66667, 1.000000 ) % Runge-Kutta alpha coefficients

% ----------- SLOPE LIMITER AND DISSIPATION SENSOR DEFINITION -----------------%
% Monotonic Upwind Scheme for Conservation Laws (TVD) in the flow equations.
% Required for 2nd order upwind schemes (NO, YES)
MUSCL_FLOW= NO
% Slope limiter (NONE, VENKATAKRISHNAN, VENKATAKRISHNAN_WANG,
% BARTH_JESPERSEN, VAN_ALBADA_EDGE)
SLOPE_LIMITER_FLOW= VENKATAKRISHNAN
% Monotonic Upwind Scheme for Conservation Laws (TVD) in the turbulence equations.
% Required for 2nd order upwind schemes (NO, YES)
MUSCL_TURB= NO
% Slope limiter (NONE, VENKATAKRISHNAN, VENKATAKRISHNAN_WANG,
% BARTH_JESPERSEN, VAN_ALBADA_EDGE)
SLOPE_LIMITER_TURB= VAN_ALBADA_EDGE
% Coefficient for the Venkat's limiter (upwind scheme). A larger values decrease
% the extent of limiting, values approaching zero cause
% lower-order approximation to the solution (0.05 by default)
VENKAT_LIMITER_COEFF= 0.05
LIMITER_ITER= 9999999 % Freeze the value of the limiter after a number of iterations
% 2nd and 4th order artificial dissipation coefficients for
% the JST method ( 0.5, 0.02 by default )
JST_SENSOR_COEFF= ( 0.5, 0.02 )

% ------------------------ LINEAR SOLVER DEFINITION ---------------------------%
% Linear solver or smoother for implicit formulations:
% BCGSTAB, FGMRES, RESTARTED_FGMRES, CONJUGATE_GRADIENT (self-adjoint problems only), SMOOTHER.
LINEAR_SOLVER= FGMRES
LINEAR_SOLVER_PREC= ILU % Preconditioner of the Krylov linear solver or type of smoother (ILU, LU_SGS, LINELET, JACOBI)
LINEAR_SOLVER_ILU_FILL_IN= 0 % Linael solver ILU preconditioner fill-in level (0 by default)
LINEAR_SOLVER_ERROR= 1E-4 % Minimum error of the linear solver for implicit formulations
LINEAR_SOLVER_ITER= 10 % Max number of iterations of the linear solver for the implicit formulation
LINEAR_SOLVER_RESTART_FREQUENCY= 10 % Restart frequency for RESTARTED_FGMRES
LINEAR_SOLVER_SMOOTHER_RELAXATION= 1.0 % Relaxation factor for smoother-type solvers (LINEAR_SOLVER= SMOOTHER)

% -------------------------- MULTIGRID PARAMETERS -----------------------------%
MGLEVEL= 0 % Multi-grid levels (0 = no multi-grid)

% -------------------- FLOW NUMERICAL METHOD DEFINITION -----------------------%
% Convective numerical method (JST, LAX-FRIEDRICH, CUSP, ROE, AUSM, AUSMPLUSUP,
% AUSMPLUSUP2, HLLC, TURKEL_PREC, MSW, FDS, SLAU, SLAU2)
CONV_NUM_METHOD_FLOW= AUSM
% Entropy fix coefficient (0.0 implies no entropy fixing, 1.0 implies scalar
% artificial dissipation)
ENTROPY_FIX_COEFF= 1
% Higher values than 1 (3 to 4) make the global Jacobian of central schemes (compressible flow
% only) more diagonal dominant (but mathematically incorrect) so that higher CFL can be used.
CENTRAL_JACOBIAN_FIX_FACTOR= 1.0
TIME_DISCRE_FLOW= EULER_IMPLICIT % Time discretization (RUNGE-KUTTA_EXPLICIT, EULER_IMPLICIT, EULER_EXPLICIT)

% -------------------- TURBULENT NUMERICAL METHOD DEFINITION ------------------%
CONV_NUM_METHOD_TURB= SCALAR_UPWIND % Convective numerical method (SCALAR_UPWIND)
TIME_DISCRE_TURB= EULER_IMPLICIT % Time discretization (EULER_IMPLICIT)
CFL_REDUCTION_TURB= 1.0 % Reduction factor of the CFL coefficient in the turbulence problem

% --------------------- HEAT NUMERICAL METHOD DEFINITION ----------------------%
THERMAL_DIFFUSIVITY= 2.6583e-05 % Value of the thermal diffusivity

% ------------------------- SCREEN/HISTORY VOLUME OUTPUT --------------------------%
SCREEN_OUTPUT= (INNER_ITER, WALL_TIME, RMS_DENSITY, RMS_ENERGY, AVG_CFL) % Screen output fields (use 'SU2_CFD -d <config_file>' to view list of available fields)
HISTORY_OUTPUT= (ITER, RMS_RES, CFL_NUMBER, NONPHYSICAL_POINTS) % History output groups (use 'SU2_CFD -d <config_file>' to view list of available fields)
VOLUME_OUTPUT= (COORDINATES, SOLUTION, PRIMITIVE) % Volume output fields/groups (use 'SU2_CFD -d <config_file>' to view list of available fields)
% Writing frequency for screen output
SCREEN_WRT_FREQ_INNER= 1
SCREEN_WRT_FREQ_OUTER= 1
SCREEN_WRT_FREQ_TIME= 1
% Writing frequency for history output
HISTORY_WRT_FREQ_INNER= 5000
HISTORY_WRT_FREQ_OUTER= 1
HISTORY_WRT_FREQ_TIME= 1
OUTPUT_WRT_FREQ= 5000 % Writing frequency for volume/surface output

% ------------------------- INPUT/OUTPUT FILE INFORMATION --------------------------%
MESH_FILENAME= iter_6.1.2_600k.su2 % Mesh input file
MESH_FORMAT= SU2 % Mesh input file format (SU2, CGNS)
MESH_OUT_FILENAME= mesh_out.su2 % Mesh output file
SOLUTION_FILENAME= inviscid_flow.dat % Restart flow input file

TABULAR_FORMAT= TECPLOT % Output tabular file format (TECPLOT, CSV)
OUTPUT_FILES= (RESTART, TECPLOT, SURFACE_TECPLOT) % Files to output
CONV_FILENAME= history % Output file convergence history (w/o extension)
BREAKDOWN_FILENAME= forces_breakdown.dat % Output file with the forces breakdown
RESTART_FILENAME= inviscid_flow.dat % Output file restart flow

VOLUME_FILENAME= flow % Output file flow (w/o extension) variables
SURFACE_FILENAME= surface_flow % Output file surface flow coefficient (w/o extension)

READ_BINARY_RESTART= YES % Read binary restart files (YES, NO)
REORIENT_ELEMENTS= YES % Reorient elements based on potential negative volumes (YES/NO)
jcownbey is offline   Reply With Quote

Old   May 6, 2020, 11:27
Default
  #4
pcg
Senior Member
 
Pedro Gomes
Join Date: Dec 2017
Posts: 465
Rep Power: 13
pcg is on a distinguished road
Yes, I think it will definitely contribute.
3000 aspect ratio is quite a bit, and for the convective scheme you are using the entropy correction will affect at most the boundaries (I'm sure it has no influence inside the domain).
I would try a different scheme, e.g. Roe for which the entropy correction will help with stability (at the expense of dissipation) or a more modern variant of AUSM, AUSM+up, SLAU etc. For those you can use option USE_ACCURATE_FLUX_JACOBIANS=YES which in some cases improves stability a lot.
Also I don't recommend setting MACH_NUMBER to such low values as some schemes will use it as reference.
jcownbey likes this.
pcg is offline   Reply With Quote

Reply

Tags
mpi, stability


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Floating Point overflow and MPI tuning parms lstonebr STAR-CCM+ 0 September 1, 2019 17:41
mpirun, best parameters pablodecastillo Hardware 18 November 10, 2016 12:36
[OpenFOAM.org] MPI compiling and version mismatch pki OpenFOAM Installation 7 June 15, 2015 16:21
Error using LaunderGibsonRSTM on SGI ALTIX 4700 jaswi OpenFOAM 2 April 29, 2008 10:54
Is Testsuite on the way or not lakeat OpenFOAM Installation 6 April 28, 2008 11:12


All times are GMT -4. The time now is 18:23.