llnl / llnl/axom

Host allocation follow-on work

Open
#1,982 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

App Integration Core maintenance Reviewed
Dominant language
C++
Stars
196
Forks
34
Avg merge
4d 1h
Merged PRs (30d)
11

Description

Noting some additional work items to pursue after https://github.com/llnl/axom/pull/1964 is merged (assuming it does get merged). Rather than address these items in that PR to keep it smaller and focused, these items can be addressed in a future PR. These additional changes affect Axom APIs and semantics when behavior is not explicitly specified.

- [ ] Change `axom::Array` to use `AXOM_DEFAULT_HOST_ALLOCATOR` choice rather than `MemorySpace::Dynamic` so that it's host allocation is consistent with the rest of Axom.
- [ ] Figure out how to avoid mixing `AXOM_MALLOC` enum value, which does not correspond to a valid Umpire allocator, with the rest of the enum values that do correspond to valid Umpire allocators.
- [ ] Change the name of `setDefaultAllocator` to `setUmpireDefaultAllocator` because the method only sets the default allocator in the Umpire ResourceManager?

Additionally, we will need a good way to test these changes in end user applications to make sure we don't break, or at least help them fix, their assumptions.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading PR #1964 and the definitions of axom::Array, the AXOM_MALLOC enum value, and setDefaultAllocator. Determine the intended API and semantic changes, then establish end-user application tests that verify allocator behavior and document what assumptions must remain valid or be updated.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
hpc
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.