DavidDureau

Results 9 issues of DavidDureau

Is it possible to port the `synchronizeMaterialsInCells()` with the accelerator API? Indeed, when a code is running with AcceleratorRuntime=cuda, then the main part of `synchronizeMaterialsInCells()` is running on CPU and...

enhancement
arcane
arcane:accelerator
arcane:materials

Traditional initialization code executed in serial on CPU: ```c++ VariableCellInteger var_ci(...); VariableCellReal var_cr(...); MaterialVariableCellReal var_mr1(...); MaterialVariableCellReal var_mr2(...); ... MaterialVariableCellReal var_mr7(...); VariableNodeReal var_nr(...); VariableNodeReal3 var_nr3(...); var_ci.fill(1); var_cr.fill(0.0); var_mr1.fill(0.0); var_mr2.fill(1.0); ... var_mr7.fill(0.0);...

enhancement
arcane
arcane:accelerator

Temporary arrays or variables are often used in simulation code but it implies numerous allocations/freeing at each time-step cycle. In addition, when the cuda accelerator runtime is enabled, we have...

enhancement
arcane:accelerator

In a accelerator loop, we would like to get the environment id for a given MatVarIndex: ```c++ CellToAllEnvCellAcessor c2ae(....); command

enhancement
arcane:accelerator

With an environment variable, we would like to choose if scalar (resp. array) variables (item-kind="none") are allocated with cudaMallocManaged or with the standard memory allocator.

arcane
arcane:accelerator

**Goal: to have or to "manipulate" a dynamic number of item variables** **Choice 1**: Array of `MeshVariableArrayRefT< ItemTypeT, DataTypeT>` We could have a N-dimensional array of `MeshVariableArrayRefT` Here, an example...

enhancement
arcane

Context: - the whole domain is a cartesian mesh with cartesian patches; - the cell edges are parallel to the XYZ axis; - the number of ghost layers is greater...

enhancement
arcane

Now, the load balancing is able to migrate items among sub-domains with only 1 ghost layer. Goal: to transfer items from one sub-domain to another with N ghost layers where...

enhancement
arcane

Consider a variable of type `VariableCellArrayReal` where the second dimension is high (for example 38400). When we want to synchronize this variable between GPUs, the messages are packed and unpacked...

enhancement
arcane:accelerator