Difference between revisions of "PDR.PODM Distributed Memory"
From crtc.cs.odu.edu
Pthomadakis (talk | contribs) (→Current Issues) |
Pthomadakis (talk | contribs) (→Current Issues) |
||
Line 2: | Line 2: | ||
* No reuse of leaves refined by worker nodes. The picture below shows the issue. Two neighbour leaves (0,1) each refined as the main leaf (0 top, 1 bottom) but not refined as a neighor. | * No reuse of leaves refined by worker nodes. The picture below shows the issue. Two neighbour leaves (0,1) each refined as the main leaf (0 top, 1 bottom) but not refined as a neighor. | ||
[[File:PDR_PODM_Leaves_not_refined.png| 700px]] | [[File:PDR_PODM_Leaves_not_refined.png| 700px]] | ||
− | * Current algorithm uses | + | * Current algorithm uses neighbour traversal to distribute cells to octree leaving some cells out in some cases. Such a case can happen when a cell is part of an octree leaf based on its circumcenter but |
− | it does not have any | + | it does not have any neighbour in the same leaf. |
[[File:PDR_PODM_Cells_not_distributed.png| 700px]] | [[File:PDR_PODM_Cells_not_distributed.png| 700px]] | ||
+ | |||
+ | * Another issue comes from the fact that incident cells of vertices are not handled correctly when the vertex is packed and migrated. Specifically, when the incident cell of a vertex is not part of the | ||
+ | working unit (leaf + lvl. 1 neighbours) the vertex is given the infinite cell as incident. As a result the PODM code does not work correctly causing it too crash randomly. | ||
+ | |||
+ | * The function that unpacks the required leaves before refinement does discard duplicate vertices. Duplicate vertices will always be present since each leaf is packed and sent individually, and as a result, | ||
+ | neighbouring leaves will include the shared vertices. |
Revision as of 17:05, 6 April 2020
Current Issues
- No reuse of leaves refined by worker nodes. The picture below shows the issue. Two neighbour leaves (0,1) each refined as the main leaf (0 top, 1 bottom) but not refined as a neighor.
- Current algorithm uses neighbour traversal to distribute cells to octree leaving some cells out in some cases. Such a case can happen when a cell is part of an octree leaf based on its circumcenter but
it does not have any neighbour in the same leaf.
- Another issue comes from the fact that incident cells of vertices are not handled correctly when the vertex is packed and migrated. Specifically, when the incident cell of a vertex is not part of the
working unit (leaf + lvl. 1 neighbours) the vertex is given the infinite cell as incident. As a result the PODM code does not work correctly causing it too crash randomly.
- The function that unpacks the required leaves before refinement does discard duplicate vertices. Duplicate vertices will always be present since each leaf is packed and sent individually, and as a result,
neighbouring leaves will include the shared vertices.