@@ -731,36 +731,8 @@ void LoopIndexingAnalysis::constructLoopDomains() {
731
731
!concrete_id_to_consumer_.count (concrete_id) &&
732
732
// Use permissive map so the selected ID indeed represents the
733
733
// loop.
734
- // Note: see PR https://github.com/csarofeen/pytorch/pull/1960
735
- // and issue https://github.com/csarofeen/pytorch/issues/1873
736
- // This mapping look up is part of a staged indexing scheme.
737
- // When we find a replayed exact id that exactly map to the loop
738
- // id, this means that we can resolve indexing involved in this
739
- // loop "locally", i.e. only with and with only the iterdomains
740
- // on the
741
- //
742
- // given consumer tv.
743
- // When we cannot find an exact mapping, the permissive mapping
744
- // would
745
- // help defering the indexing resolution for this loop nest
746
- // level to other iterdomain expressions from tv's that are
747
- // further concretized and usually they are further down the
748
- // consumer chain of the given consumer tv.
749
- //
750
- // Intuitively exact mapping of two iterdomains should imply
751
- // permissive mapping
752
- // of them as well and if that was the case, only looking up
753
- // permissive mapping would be enough to address both of the
754
- // cases above.
755
- // FIXME: But currently exact mapping does not imply permissive
756
- // mapping (See issue:
757
- // https://github.com/csarofeen/pytorch/issues/1963)
758
- // Which means we should check both exact and permissive mapping
759
- // here.
760
- (GpuLower::current ()->caMap ()->areMapped (
761
- concrete_id, loop_id, IdMappingMode::EXACT) ||
762
- GpuLower::current ()->caMap ()->areMapped (
763
- concrete_id, loop_id, IdMappingMode::PERMISSIVE));
734
+ GpuLower::current ()->caMap ()->areMapped (
735
+ concrete_id, loop_id, IdMappingMode::PERMISSIVE);
764
736
});
765
737
766
738
TORCH_INTERNAL_ASSERT (
0 commit comments