Diff Coverage

Diff: origin/master...HEAD, staged and unstaged changes

Source File Diff Coverage (%) Missing Lines
hyper_parallel/core/dtensor/dtensor.py 100%  
hyper_parallel/core/fully_shard/api.py 80.0% 183,347,358,369
hyper_parallel/core/fully_shard/hsdp_param.py 100%  
hyper_parallel/core/fully_shard/hsdp_scheduler.py 100%  
hyper_parallel/core/fully_shard/api.py
179
180
181
182
183
184
185
186
187

    def set_requires_gradient_sync(self, requires_grad_sync: bool, *, recurse: bool = True) -> None:
        """Set gradient synchronization for this module and optionally its descendants."""
        if not isinstance(requires_grad_sync, bool):
            raise ValueError("requires_grad_sync must be bool")
        if not isinstance(recurse, bool):
            raise ValueError("recurse must be bool")
        self_module = cast(nn.Module, self)
        for _, module in self_module.named_modules() if recurse else (("", self),):
343
344
345
346
347
348
349
350
351

    def set_requires_all_reduce(self, requires_all_reduce: bool, *, recurse: bool = True) -> None:
        """Set all-reduce for this module and optionally its descendants."""
        if not isinstance(requires_all_reduce, bool):
            raise ValueError("requires_all_reduce must be bool")
        if not isinstance(recurse, bool):
            raise ValueError("recurse must be bool")
        self_module = cast(nn.Module, self)
        for _, module in self_module.named_modules() if recurse else (("", self),):
354
355
356
357
358
359
360
361
362

    def set_reshard_after_forward(self, reshard_after_forward: bool, recurse: bool = True) -> None:
        """Set forward resharding for this module and optionally its descendants."""
        if not isinstance(reshard_after_forward, bool):
            raise ValueError("reshard_after_forward must be bool")
        if not isinstance(recurse, bool):
            raise ValueError("recurse must be bool")
        self_module = cast(nn.Module, self)
        for _, module in self_module.named_modules() if recurse else (("", self),):
365
366
367
368
369
370
371
372
373

    def set_reshard_after_backward(self, reshard_after_backward: bool, recurse: bool = True) -> None:
        """Set backward resharding for this module and optionally its descendants."""
        if not isinstance(reshard_after_backward, bool):
            raise ValueError("reshard_after_backward must be bool")
        if not isinstance(recurse, bool):
            raise ValueError("recurse must be bool")
        self_module = cast(nn.Module, self)
        for _, module in self_module.named_modules() if recurse else (("", self),):