| /libCEED/ |
| H A D | README.md | 151 | **CPU Native** | 152 | `/cpu/self/ref/serial` | Serial reference implementation | Yes … 153 | `/cpu/self/ref/blocked` | Blocked reference implementation | Yes … 154 | `/cpu/self/opt/serial` | Serial optimized C implementation | Yes … 155 | `/cpu/self/opt/blocked` | Blocked optimized C implementation | Yes … 156 | `/cpu/self/avx/serial` | Serial AVX implementation | Yes … 157 | `/cpu/self/avx/blocked` | Blocked AVX implementation | Yes … 159 | **CPU Valgrind** | 160 | `/cpu/self/memcheck/*` | Memcheck backends, undefined value checks | Yes … 162 | **CPU LIBXSMM** | [all …]
|
| H A D | .gitlab-ci.yml | 5 - test:cpu-and-tidy 17 stage: test:cpu-and-tidy 19 - cpu 38 - BACKENDS_CPU=$(make info-backends-all | grep -o '/cpu[^ ]*' | tr '\n' ' ') 63 # CPU backends only + make tidy 65 noether-cpu: 66 stage: test:cpu-and-tidy 68 - cpu 87 - BACKENDS_CPU=$(make info-backends-all | grep -o '/cpu[^ ]*' | tr '\n' ' ') 98 …- make -k -j$((NPROC_CPU / NPROC_POOL)) BACKENDS="$BACKENDS_CPU" JUNIT_BATCH="cpu" junit realsearc… [all …]
|
| /libCEED/doc/sphinx/source/ |
| H A D | releasenotes.md | 55 - Update `/cpu/self/memcheck/*` backends to help verify `CeedVector` array access assumptions and `… 98 - Update `/cpu/self/memcheck/*` backends to help verify `CeedQFunctionContext` data sizes provided … 111 - Fix bugs in CPU implementation of {c:func}`CeedOperatorLinearAssemble` when there are different n… 187 - Added support for non-tensor $H(\text{div})$ elements, to include CPU backend implementations and… 223 - The `/cpu/self/tmpl` and `/cpu/self/tmpl/sub` backends have been removed. These backends were int… 314 - New backend: `/cpu/self/memcheck/serial`. 378 with the aid of a new macro `CEED QFUNCTION` to support JIT (Just-In-Time) and CPU 385 Additionally, new CPU backends 386 were included in this release, such as the `/cpu/self/opt/*` backends (which are 388 `/cpu/self/ref/memcheck` backend (which relies upon the [all …]
|
| H A D | libCEEDdev.md | 17 LibCEED generally follows a "CPU first" implementation strategy when adding new functionality to th… 18 …ce specific considerations, it is generally recommended to include a basic CPU default implementat… 29 …ple, the `/cpu/self/xsmm/serial` backend implements the `CeedTensorContract` object itself but del… 48 ### CPU Backends 50 The basic CPU with the simplest implementation is `/cpu/self/ref/serial`. 52 Most of the other CPU backends only update the {ref}`CeedOperator` and `CeedTensorContract` objects. 54 The `/cpu/self/ref/blockend` and `/cpu/self/opt/*` backends delegate to the `/cpu/self/ref/serial` … 55 The `/cpu/self/ref/blocked` backend updates the {ref}`CeedOperator` to use an E-vector and Q-vector… 56 The `/cpu/self/opt/*` backends update the {ref}`CeedOperator` to apply the action of the operator i… 59 The `/cpu/self/avx/*` and `/cpu/self/xsmm/*` backends delegate to the corresponding `/cpu/self/opt/… [all …]
|
| H A D | gpu.md | 3 Runtime selection of libCEED backends allows users to use CPU backends for easier debugging. 4 Code that produces correct results with CPU backends will produce correct results on GPU backends, … 14 Include statements for system headers that are required for CPU compilation but are not available i… 22 GPU backends require stricter adherence to memory access assumptions, but CPU backends may occasion… 30 The `/cpu/self/memcheck` backends explicitly verify read-only and write-only memory access assumpti…
|
| /libCEED/backends/ |
| H A D | ceed-backend-list-ref.h | 12 CEED_BACKEND(CeedRegister_Ref, 1, "/cpu/self/ref/serial") 13 CEED_BACKEND(CeedRegister_Ref_Blocked, 1, "/cpu/self/ref/blocked") 14 CEED_BACKEND(CeedRegister_Opt_Blocked, 1, "/cpu/self/opt/blocked") 15 CEED_BACKEND(CeedRegister_Opt_Serial, 1, "/cpu/self/opt/serial")
|
| H A D | ceed-backend-list-xsmm.h | 12 CEED_BACKEND(CeedRegister_Xsmm_Blocked, 1, "/cpu/self/xsmm/blocked") 13 CEED_BACKEND(CeedRegister_Xsmm_Serial, 1, "/cpu/self/xsmm/serial")
|
| H A D | ceed-backend-list-avx.h | 12 CEED_BACKEND(CeedRegister_Avx_Blocked, 1, "/cpu/self/avx/blocked") 13 CEED_BACKEND(CeedRegister_Avx_Serial, 1, "/cpu/self/avx/serial")
|
| H A D | ceed-backend-list-memcheck.h | 12 CEED_BACKEND(CeedRegister_Memcheck_Blocked, 1, "/cpu/self/memcheck/blocked") 13 CEED_BACKEND(CeedRegister_Memcheck_Serial, 1, "/cpu/self/memcheck/serial")
|
| /libCEED/backends/avx/ |
| H A D | ceed-avx-blocked.c | 21 …CeedCheck(!strcmp(resource, "/cpu/self") || !strcmp(resource, "/cpu/self/avx") || !strcmp(resource… in CeedInit_Avx() 26 CeedCallBackend(CeedInit("/cpu/self/opt/blocked", &ceed_ref)); in CeedInit_Avx() 37 CEED_INTERN int CeedRegister_Avx_Blocked(void) { return CeedRegister("/cpu/self/avx/blocked", CeedI… in CeedRegister_Avx_Blocked()
|
| H A D | ceed-avx-serial.c | 21 …CeedCheck(!strcmp(resource, "/cpu/self") || !strcmp(resource, "/cpu/self/avx/serial"), ceed, CEED_… in CeedInit_Avx() 26 CeedCallBackend(CeedInit("/cpu/self/opt/serial", &ceed_ref)); in CeedInit_Avx() 37 CEED_INTERN int CeedRegister_Avx_Serial(void) { return CeedRegister("/cpu/self/avx/serial", CeedIni… in CeedRegister_Avx_Serial()
|
| /libCEED/backends/xsmm/ |
| H A D | ceed-xsmm-blocked.c | 21 …CeedCheck(!strcmp(resource, "/cpu/self") || !strcmp(resource, "/cpu/self/xsmm") || !strcmp(resourc… in CeedInit_Xsmm_Blocked() 26 CeedCallBackend(CeedInit("/cpu/self/opt/blocked", &ceed_ref)); in CeedInit_Xsmm_Blocked() 37 CEED_INTERN int CeedRegister_Xsmm_Blocked(void) { return CeedRegister("/cpu/self/xsmm/blocked", Cee… in CeedRegister_Xsmm_Blocked()
|
| H A D | ceed-xsmm-serial.c | 21 …CeedCheck(!strcmp(resource, "/cpu/self") || !strcmp(resource, "/cpu/self/xsmm/serial"), ceed, CEED… in CeedInit_Xsmm_Serial() 26 CeedCallBackend(CeedInit("/cpu/self/opt/serial", &ceed_ref)); in CeedInit_Xsmm_Serial() 37 CEED_INTERN int CeedRegister_Xsmm_Serial(void) { return CeedRegister("/cpu/self/xsmm/serial", CeedI… in CeedRegister_Xsmm_Serial()
|
| /libCEED/backends/opt/ |
| H A D | ceed-opt-blocked.c | 33 …CeedCheck(!strcmp(resource, "/cpu/self") || !strcmp(resource, "/cpu/self/opt") || !strcmp(resource… in CeedInit_Opt_Blocked() 38 CeedCallBackend(CeedInit("/cpu/self/ref/serial", &ceed_ref)); in CeedInit_Opt_Blocked() 56 CEED_INTERN int CeedRegister_Opt_Blocked(void) { return CeedRegister("/cpu/self/opt/blocked", CeedI… in CeedRegister_Opt_Blocked()
|
| H A D | ceed-opt-serial.c | 33 …CeedCheck(!strcmp(resource, "/cpu/self") || !strcmp(resource, "/cpu/self/opt/serial"), ceed, CEED_… in CeedInit_Opt_Serial() 38 CeedCallBackend(CeedInit("/cpu/self/ref/serial", &ceed_ref)); in CeedInit_Opt_Serial() 56 CEED_INTERN int CeedRegister_Opt_Serial(void) { return CeedRegister("/cpu/self/opt/serial", CeedIni… in CeedRegister_Opt_Serial()
|
| /libCEED/backends/blocked/ |
| H A D | ceed-blocked.c | 21 …CeedCheck(!strcmp(resource, "/cpu/self") || !strcmp(resource, "/cpu/self/ref/blocked"), ceed, CEED… in CeedInit_Blocked() 26 CeedCallBackend(CeedInit("/cpu/self/ref/serial", &ceed_ref)); in CeedInit_Blocked() 37 CEED_INTERN int CeedRegister_Ref_Blocked(void) { return CeedRegister("/cpu/self/ref/blocked", CeedI… in CeedRegister_Ref_Blocked()
|
| /libCEED/backends/memcheck/ |
| H A D | ceed-memcheck-serial.c | 20 …CeedCheck(!strcmp(resource, "/cpu/self/memcheck") || !strcmp(resource, "/cpu/self/memcheck/serial"… in CeedInit_Memcheck() 24 CeedCallBackend(CeedInit("/cpu/self/ref/serial", &ceed_ref)); in CeedInit_Memcheck() 40 CEED_INTERN int CeedRegister_Memcheck_Serial(void) { return CeedRegister("/cpu/self/memcheck/serial… in CeedRegister_Memcheck_Serial()
|
| H A D | ceed-memcheck-blocked.c | 20 …CeedCheck(!strcmp(resource, "/cpu/self/memcheck/blocked"), ceed, CEED_ERROR_BACKEND, "Valgrind Mem… in CeedInit_Memcheck() 23 CeedCallBackend(CeedInit("/cpu/self/ref/blocked", &ceed_ref)); in CeedInit_Memcheck() 39 CEED_INTERN int CeedRegister_Memcheck_Blocked(void) { return CeedRegister("/cpu/self/memcheck/block… in CeedRegister_Memcheck_Blocked()
|
| /libCEED/backends/ref/ |
| H A D | ceed-ref.c | 18 …CeedCheck(!strcmp(resource, "/cpu/self") || !strcmp(resource, "/cpu/self/ref") || !strcmp(resource… in CeedInit_Ref() 44 CeedRegister("/cpu/self/ref/serial", CeedInit_Ref, 50); in CeedRegister_Ref()
|
| /libCEED/benchmarks/ |
| H A D | README.md | 10 benchmark.sh -c /cpu/self -r petsc-bpsraw.sh -b bp1 -n 16 -p 16 20 benchmark.sh -c "/cpu/self/ref/serial /cpu/self/ref/blocked" -r petsc-bpsraw.sh -b "bp1 bp3" -n "16…
|
| H A D | petsc-bpsraw.sh | 15 # -ceed </cpu/self>: CEED resource specifier 20 local ceed="${ceed:-/cpu/self}"
|
| /libCEED/examples/python/ |
| H A D | tutorial-0-ceed.ipynb | 45 …"Here we illustrate the simple declaration of a `Ceed`, with default resource (which is `/cpu/self… 79 "To use a particular backend, for instance `/cpu/self/opt/blocked` you can specify" 88 "ceed = libceed.Ceed('/cpu/self/opt/blocked')"
|
| /libCEED/examples/petsc/ |
| H A D | README.md | 36 -ceed /cpu/self/opt/serial,/cpu/self/xsmm/serial,/cpu/self/xsmm/blocked \
|
| /libCEED/tests/ |
| H A D | t111-vector.c | 5 //TESTARGS(name="length 10",only="cpu") {ceed_resource} 10 6 //TESTARGS(name="length 0",only="cpu") {ceed_resource} 0
|
| /libCEED/.github/workflows/ |
| H A D | python-test-with-style.yml | 40 PYTHON=python3 make test TEST_OPTS="--ceed /cpu/self/ref/serial -vv" 42 PYTHON=python3 make test TEST_OPTS="--ceed /cpu/self/ref/serial -vv"
|