libCEED
libCEED copied to clipboard
v0.13
~~Blocked by #1788~~ ~~Blocked by #1711~~ ~~Blocked by #1653~~
Draft release notes:
New features
- Add
CeedOperatorCreateAtPointswhich evaluates theCeedQFunctionat arbitrary locations in each element, for use in Particle in Cell, Material Point Method, and similar methods. - Add
CeedElemRestrictionGetLLayoutto provide L-vector layout for stridedCeedElemRestrictioncreated withCEED_BACKEND_STRIDES. - Add
CeedVectorReturnCeedand similar when parentCeedcontext for a libCEED object is only needed once in a calling scope. - Enable
#pragma oncefor all JiT source; remove duplicate includes in JiT source string before compilation. - Allow user to set additional compiler options for CUDA and HIP JiT.
Specifically, directories set with
CeedAddJitSourceRoot(ceed, "foo/bar")will be used to set-Ifoo/barand defines set withCeedAddJitDefine(ceed, "foo=bar")will be used to set-Dfoo=bar. - Added non-tensor basis support to code generation backends
/gpu/cuda/genand/gpu/hip/gen. - Added support to code generation backends
/gpu/cuda/genand/gpu/hip/genfor operators with both tensor and non-tensor bases.
Interface changes
- Add
boolfield type forCeedQFunctionContextand related interfaces to useboolfields. CEED_BASIS_COLLOCATEDremoved; users should only useCEED_BASIS_NONE.- Remove unneeded pointer for
CeedElemRestrictionGetELayout. - Change QFunction source include file handling in JiT compilers
- Add
CEED_RUNNING_JIT_PASScompiler definition for wrapping header files that device JiT compilers cannot read - Users should now prefer
#include <ceed/types.h>rather than#include <ceed.h>in QFunction source files
- Add
- Require use of
Ceed*Destroy()on Ceed objects returned fromCeed*Get*().