Open abouteiller opened 6 years ago
Original comment by Thomas Herault (Bitbucket: herault, GitHub: therault).
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?
Original comment by Reazul Hoque (Bitbucket: rhoque_icl, ).
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.
Original comment by George Bosilca (Bitbucket: bosilca, GitHub: 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.
Original comment by George Bosilca (Bitbucket: bosilca, GitHub: 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.
Removing version: 3.0.0 (automated comment)
Original report by Reazul Hoque (Bitbucket: rhoque_icl, ).
We need unique ID for data collection, the same we have for task collection.