Commit Graph
189 Commits
Author SHA1 Message Date
Tzanio Kolev e4c2152419 Update Copyright to 2010-2025 2025-02-03 12:17:26 -08:00
Andrew Ho db323179f1 Merge branch 'master' into device_info 2025-01-09 14:41:57 -08:00
Andrew Ho 4983d81eb9 removed cuda < 10 since MFEM doesn't support this anyways 2025-01-09 14:40:08 -08:00
Andrew Ho 13b9e14526 Moved implementations to cpp file
removed host/device since this could lead to some ODR violations
2025-01-09 14:28:15 -08:00
Andrew Ho 6e1101f058 added helper functions for querying various device properties 2025-01-06 18:33:23 -08:00
Will Pazner 19a1750527 Rename getenv wrapper to GetEnv
Also use getenv wrapper in KernelReporter
2024-12-26 16:55:45 -08:00
Andrew Ho 51a75893f7 Changes from Veselin 2024-12-09 08:21:57 -08:00
Andrew Ho b3fff9267a Moved Hypre::Finalize earlier in Device::~Device, only finalize HYPRE if it's been initialized.
Moving Hypre::Finalize earlier ensures that early return paths in
Device::~Device don't prevent Hypre::Finalize from executing.
2024-09-13 17:55:09 -07:00
Andrew Ho c253f00ddc Added ifdef guard for MFEM_USE_MPI
Hypre singleton doesn't exist otherwise
2024-09-13 12:16:54 -07:00
Andrew Ho cd5a72fabe Ensure that HYPRE is finalized inside the main function.
This fixes a bug where the Hypre singleton is currently cleaned up
after the main function returns, which causes errors with cleaning up
internal Cuda objects in HYPRE.
2024-09-13 11:52:06 -07:00
Tom Stitt 9f86ac2feb Adds Hypre::InitDevice and calls it from Device::Configure. By default configure HYPRE with the same policy as MFEM unless configure_hypre_runtime_policy_from_mfem is false 2024-04-12 16:26:29 -07: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
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