Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .github/workflows/c-fortran-test-style.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,12 +21,12 @@ jobs:
- name: Install clang-format
run: |
wget -O- https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
sudo add-apt-repository 'deb http://apt.llvm.org/noble/ llvm-toolchain-noble-19 main'
sudo apt update && sudo apt install clang-format-19
sudo add-apt-repository 'deb http://apt.llvm.org/noble/ llvm-toolchain-noble-22 main'
sudo apt update && sudo apt install clang-format-22
- name: C style
env:
CC: ${{ matrix.compiler }}
FC: gfortran
run: |
make info
make format-c -j CLANG_FORMAT=clang-format-19 && git diff --exit-code
make format-c -j CLANG_FORMAT=clang-format-22 && git diff --exit-code
6 changes: 3 additions & 3 deletions backends/cuda-gen/ceed-cuda-gen-operator-build.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -620,9 +620,9 @@ static int CeedOperatorBuildKernelBasis_Cuda_gen(std::ostringstream &code, CeedO
code << tab << "// Nothing to do AtPoints\n";
} else {
CeedBasis_Cuda_shared *basis_data;
std::string function_name = is_tensor
? ((dim == 1 ? "Weight" : "WeightTensor") + std::to_string(dim) + "d" + (is_all_tensor ? "" : "Flattened"))
: "WeightNonTensor";
std::string function_name = is_tensor
? ((dim == 1 ? "Weight" : "WeightTensor") + std::to_string(dim) + "d" + (is_all_tensor ? "" : "Flattened"))
: "WeightNonTensor";

code << tab << "CeedScalar r_q" << var_suffix << "[" << (is_all_tensor && (dim >= 3) ? Q_name : "1") << "];\n";
CeedCallBackend(CeedBasisGetData(basis, &basis_data));
Expand Down
6 changes: 3 additions & 3 deletions backends/hip-gen/ceed-hip-gen-operator-build.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -648,9 +648,9 @@ static int CeedOperatorBuildKernelBasis_Hip_gen(std::ostringstream &code, CeedOp
code << tab << "// Nothing to do AtPoints\n";
} else {
CeedBasis_Hip_shared *basis_data;
std::string function_name = is_tensor
? ((dim == 1 ? "Weight" : "WeightTensor") + std::to_string(dim) + "d" + (is_all_tensor ? "" : "Flattened"))
: "WeightNonTensor";
std::string function_name = is_tensor
? ((dim == 1 ? "Weight" : "WeightTensor") + std::to_string(dim) + "d" + (is_all_tensor ? "" : "Flattened"))
: "WeightNonTensor";

code << tab << "CeedScalar r_q" << var_suffix << "[" << (is_all_tensor && (dim >= 3) ? Q_name : "1") << "];\n";
CeedCallBackend(CeedBasisGetData(basis, &basis_data));
Expand Down
10 changes: 5 additions & 5 deletions backends/sycl-ref/ceed-sycl-ref-operator.sycl.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -998,11 +998,11 @@ static int CeedOperatorLinearAssembleAddPointBlockDiagonal_Sycl(CeedOperator op,
// Single operator assembly setup
//------------------------------------------------------------------------------
static int CeedOperatorAssembleSingleSetup_Sycl(CeedOperator op) {
Ceed ceed;
CeedInt num_input_fields, num_output_fields, num_eval_mode_in = 0, dim = 1, num_B_in_mats_to_load = 0, size_B_in = 0, num_eval_mode_out = 0,
num_B_out_mats_to_load = 0, size_B_out = 0, num_qpts = 0, elem_size = 0, num_elem, num_comp,
mat_start = 0;
CeedEvalMode *eval_mode_in = NULL, *eval_mode_out = NULL;
Ceed ceed;
CeedInt num_input_fields, num_output_fields, num_eval_mode_in = 0, dim = 1, num_B_in_mats_to_load = 0, size_B_in = 0, num_eval_mode_out = 0,
num_B_out_mats_to_load = 0, size_B_out = 0, num_qpts = 0, elem_size = 0, num_elem, num_comp,
mat_start = 0;
CeedEvalMode *eval_mode_in = NULL, *eval_mode_out = NULL;
const CeedScalar *interp_in, *grad_in;
CeedElemRestriction rstr_in = NULL, rstr_out = NULL;
CeedBasis basis_in = NULL, basis_out = NULL;
Expand Down
36 changes: 18 additions & 18 deletions backends/xsmm/ceed-xsmm-tensor.c
Original file line number Diff line number Diff line change
Expand Up @@ -18,15 +18,15 @@ static int CeedTensorContractApply_Xsmm(CeedTensorContract contract, CeedInt A,
CeedTransposeMode t_mode, const CeedInt add, const CeedScalar *restrict u, CeedScalar *restrict v) {
if (C == 1) {
// Build or query the required kernel
const int flags_t = LIBXSMM_GEMM_FLAGS(!t_mode ? 'T' : 'N', 'N');
const int flags_ab = (!add) ? LIBXSMM_GEMM_FLAG_BETA_0 : LIBXSMM_BASIC_GEMM_FLAG_NONE;
const int flags = (flags_t | flags_ab);
const libxsmm_gemm_shape gemm_shape = (CEED_SCALAR_TYPE == CEED_SCALAR_FP64)
? libxsmm_create_gemm_shape(J, A, B, !t_mode ? B : J, B, J, LIBXSMM_DATATYPE_F64, LIBXSMM_DATATYPE_F64,
LIBXSMM_DATATYPE_F64, LIBXSMM_DATATYPE_F64)
: libxsmm_create_gemm_shape(J, A, B, !t_mode ? B : J, B, J, LIBXSMM_DATATYPE_F32, LIBXSMM_DATATYPE_F32,
LIBXSMM_DATATYPE_F32, LIBXSMM_DATATYPE_F32);
const libxsmm_gemmfunction kernel = libxsmm_dispatch_gemm(gemm_shape, (libxsmm_bitfield)(flags), (libxsmm_bitfield)LIBXSMM_GEMM_PREFETCH_NONE);
const int flags_t = LIBXSMM_GEMM_FLAGS(!t_mode ? 'T' : 'N', 'N');
const int flags_ab = (!add) ? LIBXSMM_GEMM_FLAG_BETA_0 : LIBXSMM_BASIC_GEMM_FLAG_NONE;
const int flags = (flags_t | flags_ab);
const libxsmm_gemm_shape gemm_shape = (CEED_SCALAR_TYPE == CEED_SCALAR_FP64)
? libxsmm_create_gemm_shape(J, A, B, !t_mode ? B : J, B, J, LIBXSMM_DATATYPE_F64, LIBXSMM_DATATYPE_F64,
LIBXSMM_DATATYPE_F64, LIBXSMM_DATATYPE_F64)
: libxsmm_create_gemm_shape(J, A, B, !t_mode ? B : J, B, J, LIBXSMM_DATATYPE_F32, LIBXSMM_DATATYPE_F32,
LIBXSMM_DATATYPE_F32, LIBXSMM_DATATYPE_F32);
const libxsmm_gemmfunction kernel = libxsmm_dispatch_gemm(gemm_shape, (libxsmm_bitfield)(flags), (libxsmm_bitfield)LIBXSMM_GEMM_PREFETCH_NONE);
libxsmm_gemm_param gemm_param;

CeedCheck(kernel, CeedTensorContractReturnCeed(contract), CEED_ERROR_BACKEND, "LIBXSMM kernel failed to build.");
Expand All @@ -38,15 +38,15 @@ static int CeedTensorContractApply_Xsmm(CeedTensorContract contract, CeedInt A,
kernel(&gemm_param);
} else {
// Build or query the required kernel
const int flags_t = LIBXSMM_GEMM_FLAGS('N', t_mode ? 'T' : 'N');
const int flags_ab = (!add) ? LIBXSMM_GEMM_FLAG_BETA_0 : LIBXSMM_BASIC_GEMM_FLAG_NONE;
const int flags = (flags_t | flags_ab);
const libxsmm_gemm_shape gemm_shape = (CEED_SCALAR_TYPE == CEED_SCALAR_FP64)
? libxsmm_create_gemm_shape(C, J, B, C, !t_mode ? B : J, C, LIBXSMM_DATATYPE_F64, LIBXSMM_DATATYPE_F64,
LIBXSMM_DATATYPE_F64, LIBXSMM_DATATYPE_F64)
: libxsmm_create_gemm_shape(C, J, B, C, !t_mode ? B : J, C, LIBXSMM_DATATYPE_F32, LIBXSMM_DATATYPE_F32,
LIBXSMM_DATATYPE_F32, LIBXSMM_DATATYPE_F32);
const libxsmm_gemmfunction kernel = libxsmm_dispatch_gemm(gemm_shape, (libxsmm_bitfield)(flags), (libxsmm_bitfield)LIBXSMM_GEMM_PREFETCH_NONE);
const int flags_t = LIBXSMM_GEMM_FLAGS('N', t_mode ? 'T' : 'N');
const int flags_ab = (!add) ? LIBXSMM_GEMM_FLAG_BETA_0 : LIBXSMM_BASIC_GEMM_FLAG_NONE;
const int flags = (flags_t | flags_ab);
const libxsmm_gemm_shape gemm_shape = (CEED_SCALAR_TYPE == CEED_SCALAR_FP64)
? libxsmm_create_gemm_shape(C, J, B, C, !t_mode ? B : J, C, LIBXSMM_DATATYPE_F64, LIBXSMM_DATATYPE_F64,
LIBXSMM_DATATYPE_F64, LIBXSMM_DATATYPE_F64)
: libxsmm_create_gemm_shape(C, J, B, C, !t_mode ? B : J, C, LIBXSMM_DATATYPE_F32, LIBXSMM_DATATYPE_F32,
LIBXSMM_DATATYPE_F32, LIBXSMM_DATATYPE_F32);
const libxsmm_gemmfunction kernel = libxsmm_dispatch_gemm(gemm_shape, (libxsmm_bitfield)(flags), (libxsmm_bitfield)LIBXSMM_GEMM_PREFETCH_NONE);
libxsmm_gemm_param gemm_param;

CeedCheck(kernel, CeedTensorContractReturnCeed(contract), CEED_ERROR_BACKEND, "LIBXSMM kernel failed to build.");
Expand Down
24 changes: 12 additions & 12 deletions examples/fluids/qfunctions/riemann_solver.h
Original file line number Diff line number Diff line change
Expand Up @@ -238,9 +238,9 @@ CEED_QFUNCTION_HELPER StateConservative RiemannFlux_HLLC_Star_fwd(NewtonianIdeal
StateConservative dF_side, const CeedScalar normal[3], CeedScalar u_side,
CeedScalar du_side, CeedScalar s_side, CeedScalar ds_side, CeedScalar s_star,
CeedScalar ds_star) {
CeedScalar fact = side.U.density * (s_side - u_side) / (s_side - s_star);
CeedScalar dfact = (side.U.density * (ds_side - du_side) + dside.U.density * (s_side - u_side)) / (s_side - s_star) //
- fact / (s_side - s_star) * (ds_side - ds_star);
CeedScalar fact = side.U.density * (s_side - u_side) / (s_side - s_star);
CeedScalar dfact = (side.U.density * (ds_side - du_side) + dside.U.density * (s_side - u_side)) / (s_side - s_star) //
- fact / (s_side - s_star) * (ds_side - ds_star);
CeedScalar denom = side.U.density * (s_side - u_side);
CeedScalar ddenom = side.U.density * (ds_side - du_side) + dside.U.density * (s_side - u_side);

Expand Down Expand Up @@ -317,15 +317,15 @@ CEED_QFUNCTION_HELPER StateConservative RiemannFlux_HLLC_fwd(NewtonianIdealGasCo
// Contact wave speed; Toro (10.37)
CeedScalar rhou_left = left.U.density * u_left, drhou_left = left.U.density * du_left + dleft.U.density * u_left;
CeedScalar rhou_right = right.U.density * u_right, drhou_right = right.U.density * du_right + dright.U.density * u_right;
CeedScalar numer = right.Y.pressure - left.Y.pressure //
+ rhou_left * (s_left - u_left) //
- rhou_right * (s_right - u_right);
CeedScalar dnumer = dright.Y.pressure - dleft.Y.pressure //
+ rhou_left * (ds_left - du_left) + drhou_left * (s_left - u_left) //
- rhou_right * (ds_right - du_right) - drhou_right * (s_right - u_right);
CeedScalar denom = left.U.density * (s_left - u_left) - right.U.density * (s_right - u_right);
CeedScalar ddenom = left.U.density * (ds_left - du_left) + dleft.U.density * (s_left - u_left) //
- right.U.density * (ds_right - du_right) - dright.U.density * (s_right - u_right);
CeedScalar numer = right.Y.pressure - left.Y.pressure //
+ rhou_left * (s_left - u_left) //
- rhou_right * (s_right - u_right);
CeedScalar dnumer = dright.Y.pressure - dleft.Y.pressure //
+ rhou_left * (ds_left - du_left) + drhou_left * (s_left - u_left) //
- rhou_right * (ds_right - du_right) - drhou_right * (s_right - u_right);
CeedScalar denom = left.U.density * (s_left - u_left) - right.U.density * (s_right - u_right);
CeedScalar ddenom = left.U.density * (ds_left - du_left) + dleft.U.density * (s_left - u_left) //
- right.U.density * (ds_right - du_right) - dright.U.density * (s_right - u_right);
CeedScalar s_star = numer / denom;
CeedScalar ds_star = dnumer / denom - numer / Square(denom) * ddenom;

Expand Down
2 changes: 1 addition & 1 deletion examples/nek/bps/bps.h
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ CEED_QFUNCTION(diffsetupf)(void *ctx, CeedInt Q, const CeedScalar *const *in, Ce
const CeedScalar k[3] = {1., 2., 3.};
const CeedScalar rho = w[i] * (J11 * A11 + J21 * A12 + J31 * A13);
rhs[i] = rho * M_PI * M_PI * (k[0] * k[0] + k[1] * k[1] + k[2] * k[2]) * sin(M_PI * (c[0] + k[0] * x[i + Q * 0])) *
sin(M_PI * (c[1] + k[1] * x[i + Q * 1])) * sin(M_PI * (c[2] + k[2] * x[i + Q * 2]));
sin(M_PI * (c[1] + k[1] * x[i + Q * 1])) * sin(M_PI * (c[2] + k[2] * x[i + Q * 2]));
} // End of Quadrature Point Loop
return 0;
}
Expand Down
10 changes: 5 additions & 5 deletions examples/petsc/bpsraw.c
Original file line number Diff line number Diff line change
Expand Up @@ -336,11 +336,11 @@ static PetscErrorCode ComputeErrorMax(OperatorApplyContext op_apply_ctx, CeedOpe
}

int main(int argc, char **argv) {
MPI_Comm comm;
char ceed_resource[PETSC_MAX_PATH_LEN] = "/cpu/self";
double my_rt_start, my_rt, rt_min, rt_max;
PetscInt degree, q_extra, local_nodes, local_elem, mesh_elem[3], m_nodes[3], p[3], i_rank[3], l_nodes[3], l_size, num_comp_u = 1,
ksp_max_it_clip[2];
MPI_Comm comm;
char ceed_resource[PETSC_MAX_PATH_LEN] = "/cpu/self";
double my_rt_start, my_rt, rt_min, rt_max;
PetscInt degree, q_extra, local_nodes, local_elem, mesh_elem[3], m_nodes[3], p[3], i_rank[3], l_nodes[3], l_size, num_comp_u = 1,
ksp_max_it_clip[2];
PetscScalar *r;
PetscBool test_mode, benchmark_mode, write_solution;
PetscMPIInt size, rank;
Expand Down
30 changes: 15 additions & 15 deletions examples/petsc/multigrid.c
Original file line number Diff line number Diff line change
Expand Up @@ -46,21 +46,21 @@ const char help[] = "Solve CEED BPs using p-multigrid with PETSc and DMPlex\n";
#include "include/structs.h"

int main(int argc, char **argv) {
MPI_Comm comm;
char filename[PETSC_MAX_PATH_LEN], ceed_resource[PETSC_MAX_PATH_LEN] = "/cpu/self";
double my_rt_start, my_rt, rt_min, rt_max;
PetscInt degree = 3, q_extra, *l_size, *xl_size, *g_size, dim = 3, fine_level, mesh_elem[3] = {3, 3, 3}, num_comp_u = 1, num_levels = degree,
*level_degrees;
PetscScalar eps = 1.0;
PetscBool test_mode, benchmark_mode, read_mesh, write_solution, simplex;
PetscLogStage solve_stage;
PetscLogEvent assemble_event;
DM *dm, dm_orig;
KSP ksp;
PC pc;
Mat *mat_O, *mat_pr, mat_coarse;
Vec *X, *X_loc, *mult, rhs, rhs_loc;
PetscMemType mem_type;
MPI_Comm comm;
char filename[PETSC_MAX_PATH_LEN], ceed_resource[PETSC_MAX_PATH_LEN] = "/cpu/self";
double my_rt_start, my_rt, rt_min, rt_max;
PetscInt degree = 3, q_extra, *l_size, *xl_size, *g_size, dim = 3, fine_level, mesh_elem[3] = {3, 3, 3}, num_comp_u = 1, num_levels = degree,
*level_degrees;
PetscScalar eps = 1.0;
PetscBool test_mode, benchmark_mode, read_mesh, write_solution, simplex;
PetscLogStage solve_stage;
PetscLogEvent assemble_event;
DM *dm, dm_orig;
KSP ksp;
PC pc;
Mat *mat_O, *mat_pr, mat_coarse;
Vec *X, *X_loc, *mult, rhs, rhs_loc;
PetscMemType mem_type;
OperatorApplyContext *op_apply_ctx, op_error_ctx;
ProlongRestrContext *pr_restr_ctx;
Ceed ceed;
Expand Down
2 changes: 1 addition & 1 deletion interface/ceed-fortran.c
Original file line number Diff line number Diff line change
Expand Up @@ -297,7 +297,7 @@ CEED_EXTERN void fCeedElemRestrictionCreateStrided(int *ceed, int *nelements, in
}

CeedElemRestriction *elemrestriction_ = &CeedElemRestriction_dict[CeedElemRestriction_count];
*err = CeedElemRestrictionCreateStrided(Ceed_dict[*ceed], *nelements, *esize, *num_comp, *lsize,
*err = CeedElemRestrictionCreateStrided(Ceed_dict[*ceed], *nelements, *esize, *num_comp, *lsize,
*strides == FORTRAN_STRIDES_BACKEND ? CEED_STRIDES_BACKEND : strides, elemrestriction_);

if (*err == 0) {
Expand Down
6 changes: 3 additions & 3 deletions interface/ceed-jit-tools.c
Original file line number Diff line number Diff line change
Expand Up @@ -218,9 +218,9 @@ int CeedLoadSourceToInitializedBuffer(Ceed ceed, const char *source_file_path, C
bool is_local_header = is_hash_include && next_quote && (next_new_line - next_quote > 0);
char *next_left_chevron = strchr(first_hash, '<');
bool is_ceed_header = next_left_chevron && (next_new_line - next_left_chevron > 0) &&
(!strncmp(next_left_chevron, "<ceed/jit-source/", 17) || !strncmp(next_left_chevron, "<ceed/types.h>", 14) ||
!strncmp(next_left_chevron, "<ceed/ceed-f32.h>", 17) || !strncmp(next_left_chevron, "<ceed/ceed-f64.h>", 17));
bool is_std_header =
(!strncmp(next_left_chevron, "<ceed/jit-source/", 17) || !strncmp(next_left_chevron, "<ceed/types.h>", 14) ||
!strncmp(next_left_chevron, "<ceed/ceed-f32.h>", 17) || !strncmp(next_left_chevron, "<ceed/ceed-f64.h>", 17));
bool is_std_header =
next_left_chevron && (next_new_line - next_left_chevron > 0) &&
(!strncmp(next_left_chevron, "<std", 4) || !strncmp(next_left_chevron, "<math.h>", 8) || !strncmp(next_left_chevron, "<ceed", 5));

Expand Down
10 changes: 5 additions & 5 deletions tests/t571-operator.c
Original file line number Diff line number Diff line change
Expand Up @@ -19,11 +19,11 @@ int main(int argc, char **argv) {
CeedInt n_x = 3, n_y = 2;
CeedInt num_elem = n_x * n_y;
CeedInt num_dofs_u = (n_x * (p_u - 1) + 1) * (n_y * (p_u - 1) + 1), num_dofs_p = (n_x * (p_p - 1) + 1) * (n_y * (p_p - 1) + 1),
num_qpts = num_elem * q * q;
CeedInt ind_x[num_elem * p_u * p_u], ind_p[num_elem * p_p * p_p];
CeedInt l_size = num_comp_u * num_dofs_u + num_comp_p * num_dofs_p;
CeedScalar assembled_values[l_size * l_size];
CeedScalar assembled_true[l_size * l_size];
num_qpts = num_elem * q * q;
CeedInt ind_x[num_elem * p_u * p_u], ind_p[num_elem * p_p * p_p];
CeedInt l_size = num_comp_u * num_dofs_u + num_comp_p * num_dofs_p;
CeedScalar assembled_values[l_size * l_size];
CeedScalar assembled_true[l_size * l_size];

CeedInit(argv[1], &ceed);

Expand Down
10 changes: 5 additions & 5 deletions tests/t572-operator.c
Original file line number Diff line number Diff line change
Expand Up @@ -20,11 +20,11 @@ int main(int argc, char **argv) {
CeedInt q_data_size = dim * (dim + 1) / 2;
CeedInt num_elem = n_x * n_y;
CeedInt num_dofs_u = (n_x * (p_u - 1) + 1) * (n_y * (p_u - 1) + 1), num_dofs_p = (n_x * (p_p - 1) + 1) * (n_y * (p_p - 1) + 1),
num_qpts = num_elem * q * q;
CeedInt ind_x[num_elem * p_u * p_u], ind_p[num_elem * p_p * p_p];
CeedInt l_size = num_comp_u * num_dofs_u + num_comp_p * num_dofs_p;
CeedScalar assembled_values[l_size * l_size];
CeedScalar assembled_true[l_size * l_size];
num_qpts = num_elem * q * q;
CeedInt ind_x[num_elem * p_u * p_u], ind_p[num_elem * p_p * p_p];
CeedInt l_size = num_comp_u * num_dofs_u + num_comp_p * num_dofs_p;
CeedScalar assembled_values[l_size * l_size];
CeedScalar assembled_true[l_size * l_size];

CeedInit(argv[1], &ceed);

Expand Down
Loading
Loading