-
Notifications
You must be signed in to change notification settings - Fork 53
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Contiguous predicate indexing #2860
Conversation
!build |
@@ -316,6 +316,8 @@ class AllocationDomainSetup : private kir::IrVisitor { | |||
} | |||
} | |||
|
|||
NVF_ERROR(allocation_domains.size() == contiguity.size()); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not related. Just for extra safety.
@@ -402,6 +404,9 @@ class AllocationDomainSetup : private kir::IrVisitor { | |||
actual_contiguity.push_back(contig.value()); | |||
} | |||
|
|||
NVF_ERROR(actual_allocation_domains.size() == actual_strides.size()); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not related. Just for extra safety.
@@ -756,8 +761,7 @@ TensorIndexer::TensorIndexer(IdModel& id_model) : id_model_(id_model) { | |||
|
|||
if (isDebugDumpEnabled(DebugDumpOption::IndexingVerbose)) { | |||
std::ofstream ofs("indexing_traversal_graph.dot", std::ofstream::trunc); | |||
auto dot_string = | |||
id_model_.idGraph(IdMappingMode::ALMOSTEXACT).toGraphvizDotGraph(); | |||
auto dot_string = traversalGraph().toGraphvizDotGraph(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just cleanup
@@ -937,22 +941,24 @@ Val* TensorIndexer::getLinearIndex( | |||
getContigIndexFor(expr, as_consumer, alloc_info, for_loops); | |||
|
|||
// Linearize the indices with strides. | |||
Val* index = tv->fusion()->zeroVal(); | |||
Val* linear_index = tv->fusion()->zeroVal(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just cleanup
!build |
@naoyam looks like this is pending a review, is there someone else that can review? Or do we need to ping Jacob on this? |
Pinging @jacobhinkle |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry for the delay
This is a follow-up to #2752 and concludes contiguous indexing support in the new indexing system. The previous only supported tensor indexing. This one extends that for predicate indexing. The primary differences with the tensor indexing case are: