ExperimentConfig#

class ExperimentConfig(
device='cuda',
debug=True,
deterministic=False,
seed=0,
comment='',
compile=False,
compile_mode=None,
compile_compatible_fftconv=False,
experiment_dir=None,
num_nodes=1,
mp_sharing_strategy=None,
dataset=PLACEHOLDER,
net=PLACEHOLDER,
lightning_wrapper_class=PLACEHOLDER,
optimizer=PLACEHOLDER,
scheduler=<factory>,
train=<factory>,
trainer=<factory>,
wandb=<factory>,
start_from_checkpoint=<factory>,
autoresume=<factory>,
callbacks=<factory>,
)#

Bases: object

Top-level configuration for a single nvSubquadratic training run.

All fields have sensible defaults; task-specific overrides are specified in experiment config files under experiments/. The config is loaded by experiments/run.py, printed as a tree via Rich, and passed to construct_trainer() and the Lightning wrapper.

Key optional fields

  • compile = True: wrap the network with torch.compile. Mutually exclusive with the QuACK kernel path (use use_quack=False in norm layers when compiling).

  • experiment_dir: override the default runs/<run_name>/ checkpoint directory with an absolute path.

  • num_nodes: number of multi-node training hosts (passed to the Lightning Trainer).

Parameters:
device: str = 'cuda'#
debug: bool = True#
deterministic: bool = False#
seed: int = 0#
comment: str = ''#
compile: bool = False#
compile_mode: str | None = None#
compile_compatible_fftconv: bool = False#
experiment_dir: str | None = None#
num_nodes: int = 1#
mp_sharing_strategy: str | None = None#
dataset: LazyConfig = PLACEHOLDER#
net: LazyConfig = PLACEHOLDER#
lightning_wrapper_class: LazyConfig = PLACEHOLDER#
optimizer: LazyConfig = PLACEHOLDER#
scheduler: SchedulerConfig#
train: TrainConfig#
trainer: TrainerConfig#
wandb: WandbConfig#
start_from_checkpoint: StartFromCheckpointConfig#
autoresume: AutoResumeConfig#
callbacks: list[LazyConfig]#
__init__(
device='cuda',
debug=True,
deterministic=False,
seed=0,
comment='',
compile=False,
compile_mode=None,
compile_compatible_fftconv=False,
experiment_dir=None,
num_nodes=1,
mp_sharing_strategy=None,
dataset=PLACEHOLDER,
net=PLACEHOLDER,
lightning_wrapper_class=PLACEHOLDER,
optimizer=PLACEHOLDER,
scheduler=<factory>,
train=<factory>,
trainer=<factory>,
wandb=<factory>,
start_from_checkpoint=<factory>,
autoresume=<factory>,
callbacks=<factory>,
)#
Parameters:
Return type:

None