diff options
| author | YurenHao0426 <Blackhao0426@gmail.com> | 2026-06-21 15:33:22 -0500 |
|---|---|---|
| committer | YurenHao0426 <Blackhao0426@gmail.com> | 2026-06-21 15:33:22 -0500 |
| commit | e42f575050efeeccb736385b43bed84e1129edb0 (patch) | |
| tree | 8ed04b42218cf4c90c0b9c29b40db149f1355f4a /rrog/registry.py | |
Initial RRoG GNN runner
Diffstat (limited to 'rrog/registry.py')
| -rw-r--r-- | rrog/registry.py | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/rrog/registry.py b/rrog/registry.py new file mode 100644 index 0000000..7f6b6fe --- /dev/null +++ b/rrog/registry.py @@ -0,0 +1,57 @@ +from dataclasses import dataclass, field +from typing import Callable + + +@dataclass(frozen=True) +class BenchmarkSpec: + name: str + tier: str + domain: str + task_type: str + metric: str + priority: int + status: str = "planned" + notes: str = "" + + +@dataclass(frozen=True) +class ViewSpec: + name: str + family: str + graph_type: str + priority: int + status: str = "planned" + notes: str = "" + + +@dataclass(frozen=True) +class ComputeSpec: + name: str + family: str + priority: int + status: str = "planned" + notes: str = "" + + +@dataclass(frozen=True) +class ModifierSpec: + name: str + family: str + priority: int + status: str = "planned" + notes: str = "" + + +@dataclass(frozen=True) +class RunSpec: + task: str + view: str + compute: str + modifier: str = "none" + default_args: dict[str, object] = field(default_factory=dict) + command_builder: Callable[[dict[str, object]], list[str]] | None = None + + +def by_name(items): + return {item.name: item for item in items} + |
