Commit Graph
176 Commits
Author SHA1 Message Date
Yohann Dudouit 5adc33c8a5 Reorganize libCEED integration. 2022-03-31 17:18:06 -07:00
Tzanio 6d2530775b Extended copyright to 2022 2022-02-25 10:24:50 -08:00
camierjs cfa82dccc0 In device.?pp, use device_id for shadowed variable and switch out to os 2022-01-11 11:09:12 -08:00
Stowell, Mark L fa25a70da6 Fixing shadow variables in general classes 2021-12-23 16:21:31 -08:00
nbeams e5e7974a34 Change setting of device num for HIP 2021-05-18 15:59:46 -04:00
Tzanio Kolev 11b3e0b4b5 Merge pull request #1644 from mfem/feature/tomstitt/temp-mem-type
Temporary Device Memory Type
2021-03-24 21:46:03 -07:00
Veselin Dobrev ba47a9eb4e Merge branch 'master' into feature/tomstitt/temp-mem-type
Resolved conflicts:
   linalg/vector.hpp
2021-03-19 13:29:59 -07:00
Veselin Dobrev 4e8b78cd45 Fix the method Device::UpdateMemoryTypeAndClass() in the
case when Umpire support is enabled.

Fix invalid host access access in
   tests/unit/general/test_umpire_mem.cpp

Update the CMake file in tests/unit to use all unit tests.
2021-03-18 22:49:31 -07:00
Veselin Dobrev a59f06e9e3 Replaced the methods Device::SetHostMemoryType() and
Device::SetDeviceMemoryType() with the method
Device::SetMemoryTypes() which can be called only before
Device configuration.

Added methods MemoryManager::GetDualMemoryType() and
MemoryManager::SetDualMemoryType() where the latter can be
called only before MemoryManager::Configure().

Updated the Memory/MemoryManager implementation to use the
dual memory types instead of the default memory types.

Various other tweaks and fixes in the Memory/MemoryManager
implementation.
2021-03-18 18:48:22 -07:00
Tom Stitt 22ec73e780 Revert device.cpp changes and remove automatic use of Umpire if
MFEM_USE_UMPIRE
Fix build; building with Umpire & CUDA now
2021-02-25 14:56:05 -08:00
Andrew T. Barker baacf4b38d Merge remote-tracking branch 'origin/master' into ceed-merge
Initial attempt at merge; a lot is going to be wrong, exciting
2021-02-19 11:38:56 -08:00
Andrew T. Barker e9ad0bd9c6 Begin overhauling Ceed error checking. 2021-02-12 16:25:36 -08:00
Tzanio 2064b3b891 Merge branch 'master' into feature/tomstitt/temp-mem-type 2021-02-05 13:08:10 -08:00
Yohann Dudouit ab7ebe5556 Merge branch 'master' into yohann/ceed-convection 2021-02-03 16:52:26 -08:00
Yohann Dudouit 36225982b7 Rename libceed folder to ceed. 2021-02-02 10:14:48 -08:00
Adrien M. Bernede 04fb572359 Let's forget about 2020 2021-01-26 11:55:36 -08:00
Tzanio 60b668a208 Merge branch 'master' into feature/tomstitt/temp-mem-type
Conflicts:
	CHANGELOG
2021-01-24 12:58:30 -08:00
Yohann Dudouit 9d3a4ba0ab Add a ceed namespace. 2021-01-21 12:33:21 -08:00
Tom Stitt 06786f5540 Switch temporary memory handing so that Device allocators
can optionally define a AllocTemp method.
Use MemoryClass at ctor time for optional device memory type
targetting; add example to Vector.
Remove DeviceUmpireTempMemoryType
Remove UpdateDeviceType
Add cuda_umpire.cpp example, still a little bit of WIP
- move to tests later
2021-01-12 15:29:27 -08:00
Yohann a6939d3cc9 Merge branch 'master' into yohann/ceed-convection 2021-01-06 13:51:43 -08:00
Yohann Dudouit 4f2affb28c Delete ceed.hpp 2021-01-06 13:47:58 -08:00
Tom Stitt 88bf3467da grab changes from feature/apps/dev 2020-12-11 11:36:44 -08:00
Tom Stitt 56c3bda33e Merge remote-tracking branch 'origin/master' into feature/tomstitt/temp-mem-type
Switches to int id from string name for umpire allocator
2020-12-11 10:36:50 -08:00
Arturo Vargas b11168cfe0 fix merge conflicts 2020-10-30 16:46:52 -07:00
Veselin Dobrev 93d6ae57a0 Fix the logic in ForallWrap to reflect exactly the
allowed/enabled backends.

