Global Unique ID for data collection

Issue #151 new
Reazul Hoque created an issue

We need unique ID for data collection, the same we have for task collection.

Comments (10)

  1. Thomas Herault

    The couple ddesc / key makes a unique key.

    We don't assign unique ids for the ddesc or store them in a hash table, because we always had the ddesc from the general context.

    Giving a unique ID to ddesc (requiring that they are created on all ranks in the same order) and adding a hash table to look them up would be sufficient to implement this, or do you foresee something more intricate?

  2. Reazul Hoque reporter

    I plan to implement exactly what you mentioned in the last paragraph, identical to a taskpool.

    The couple ddesc / key is the unique key and to find the ddesc in other ranks we need a unique ID for each DC and store them in a hashtable.

  3. George Bosilca

    I understand the need to name the data globally, but enforcing a global ordering of data creation does not feel like the right approach. This is different that we have today in PTG, as the data "naming" is local to a taskpool and not global to the entire execution.

    What we need is to really encapsulate data existence with sections of code, so that a series of task can safely name the data they use. I would create explicit function to associate data with a global naming for a certain duration (this will register/unregister the data with a data hashtable) but explicitly, as needed by the DSL.

  4. Thomas Herault

    Task pools already have unique (global) ids.

    Would attaching / detaching data to task pools be an alternative?

  5. George Bosilca

    The problem in two-fold. First, the insert_task interface does not rely on a specific taskpool but instead uses one that is predefined. Thus, using the taskpool for insert_task would be exactly the same as having a global order in dc creation. Second, the new insert_task model trim the tracked tasks, a process only tracks data involved in a local computation. Thus different processes might not see the data collections in the same order.

  6. Log in to comment