Commit Graph
57 Commits
Author SHA1 Message Date
Veselin Dobrev 6d8a96a8fb Merge branch 'master' into hypre-gpu-tweaks 2025-07-29 09:08:02 -07:00
Tzanio Kolev e4c2152419 Update Copyright to 2010-2025 2025-02-03 12:17:26 -08:00
Veselin Dobrev 4f0f353720 Print error code (in addition to the error string) on CUDA/HIP errors 2024-12-09 18:20:32 -08:00
Tzanio Kolev 87290fbf56 Update Copyright to 2010-2024 2024-01-27 13:06:49 -08:00
Tzanio Kolev 96e00dc815 Updated COPYRIGHT to 2010-2023 2023-03-11 16:58:18 -08:00
Tzanio 6d2530775b Extended copyright to 2022 2022-02-25 10:24:50 -08:00
Tzanio 2064b3b891 Merge branch 'master' into feature/tomstitt/temp-mem-type 2021-02-05 13:08:10 -08:00
Adrien M. Bernede 04fb572359 Let's forget about 2020 2021-01-26 11:55:36 -08:00
Tom Stitt 81e016fd15 Rename CudaMem*Host -> CudaMem*HostPinned
Add UseTemporary to Vector
Update GeometricFactors ctor with optional arg to specify use of
temporary memory
2020-12-16 12:14:34 -08:00
Tom Stitt 88bf3467da grab changes from feature/apps/dev 2020-12-11 11:36:44 -08:00
Tom Stitt 474c6a19e9 Rename CuMemAllocHost -> CuMemAllocHostPinned, CuMemFreeHost ->
CuMemFreeHostPinned
Adds `PRESERVE` MemoryType to be used as the default param
Rename CudaHostMemorySpace -> HostPinnedHostMemorySpace; adds USE_CUDA
and USE_HIP (todo) regions
2020-09-03 11:20:32 -07:00
Tom Stitt 99fda9ca0d Adds methods to update the device type and the delete device memory
Adds HostPinned memory for CUDA (need to generalize for hip)
Adds MemoryType options for ijk DenseTensor ctor and SetSize
2020-08-31 13:51:52 -07:00
camierjs 72ffdecfa6 Create backends.hpp to centralize defines 2020-04-19 13:01:37 -07:00
Tzanio 05125e19d5 Removed a space 2020-03-09 15:36:41 -07:00
Tzanio 58872c9e7b Merge branch 'master' into okina-mmu
Conflicts:
	fem/datacollection.cpp
	tests/unit/CMakeLists.txt
2020-03-04 15:19:33 -08:00
Tzanio ca55ef0217 The release number for mfem-4.1 is LLNL-CODE-806117 2020-03-02 17:18:46 -08:00
Tzanio 2caa222edf A number of changes to switch the code from LGPL-2.1 to BSD-3:
- Updated LICENSE, README, CHANGELOG and CONTRIBUTING.md
- Removed COPYRIGHT, added NOTICE
- Updated the headers in all source files, makefiles, etc.
2020-02-23 11:16:46 -08:00
Veselin Dobrev 9499d49e9f Variour tweaks and simplifications, coordinated with @camierjs. 2020-02-14 16:25:40 -08:00
camierjs 5e8b4a2972 NR tests and aliases fix 2019-10-23 19:02:27 -07:00
camierjs 136ef302f8 Device DEBUG vs DEVICE_MASK fix 2019-10-01 15:43:56 -07:00
camierjs 840158ddc7 Merge branch 'master' into okina-mmu 2019-09-23 10:39:06 -07:00
camierjs 1ad1a70293 Revert MFEM_GPU_CHECK undef check 2019-08-29 10:41:49 -07:00
Tzanio 25ea5e9208 Merge branch 'master' into dmpi
Conflicts:
	general/device.cpp
