Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 4 additions & 6 deletions torch/csrc/jit/codegen/cuda/lower_alias_memory.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -24,15 +24,13 @@ IterDomain* exactConcreteId(IterDomain* id) {
id, IdMappingMode::EXACT);
}

//! Checks that the current loop nest is not realizing a serial
//! broadcast so that each index of producer buffer will only
//! be visited once, which is the only case where aggressive
//! inner sharing is valid.
//!
//! Checks that the current loop nest is realizing a serial
//! broadcast so that each index of producer buffer can be visited
//! multiple times, in which case the aggressive is not valid.
bool isSerialBroadcastResolution(TensorView* producer, TensorView* consumer) {
//! Note: see issue #1785:
//! serial broadcast resolution doesn't only happen to
//! immediate producers of broadcast ops. We can also have
//! immediate outputs of broadcast ops. We can also have
//! example:
//! T1[I,B] = broadcast(T0[I]])
//! T3[I,I] = T1[I,B] + T2[I,I]
Expand Down
4 changes: 2 additions & 2 deletions torch/csrc/jit/codegen/cuda/scheduler/mma_utils.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -274,10 +274,10 @@ std::unordered_set<IterDomain*> getMmaDomainSet(
// optimizations.
//
// A concrete example:
// T0 [I0, I1, I2, I3, I4, I5] = mma(T1[I01, B11, B21, I31, I41, B51], T2[B02,
// T0 [I0, I1, I2, R3, I4, I5] = mma(T1[I01, B11, B21, I31, I41, B51], T2[B02,
// I12, B22, I32, I42, I52], {3};
// In this case some example querries:
// K dimension of T0 = {I3}
// K dimension of T0 = {R3}
// M dimension of T1 = {I01}
// N dimension of T2 = {I52}
// etc.
Expand Down