Skip to content

Conversation

@artv3
Copy link
Member

@artv3 artv3 commented Dec 26, 2025

This WIP PR addresses issues: #578 along with major clean up passes...

Relevant kernels will be checked to be consistent with MFEM-4.9. FOM will be updated to be the DOF

Checklist:

  • Convection
  • Diffusion
  • MassPA
  • MassEA
  • MassVec
  • MassAtomic

/// for(int dx=0; dx<mpa3d_at::D1D; ++dx) {
/// int j = dx + mpa3d_at::D1D * (dy + dz * mpa3d_at::D1D);
/// //missing dof_map for lexicographical ordering
/// thread_dofs[j] = m_elemToDoF[j + mpa3d_at::D1D * mpa3d_at::D1D *
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@tomstitt , I have here the first cut of the action of the mass matrix with atomics... Not sure how important this is by I currently left out the missing dof_map which gives us the lexicographical ordering....

MASS3DPA_ATOMIC_3;
}

SHARED_LOOP_3D(qx, qy, dz, mpa3d_at::Q1D, mpa3d_at::Q1D, mpa3d_at::D1D) {
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@llnl/raja-core , what do you guys think of name-spacing the constants?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That seems reasonable to me.


//How does this work??
//getTargetProblemSize();
//m_NE = std::max(static_cast<Index_type>( (getTargetProblemSize() + , Index_type(1));
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@MrBurmark , I'm a bit confused here. How do incorporate the getTargetProblemSize() into our calculation?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's the value that comes in from the command line for size.
If this kernel is the same as the non-atomic version of this kernel then this whole file should be almost identical to MASS3DPA.cpp.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants