Diff Coverage

Diff: origin/r1.0.0...HEAD, staged and unstaged changes

Source File Diff Coverage (%) Missing Lines
hyper_parallel/core/fully_shard/api.py 100%  
hyper_parallel/core/fully_shard/hsdp_scheduler.py 100%  
hyper_parallel/platform/mindspore/fully_shard/scheduler.py 100%  
hyper_parallel/platform/torch/fully_shard/scheduler.py 25.0% 146-147,176
hyper_parallel/platform/torch/fully_shard/scheduler.py
142
143
144
145
146
147
148
149
150
151
        """Execute backward pre hook."""
        Variable._execution_engine.queue_callback(self._root_backward_hook)
        if self.scheduler_state == FSDPSchedulerState.PRE_BACKWARD:
            return grad
        if not self.isolated_backward:
            HSDPSchedulerV2.root_bp_state = True
        self._hsdp_backward_pre_hook(self.cell, None)
        return grad

    def _root_backward_hook(self, force_reduce=False):
172
173
174
175
176
177
178
179
180
        hook, keyed on ``_is_root``.
        """
        apply_final_reduce = self.scheduler_state != FSDPSchedulerState.BACKWARD
        self._backward_hook()
        if self._is_root and not self.isolated_backward:
            HSDPSchedulerV2.root_bp_state = False
        if apply_final_reduce or force_reduce:
            with torch.profiler.record_function(f"root_backward reduce:{self.hsdp_state.module_name}"):
                self.wait_for_pending_reductions()