2019-08-28 18:40:39 -07:00
camierjs a9b99f3601 Device selection 2019-08-19 12:28:14 -07:00
camierjs 5bf6cad024 GPU, CUDA, ROCM calls 2019-07-23 13:29:14 -07:00
camierjs 2b9db87f53 ex1 @ GPU||Debug device 2019-07-18 11:18:11 -07:00
camierjs ec429a89fe Merge branch 'master' into okina-mmu 2019-07-08 11:51:22 +02:00
camierjs 3fce1070c6 ex1 @ ROCm converges 2019-05-29 12:32:27 -07:00
Veselin Dobrev 40378a046b Introduce a new Memory class for handling host + device allocations
and transfers.

The Memory class is now used by some MFEM classes (like Array and
Vector) which can be used on the Device. Such classes now provide
methods to access the underlying Memory object, e.g. GetMemory.

Updated ex1/ex1p and ex6/ex6p to not need to enable/disable the
Device at specific points -- the Device is now enabled just at the
start. Also, the same examples can now run on Device (e.g. -d cuda)
without the partial assembly option (-pa) -- full assembly will
be still done on CPU but the sparse matrix action and vector
operations will be done using the Device.

Reverted changes in class DenseMatrix related to using the Device.
At this point, DenseMatrix operations are only used for small matrices
and using the Device in this case is not a good option.
2019-05-16 14:53:39 -07:00
camierjs 2991665849 Move all OCCA calls in occa files 2019-04-25 09:54:47 -07:00
Veselin Dobrev 8142e822d8 Fix non-CUDA builds. 2019-04-22 16:41:09 -07:00
Veselin Dobrev 10b3988449 Reworked the macro MFEM_CUDA_CHECK:
* It always performs the error check, no just in debug mode.
* All 'cuda*' runtime calls are now wrapped with this macro.
2019-04-22 15:17:04 -07:00
camierjs 3e34d4b99a Cleanup, style and remove all CUdevice, CUcontext & CUstream 2019-04-19 11:00:23 -07:00
camierjs d3a1685cb6 Remove CU driver calls 2019-04-17 17:36:43 -07:00
Veselin Dobrev 600f5ec4bd Some additional simplifications and tweaks in headers.
Add MFEM_CUDA_CHECK_{DRV,RT} macros.
2019-04-09 00:37:58 -07:00
Tzanio 4706590237 Consolidating okina and its backends. 2019-03-21 18:55:44 -07:00
Tzanio b589caf151 Replaced __NVCC__ -> MFEM_USE_CUDA and __OCCA__ -> MFEM_USE_OCCA 2019-03-21 17:23:27 -07:00
camierjs 4a61377ddc Cleanup 2019-03-20 10:18:50 -07:00
camierjs f41a0e90a9 Makefile cross-compiler, examples 1, 1p, 6, 6p and Laghos on GPU+MPI 2019-03-15 18:28:35 -07:00
camierjs a108acf9aa Cleanup: cuda, okina header 2019-03-06 11:19:54 -08:00
camierjs 8d2466afb5 Cleanup warnings 2019-03-05 17:51:20 -08:00
camierjs baa1d5bfb8 Add examples mode and cuda cleanup 2019-03-05 12:31:47 -08:00
camierjs 64cf91cf21 - config rename convention
- ex1, ex6 switch back to host
- mm filtering
- dot device ptr call
2019-03-05 12:20:26 -08:00
camierjs 95502c7754 Move all RAJA stuff to raja.hpp 2019-02-13 11:55:22 -08:00
camierjs ebd8ed8ffe Cuda assert cleanup 2019-01-07 12:00:43 -08:00
camierjs cdada1a117 cuCheck, MFEM_FORALL macro and config ngpu fix 2019-01-07 11:53:43 -08:00
camierjs 4f557c0b1b Melding toward Okina 2019-01-03 20:20:49 -08:00
camierjs 148929e807 mm, occa, cuda and device 2018-12-19 16:16:33 -08:00
camierjs 8b85db1e3b mm Pull/Push only refresh (w/o setting host bool), NewNodes Pull 2018-12-17 12:00:30 -08:00
camierjs f9aa5db438 mm not nvcc default return 2018-12-13 09:41:08 -08:00