{
  "method": "MGN",
  "config": {
    "schema": "m01_local_mgn_fp32_v1",
    "seed": 20261027,
    "splits": {
      "train": 800,
      "validation": 100,
      "test": 100
    },
    "epochs": 20,
    "gradient_accumulation_cases": 8,
    "learning_rate": 0.0001,
    "minimum_learning_rate": 1e-06,
    "warmup_epochs": 5,
    "weight_decay": 1e-05,
    "gradient_clip_norm": 1.0,
    "precision": "pure fp32; AMP and TF32 disabled to match TS3 FP32",
    "validation_every_epochs": 1,
    "checkpoint_every_updates": 25,
    "checkpoint_selection": "validation reporting only; final-epoch weights used for speed study",
    "error_threshold": null,
    "early_stopping": false,
    "node_sampling": false,
    "test_policy": "test labels untouched during precision timing study",
    "mgn": {
      "latent_size": 288,
      "message_passing_steps": 15,
      "hidden_layers": 2,
      "chunk_size": 32768,
      "checkpoint_blocks": true,
      "output_channels": 4
    },
    "methods": [
      "mgn"
    ],
    "precisions": [
      "fp32"
    ],
    "execution": "local RTX 5090, exclusive GPU; user paused TS3 FP64 to prioritize MGN",
    "initialization": "Independent MGN initialization with same seed; different architecture cannot share TS3 weights",
    "warmup": "one full-largest-TRAIN forward/backward per arm, no optimizer update; excluded from timings",
    "sources": {
      "tools/train_m01_mgn_comparison.py": "df7ac1345c73bd6833e5ef44add07a949624e0b988188dbeb68b2553d442a5cf",
      "tools/train_rod_m01_sockeye.py": "153d0bbc666ec918a33cf4bfd7b486d8304bdea78e47f36e6added6add5eeb86",
      "geobc/rod_m01_models.py": "96317e7764b686ef5bdb027e05921f69ca66c63e3eaa44b812a23b2789319c5c",
      "geobc/overfit_meshgraphnet.py": "d8b180153c3080507e9aa35587e6bcf353ba29a4754732377ac74527b0e1451a",
      "geobc/native_fno.py": "b90fe48d292d52e9acf465b35e486c02db82a553315cadca63d7c2ddd6acc639",
      "geobc/fno.py": "45314639765e68379dc0726141f59c72d84413c8d348818bba5f3bafb6290fb4"
    },
    "baseline_TS3_config_sha256": "47369eb28682d7fa8c44bbe5eadd3ff10791bcdb77c45b25682a44355bc8486d",
    "baseline_TS3_fp32_summary_sha256": "bd1fb954fbb3c4d60370bd267ba78069de6529dbd4719f68055fc13b0b1350e1",
    "comparison_caveat": "MGN additionally receives original TET10 graph connectivity; parameter counts differ. Fixed 20 epochs, not convergence.",
    "parameters": 11760196,
    "initial_weights_sha256": "ad2dab965bb775dab1201993bb96933ce4ca9d2e834f204582da58236917edfb"
  },
  "queue": {
    "phase": "completed",
    "method": "mgn",
    "updated_unix": 1793233648.1469796,
    "summary_file": "fp32/summary.json"
  },
  "status": {
    "phase": "completed",
    "pid": 364,
    "precision": "fp32",
    "epoch_completed": 20,
    "case_cursor": 0,
    "total_epochs": 20,
    "completed_train_case_passes": 16000,
    "total_train_case_passes": 16000,
    "optimizer_updates": 2000,
    "active_seconds": 10342.943429834006,
    "timers": {
      "train_wall_seconds": 9827.759577089899,
      "forward_backward_gpu_seconds": 9422.337779541038,
      "optimizer_gpu_seconds": 6.711993669271473,
      "checkpoint_seconds": 64.42403165299038,
      "validation_seconds": 418.19867544501903
    },
    "peak_allocated_bytes": 8831659008,
    "remaining_training_seconds_estimate": 0.0,
    "error_threshold": null,
    "updated_unix": 1793233625.3616104
  },
  "curve": [
    {
      "epoch": 1,
      "precision": "fp32",
      "active_seconds": 483.9597181400022,
      "online_training_objective": 2.1601591420173647,
      "cumulative_train_wall_seconds": 462.4911599619372,
      "cumulative_forward_backward_gpu_seconds": 458.99998355102525,
      "cumulative_optimizer_gpu_seconds": 0.40723606395721434,
      "cumulative_validation_seconds": 18.499876002999372,
      "mean_validation_U_L2": 1.0225841381433625,
      "mean_validation_VM_L2": 0.7914426663451075
    },
    {
      "epoch": 2,
      "precision": "fp32",
      "active_seconds": 961.3441921699996,
      "online_training_objective": 0.9981587058305741,
      "cumulative_train_wall_seconds": 918.1293344589285,
      "cumulative_forward_backward_gpu_seconds": 920.2124930114766,
      "cumulative_optimizer_gpu_seconds": 0.7012764487266541,
      "cumulative_validation_seconds": 36.81482926299941,
      "mean_validation_U_L2": 1.2199489339832135,
      "mean_validation_VM_L2": 0.7259746398733503
    },
    {
      "epoch": 3,
      "precision": "fp32",
      "active_seconds": 1442.1571654910003,
      "online_training_objective": 0.9777021864056588,
      "cumulative_train_wall_seconds": 1377.5445640249309,
      "cumulative_forward_backward_gpu_seconds": 1384.7100051574716,
      "cumulative_optimizer_gpu_seconds": 1.0147698571681971,
      "cumulative_validation_seconds": 55.0372389319964,
      "mean_validation_U_L2": 0.790695026468769,
      "mean_validation_VM_L2": 0.681904803826896
    },
    {
      "epoch": 4,
      "precision": "fp32",
      "active_seconds": 1924.2700239460028,
      "online_training_objective": 0.7917072603106499,
      "cumulative_train_wall_seconds": 1837.8825015269394,
      "cumulative_forward_backward_gpu_seconds": 1850.626091796877,
      "cumulative_optimizer_gpu_seconds": 1.3263303365707397,
      "cumulative_validation_seconds": 73.43269906500063,
      "mean_validation_U_L2": 0.7411430724321132,
      "mean_validation_VM_L2": 0.6804960223240009
    },
    {
      "epoch": 5,
      "precision": "fp32",
      "active_seconds": 2406.439093109999,
      "online_training_objective": 0.7479667347669602,
      "cumulative_train_wall_seconds": 2299.0143806019114,
      "cumulative_forward_backward_gpu_seconds": 2314.8679147949238,
      "cumulative_optimizer_gpu_seconds": 1.6321415369510655,
      "cumulative_validation_seconds": 91.03862294300052,
      "mean_validation_U_L2": 0.6548588786693819,
      "mean_validation_VM_L2": 0.6062809118171825
    },
    {
      "epoch": 6,
      "precision": "fp32",
      "active_seconds": 2888.104533415004,
      "online_training_objective": 0.5229917359352112,
      "cumulative_train_wall_seconds": 2759.046203361926,
      "cumulative_forward_backward_gpu_seconds": 2779.135800720222,
      "cumulative_optimizer_gpu_seconds": 1.9386681604385383,
      "cumulative_validation_seconds": 109.40430183800345,
      "mean_validation_U_L2": 0.7538151439181777,
      "mean_validation_VM_L2": 0.604106438567856
    },
    {
      "epoch": 7,
      "precision": "fp32",
      "active_seconds": 3363.345236398003,
      "online_training_objective": 0.4048078027367592,
      "cumulative_train_wall_seconds": 3213.2703135739503,
      "cumulative_forward_backward_gpu_seconds": 3243.203745086681,
      "cumulative_optimizer_gpu_seconds": 2.2488380477428445,
      "cumulative_validation_seconds": 127.25611346500227,
      "mean_validation_U_L2": 0.5113031613984501,
      "mean_validation_VM_L2": 0.5225200923894959
    },
    {
      "epoch": 8,
      "precision": "fp32",
      "active_seconds": 3838.613522507003,
      "online_training_objective": 0.2872988353669643,
      "cumulative_train_wall_seconds": 3667.907421729986,
      "cumulative_forward_backward_gpu_seconds": 3707.6903312378017,
      "cumulative_optimizer_gpu_seconds": 2.5603208966255186,
      "cumulative_validation_seconds": 144.883787002007,
      "mean_validation_U_L2": 0.532321083404079,
      "mean_validation_VM_L2": 0.4746941504217243
    },
    {
      "epoch": 9,
      "precision": "fp32",
      "active_seconds": 4327.2843386810055,
      "online_training_objective": 0.2754515655338764,
      "cumulative_train_wall_seconds": 4134.950711103011,
      "cumulative_forward_backward_gpu_seconds": 4174.846975952159,
      "cumulative_optimizer_gpu_seconds": 2.870767041444779,
      "cumulative_validation_seconds": 163.23734141900786,
      "mean_validation_U_L2": 0.46540955955728686,
      "mean_validation_VM_L2": 0.4342573238282121
    },
    {
      "epoch": 10,
      "precision": "fp32",
      "active_seconds": 4816.896429642002,
      "online_training_objective": 0.2408042661100626,
      "cumulative_train_wall_seconds": 4603.770598485993,
      "cumulative_forward_backward_gpu_seconds": 4642.646383758561,
      "cumulative_optimizer_gpu_seconds": 3.1851306259632106,
      "cumulative_validation_seconds": 180.81982893000531,
      "mean_validation_U_L2": 0.3285058524020776,
      "mean_validation_VM_L2": 0.39641591055166187
    },
    {
      "epoch": 11,
      "precision": "fp32",
      "active_seconds": 5297.094173239006,
      "online_training_objective": 0.20220635771751405,
      "cumulative_train_wall_seconds": 5062.35038875397,
      "cumulative_forward_backward_gpu_seconds": 5106.46683047487,
      "cumulative_optimizer_gpu_seconds": 3.4898569619655606,
      "cumulative_validation_seconds": 199.038627714006,
      "mean_validation_U_L2": 0.3420129692311507,
      "mean_validation_VM_L2": 0.3803361863386865
    },
    {
      "epoch": 12,
      "precision": "fp32",
      "active_seconds": 5786.196177823003,
      "online_training_objective": 0.12722508177161218,
      "cumulative_train_wall_seconds": 5530.200044486992,
      "cumulative_forward_backward_gpu_seconds": 5573.255372070322,
      "cumulative_optimizer_gpu_seconds": 3.7996894748210903,
      "cumulative_validation_seconds": 217.0145882640063,
      "mean_validation_U_L2": 0.27468203706734934,
      "mean_validation_VM_L2": 0.37155393443566403
    },
    {
      "epoch": 13,
      "precision": "fp32",
      "active_seconds": 6263.945143202,
      "online_training_objective": 0.1110228830948472,
      "cumulative_train_wall_seconds": 5987.273814591004,
      "cumulative_forward_backward_gpu_seconds": 6036.837025299089,
      "cumulative_optimizer_gpu_seconds": 4.1042536990642535,
      "cumulative_validation_seconds": 234.25090413101134,
      "mean_validation_U_L2": 0.2791990792051972,
      "mean_validation_VM_L2": 0.3549721494449268
    },
    {
      "epoch": 14,
      "precision": "fp32",
      "active_seconds": 6743.291465882001,
      "online_training_objective": 0.09053095791488885,
      "cumulative_train_wall_seconds": 6445.745822122,
      "cumulative_forward_backward_gpu_seconds": 6500.332757568376,
      "cumulative_optimizer_gpu_seconds": 4.403427427530285,
      "cumulative_validation_seconds": 251.73503426301613,
      "mean_validation_U_L2": 0.2189386762548493,
      "mean_validation_VM_L2": 0.33444096369716036
    },
    {
      "epoch": 15,
      "precision": "fp32",
      "active_seconds": 7226.2056286020015,
      "online_training_objective": 0.07679472424089909,
      "cumulative_train_wall_seconds": 6903.05682103298,
      "cumulative_forward_backward_gpu_seconds": 6964.747975830107,
      "cumulative_optimizer_gpu_seconds": 4.7243988521099025,
      "cumulative_validation_seconds": 274.175533303016,
      "mean_validation_U_L2": 0.2255240495693808,
      "mean_validation_VM_L2": 0.3305317705275925
    },
    {
      "epoch": 16,
      "precision": "fp32",
      "active_seconds": 7974.670608919005,
      "online_training_objective": 0.06490279603749513,
      "cumulative_train_wall_seconds": 7590.2169506989085,
      "cumulative_forward_backward_gpu_seconds": 7481.542423370395,
      "cumulative_optimizer_gpu_seconds": 5.2515997145175906,
      "cumulative_validation_seconds": 320.53828155202063,
      "mean_validation_U_L2": 0.2082629080964686,
      "mean_validation_VM_L2": 0.32832507432750513
    },
    {
      "epoch": 17,
      "precision": "fp32",
      "active_seconds": 8873.595557990004,
      "online_training_objective": 0.056844388730823994,
      "cumulative_train_wall_seconds": 8422.517844044894,
      "cumulative_forward_backward_gpu_seconds": 8018.083972534209,
      "cumulative_optimizer_gpu_seconds": 5.7419854748249035,
      "cumulative_validation_seconds": 366.54765780102025,
      "mean_validation_U_L2": 0.19183623046042872,
      "mean_validation_VM_L2": 0.315795079144885
    },
    {
      "epoch": 18,
      "precision": "fp32",
      "active_seconds": 9413.655772760001,
      "online_training_objective": 0.052661262955516576,
      "cumulative_train_wall_seconds": 8939.998309281887,
      "cumulative_forward_backward_gpu_seconds": 8495.190962188759,
      "cumulative_optimizer_gpu_seconds": 6.098302628278732,
      "cumulative_validation_seconds": 383.6237897050232,
      "mean_validation_U_L2": 0.1896385151061663,
      "mean_validation_VM_L2": 0.31402242197981106
    },
    {
      "epoch": 19,
      "precision": "fp32",
      "active_seconds": 9877.999603144002,
      "online_training_objective": 0.04965715546160936,
      "cumulative_train_wall_seconds": 9383.660713512909,
      "cumulative_forward_backward_gpu_seconds": 8958.634118499795,
      "cumulative_optimizer_gpu_seconds": 6.403032133340838,
      "cumulative_validation_seconds": 401.1018038470211,
      "mean_validation_U_L2": 0.18713099861727575,
      "mean_validation_VM_L2": 0.31424038628939616
    },
    {
      "epoch": 20,
      "precision": "fp32",
      "active_seconds": 10342.403060896999,
      "online_training_objective": 0.0480322159267962,
      "cumulative_train_wall_seconds": 9827.759577089899,
      "cumulative_forward_backward_gpu_seconds": 9422.337779541038,
      "cumulative_optimizer_gpu_seconds": 6.711993669271473,
      "cumulative_validation_seconds": 418.19867544501903,
      "mean_validation_U_L2": 0.1837506348080824,
      "mean_validation_VM_L2": 0.31308651953881866
    }
  ],
  "TS3_FP64_paused_by_user": {
    "paused_by_user": true,
    "resume_requires_user": true,
    "checkpoint": "fp64/last.pt",
    "checkpoint_sha256": "524dcdf588b73e597fad0919ccc039eee557164fe24a95977d4b139ff35e96b0",
    "epoch": 6,
    "cursor": 200,
    "optimizer_updates": 625,
    "optimizer_and_all_RNG_present": true,
    "source_identity_unchanged": true,
    "checkpoint_model_dtype": "torch.float64",
    "active_seconds": 24733.596707858003,
    "updated_unix": 1793222675.5875793,
    "native_worker_and_windows_supervisor_exit_confirmed": true
  },
  "test_labels_read": false,
  "updated_unix": 1793233734.1556315,
  "summary": {
    "completed": true,
    "precision": "fp32",
    "epochs": 20,
    "train_cases": 800,
    "train_case_forward_backward_passes": 16000,
    "optimizer_updates": 2000,
    "parameters": 11760196,
    "active_seconds": 10342.941920461999,
    "timers": {
      "train_wall_seconds": 9827.759577089899,
      "forward_backward_gpu_seconds": 9422.337779541038,
      "optimizer_gpu_seconds": 6.711993669271473,
      "checkpoint_seconds": 64.42403165299038,
      "validation_seconds": 418.19867544501903
    },
    "seconds_per_train_epoch": 491.3879788544949,
    "forward_backward_gpu_seconds_per_case": 0.5888961112213149,
    "peak_allocated_bytes": 8831659008,
    "peak_reserved_bytes": 9833545728,
    "validation": {
      "mean_U_L2": 0.1837506348080824,
      "mean_VM_L2": 0.31308651953881866
    },
    "test_labels_read": false,
    "AMP": false,
    "TF32": false,
    "identity": {
      "method": "mgn",
      "graph_topology": "original TET10 quadratic halfedges, directed and deduplicated, all nodes",
      "protocol": "m01_local_mgn_fp32_v1",
      "precision": "fp32",
      "parameter_dtype": "torch.float32",
      "parameters": 11760196,
      "config_sha256": "98a18fe2691dd6ebe12790d0f1ff02b8cb1327af6fe2714c59308a8e0bf0364d",
      "initial_weights_sha256": "ad2dab965bb775dab1201993bb96933ce4ca9d2e834f204582da58236917edfb",
      "data_sha256": "1573d1710d137fffcaa362e4d059d59d976436a68fe62e4a60ac575bf47ad355",
      "normalization_sha256": "25155791e0d293c5c8519ebdcaa24f380a079c319fe2fc4e9accda781974f85e",
      "torch_version": "2.14.1+cu130",
      "GPU": "NVIDIA GeForce RTX 5090",
      "AMP": false,
      "TF32": false,
      "sources": {
        "tools/train_m01_mgn_comparison.py": "df7ac1345c73bd6833e5ef44add07a949624e0b988188dbeb68b2553d442a5cf",
        "tools/train_rod_m01_sockeye.py": "153d0bbc666ec918a33cf4bfd7b486d8304bdea78e47f36e6added6add5eeb86",
        "geobc/rod_m01_models.py": "96317e7764b686ef5bdb027e05921f69ca66c63e3eaa44b812a23b2789319c5c",
        "geobc/overfit_meshgraphnet.py": "d8b180153c3080507e9aa35587e6bcf353ba29a4754732377ac74527b0e1451a",
        "geobc/native_fno.py": "b90fe48d292d52e9acf465b35e486c02db82a553315cadca63d7c2ddd6acc639",
        "geobc/fno.py": "45314639765e68379dc0726141f59c72d84413c8d348818bba5f3bafb6290fb4"
      },
      "cache_features": "original R06 float32 known features, normalized in float64 then cast to arm dtype",
      "training_target_dtype": "torch.float32",
      "metric_reference": "common CPU float64 physical-space errors",
      "test_labels_read": false
    }
  },
  "export_review": {
    "precision": "fp32",
    "completed_epochs": 20,
    "optimizer_updates": 2000,
    "train_case_passes": 16000,
    "parameters": 11760196,
    "dtype": "torch.float32",
    "weights_only_CPU_and_strict_model_load": true,
    "finite_inference_parameters": true,
    "validation_rows": 100,
    "validation_aggregate_max_difference": 0.0,
    "source_identity_and_normalization_match": true,
    "inference_sha256": "0283348bc78a790d14cf88a0612974cec9cd45dbb852d5fdbe233d96c1017a19",
    "test_labels_read": false,
    "CUDA_initialized": false,
    "updated_unix": 1793233654.6372564,
    "note": "Export/aggregate consistency only; no fit-error pass/fail and no extra training or validation inference."
  },
  "comparison": {
    "TS3_FP32": {
      "completed": true,
      "precision": "fp32",
      "epochs": 20,
      "train_cases": 800,
      "train_case_forward_backward_passes": 16000,
      "optimizer_updates": 2000,
      "parameters": 11882756,
      "active_seconds": 5257.299777646998,
      "timers": {
        "train_wall_seconds": 4923.018869042902,
        "forward_backward_gpu_seconds": 4494.2936603546195,
        "optimizer_gpu_seconds": 6.9325837092399345,
        "checkpoint_seconds": 47.03540746699218,
        "validation_seconds": 265.03405312700124
      },
      "seconds_per_train_epoch": 246.1509434521451,
      "forward_backward_gpu_seconds_per_case": 0.28089335377216373,
      "peak_allocated_bytes": 5376729088,
      "peak_reserved_bytes": 6306136064,
      "validation": {
        "mean_U_L2": 0.14407541536861024,
        "mean_VM_L2": 0.27737759340475754
      },
      "test_labels_read": false,
      "AMP": false,
      "TF32": false,
      "identity": {
        "protocol": "m01_local_ts3_precision_v1",
        "precision": "fp32",
        "parameter_dtype": "torch.float32",
        "parameters": 11882756,
        "config_sha256": "47369eb28682d7fa8c44bbe5eadd3ff10791bcdb77c45b25682a44355bc8486d",
        "initial_weights_sha256": "c7ec55cd145c14f1a1693d362f17b78c7c631712e0cee80256b91c9e7caef8a7",
        "data_sha256": "1573d1710d137fffcaa362e4d059d59d976436a68fe62e4a60ac575bf47ad355",
        "normalization_sha256": "25155791e0d293c5c8519ebdcaa24f380a079c319fe2fc4e9accda781974f85e",
        "torch_version": "2.14.1+cu130",
        "GPU": "NVIDIA GeForce RTX 5090",
        "AMP": false,
        "TF32": false,
        "sources": {
          "tools/train_m01_ts3_precision.py": "0021748000579e0649923fc667048f56f6b398993383c90d45ce0d04c4876d6a",
          "tools/train_rod_m01_sockeye.py": "153d0bbc666ec918a33cf4bfd7b486d8304bdea78e47f36e6added6add5eeb86",
          "geobc/overfit_transformers.py": "4241224442e2ef5cadb64511ce82b5ae383ad53ef18d873e4414b27e0d0dcb6e",
          "geobc/rod_m01_models.py": "96317e7764b686ef5bdb027e05921f69ca66c63e3eaa44b812a23b2789319c5c",
          "geobc/overfit_meshgraphnet.py": "d8b180153c3080507e9aa35587e6bcf353ba29a4754732377ac74527b0e1451a",
          "geobc/native_fno.py": "b90fe48d292d52e9acf465b35e486c02db82a553315cadca63d7c2ddd6acc639",
          "geobc/fno.py": "45314639765e68379dc0726141f59c72d84413c8d348818bba5f3bafb6290fb4",
          "pinned_TS3_source": "49292aa1ee7be2e143db5b9c75d0128f8767f8a2ae74479cdc06aeb9d41fb71a"
        },
        "cache_features": "original R06 float32 known features, normalized in float64 then cast to arm dtype",
        "training_target_dtype": "torch.float32",
        "metric_reference": "common CPU float64 physical-space errors",
        "test_labels_read": false
      }
    },
    "MGN_FP32": {
      "completed": true,
      "precision": "fp32",
      "epochs": 20,
      "train_cases": 800,
      "train_case_forward_backward_passes": 16000,
      "optimizer_updates": 2000,
      "parameters": 11760196,
      "active_seconds": 10342.941920461999,
      "timers": {
        "train_wall_seconds": 9827.759577089899,
        "forward_backward_gpu_seconds": 9422.337779541038,
        "optimizer_gpu_seconds": 6.711993669271473,
        "checkpoint_seconds": 64.42403165299038,
        "validation_seconds": 418.19867544501903
      },
      "seconds_per_train_epoch": 491.3879788544949,
      "forward_backward_gpu_seconds_per_case": 0.5888961112213149,
      "peak_allocated_bytes": 8831659008,
      "peak_reserved_bytes": 9833545728,
      "validation": {
        "mean_U_L2": 0.1837506348080824,
        "mean_VM_L2": 0.31308651953881866
      },
      "test_labels_read": false,
      "AMP": false,
      "TF32": false,
      "identity": {
        "method": "mgn",
        "graph_topology": "original TET10 quadratic halfedges, directed and deduplicated, all nodes",
        "protocol": "m01_local_mgn_fp32_v1",
        "precision": "fp32",
        "parameter_dtype": "torch.float32",
        "parameters": 11760196,
        "config_sha256": "98a18fe2691dd6ebe12790d0f1ff02b8cb1327af6fe2714c59308a8e0bf0364d",
        "initial_weights_sha256": "ad2dab965bb775dab1201993bb96933ce4ca9d2e834f204582da58236917edfb",
        "data_sha256": "1573d1710d137fffcaa362e4d059d59d976436a68fe62e4a60ac575bf47ad355",
        "normalization_sha256": "25155791e0d293c5c8519ebdcaa24f380a079c319fe2fc4e9accda781974f85e",
        "torch_version": "2.14.1+cu130",
        "GPU": "NVIDIA GeForce RTX 5090",
        "AMP": false,
        "TF32": false,
        "sources": {
          "tools/train_m01_mgn_comparison.py": "df7ac1345c73bd6833e5ef44add07a949624e0b988188dbeb68b2553d442a5cf",
          "tools/train_rod_m01_sockeye.py": "153d0bbc666ec918a33cf4bfd7b486d8304bdea78e47f36e6added6add5eeb86",
          "geobc/rod_m01_models.py": "96317e7764b686ef5bdb027e05921f69ca66c63e3eaa44b812a23b2789319c5c",
          "geobc/overfit_meshgraphnet.py": "d8b180153c3080507e9aa35587e6bcf353ba29a4754732377ac74527b0e1451a",
          "geobc/native_fno.py": "b90fe48d292d52e9acf465b35e486c02db82a553315cadca63d7c2ddd6acc639",
          "geobc/fno.py": "45314639765e68379dc0726141f59c72d84413c8d348818bba5f3bafb6290fb4"
        },
        "cache_features": "original R06 float32 known features, normalized in float64 then cast to arm dtype",
        "training_target_dtype": "torch.float32",
        "metric_reference": "common CPU float64 physical-space errors",
        "test_labels_read": false
      }
    },
    "MGN_over_TS3_train_wall": 1.9962872047655875,
    "MGN_over_TS3_GPU_forward_backward": 2.0965113745588164,
    "MGN_over_TS3_peak_allocated": 1.6425709503777772,
    "queue_wait_seconds": null,
    "queue_timing_note": "No cumulative queue counter was recorded; preserve independent GPU, host train-wall, validation, checkpoint and active counters without subtracting them to infer queue time.",
    "scope": "Same 800 TRAIN and 100 validation, final epoch20; no test labels. MGN additionally uses native graph connectivity and has a different initialization/parameter count."
  }
}