When using 'occa-omp' enable the 'omp' backend (if MFEM was
built with MFEM_USE_OPENMP=YES) unless 'raja-omp' is already
enabled.

If using 'ceed-cuda' enable 'cuda' only if 'raja-cuda' is
not allowed.

Update the documentation of Device::Configure.

Ensure that at most one 'ceed-*' backend is allowed.
2020-10-26 23:33:14 -07:00
Yohann Dudouit a88c07b4ac Merge branch 'master' into yohann/test-ceed 2020-10-19 09:49:16 -07:00
Yohann Dudouit d62441a60f Rewrite RemoveCeedBasisAndRestriction to fix a bug on Linux. 2020-09-16 18:12:36 -07:00
Yohann Dudouit 846d019ece Erase entries when destroying the CeedBasis and CeedRestr. 2020-09-16 17:16:29 -07:00
nbeams 28d366b77c allow use of short name for HIP backends in libCEED 2020-09-14 19:45:21 -04:00
nbeams 184fc62fc1 Merge branch 'master' into libceed-hip 2020-09-14 18:24:19 -04:00
Arturo Vargas bc5a051d8c Add RAJA-hip 2020-09-08 15:07:37 -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
Tom Stitt 66ee781768 Merge remote-tracking branch 'origin/master' into feature/tomstitt/temp-mem-type 2020-08-31 12:26:37 -07:00
Tzanio Kolev b2983cb965 Merge pull request #1705 from mfem/jeremy/libceed-refactor-dev
libCEED - prevent duplicate Ceed objects from MFEM FES
2020-08-30 17:42:12 -07:00
camierjs eaf2257263 Rename Backend::DEBUG to Backend::DEBUG_DEVICE 2020-08-21 14:34:15 -07:00
nbeams 372dd6b3b2 enable HIP backend for libCEED 2020-08-20 17:20:10 -04:00
jeremylt c968ed6920 Ceed - revert typo 2020-08-18 19:20:11 -06:00
jeremylt 49fdfd73de Ceed - refactor FES->Basis,ElemRestriction hash table to use tuples 2020-08-18 16:50:19 -06:00
jeremylt 3140782959 style fixes from Travis 2020-08-18 11:59:04 -06:00
jeremylt de1100519d Ceed - refactor to use standard library hash table and avoid null arguments 2020-08-18 11:34:59 -06:00
jeremylt ad66b16d0d Ceed - add ceed-hash tables for mfem fes -> ceed basis, restriction 2020-08-14 11:48:35 -06:00
Tom Stitt 802f213873 Adds optional temporary device memory type that can be used to prevent
repeated deviceMallocs
* example use in *mesh.cpp*::`GeometricFactors::GeometricFactors`

Updates to the `Umpire{Host,Device}MemorySpace`
* switch pool id from string to int
* support externally provided pool ids
* adds option to use default HOST/DEVICE MemoryTypes even if mfem is
built with umpire
* lazy init of UmpireHostMemorySpace
* adds temp pool id
2020-07-20 15:22:07 -07:00
Tzanio 05125e19d5 Removed a space 2020-03-09 15:36:41 -07:00
Tzanio f2bf0a2750 Merge branch 'master' into mfem-4.1-dev
Conflicts:
	general/device.hpp
2020-03-04 20:33:14 -08: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 Kolev a37cf53ce1 Update general/device.cpp 2020-03-02 12:23:31 -08:00
Yohann Dudouit 0ed887bfd1 Add comment on default libCEED GPU backend. 2020-02-25 10:48:08 -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
camierjs 8f30f76e85 Move DEVICE macros to cuda header
Use stream sync
2020-02-20 15:08:49 -08:00