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
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
Tzanio
60b668a208
Merge branch 'master' into feature/tomstitt/temp-mem-type
...
Conflicts:
CHANGELOG
2021-01-24 12:58:30 -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
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
camierjs
a82b4a0de4
Simplify new device controller, flush device ngpu and adjust unit mem tests
2020-02-18 16:10:48 -08:00
camierjs
76ef7fc9bf
Flush device mode and backends at destruction
2020-02-18 14:58:48 -08:00
camierjs
ec55ac1dd8
device logic and typo
2020-02-14 19:04:07 -08:00
Veselin Dobrev
9499d49e9f
Variour tweaks and simplifications, coordinated with @camierjs.
2020-02-14 16:25:40 -08:00
camierjs
a6befda705
Remove Umpire config variables and cleanup.
2020-02-12 12:31:29 -08:00
camierjs
607a31ddf4
All tests w/ MFEM_MEMORY=host32,host64,debug,umpire,uvm
2020-02-07 15:32:14 -08:00
camierjs
07889899b2
BlockMatrix CreateMonolithic fix,
...
Add MFEM_INIT_WARNING and MFEM_INIT_ABORT
Move Backend::DEBUG as last MFEM device
2020-02-04 12:22:22 -08:00
camierjs
c3bc0a1eab
WIP MFEM_MEMORY && MFEM_DEVICE logic
2020-02-03 18:21:15 -08:00
camierjs
27aa1bcf1d
MFEM_MEMORY=debug m test -j
2020-02-03 17:40:01 -08:00
camierjs
0aee38c60c
All serial examples with valgrind and debug/host32 allocators
2020-01-31 18:51:31 -08:00
camierjs
969480e626
Fix valgrind overlap warning when in env device
2020-01-30 11:51:30 -08:00
camierjs
8b667b09c4
Simplify MFEM_ENV_DEVICE logic
2020-01-30 10:21:58 -08:00
camierjs
c1259a3251
Enable MFEM_ENV_DEVICE=debug, ex[1,2,3,4,6,7,14] ok, ex[5,8,9,10,15,16,17,18,19,20,21,22,23] errors
2020-01-29 21:10:24 -08:00
camierjs
321a170869
[WIP] Working on MFEM_ENV_DEVICE shortcut
2020-01-29 18:07:38 -08:00