DARMA-tasking / LB-analysis-framework

Analysis framework for exploring, testing, and comparing load balancing strategies
Other
3 stars 1 forks source link

Improve and complete JSON writing #482

Closed pierrepebay closed 6 months ago

pierrepebay commented 7 months ago

The goal is to be able to have the JSON outputted by LBAF (when using the internal data structures) to be identical to the input JSON.

Missing elements at this point are (non exhaustive):

This issue should also deprecate the use of -1 to read/step through all phases (only explicit enumerations or ranges should be used).

cwschilly commented 7 months ago

@lifflander @ppebay @pierrepebay I have edited the original comment with more elements that are not being written out. For a couple of these, I am not sure what they represent.

Specifically, what do index and collection_id refer to in the following snippet of an input JSON file?

"id": 0,
      "tasks": [
        {
          "entity": {
            "collection_id": 7,
            "home": 0,
            "id": 3407875,
            "index": [
              12
            ],
            "migratable": true,
            "type": "object"
          },
ppebay commented 7 months ago

@cwschilly I think these quantities are not relevant to LBAF, but I will let @lifflander confirm this (or not)

ppebay commented 7 months ago

N.B.: the first id concerns the phase.

cwschilly commented 7 months ago

I am also not sure what the data in the shared_node block represents:

"metadata": {
  "rank": 0,
  "shared_node": {
    "id": 0,
    "num_nodes": 1,
    "rank": 0,
    "size": 4
  },
  "type": "LBDatafile"
}

For now I am using the approach discussed in the meeting of swallowing everything into a dict and passing it through to the end.

ppebay commented 7 months ago

@pierrepebay regarding the other fields: used in vt-tv, or not?