mirror of
https://github.com/tinygrad/tinygrad.git
synced 2026-08-29 13:56:06 +00:00
one less rewrite on schedule [pr] (#10872)
* one less rewrite on schedule [pr] * verify in ebs
This commit is contained in:
@@ -7,6 +7,7 @@ from tinygrad.codegen.kernel import Kernel
|
||||
from tinygrad.codegen.heuristic import hand_coded_optimizations
|
||||
from tinygrad.codegen import get_rewrites_for_renderer, apply_rewrites, rewrites_for_linearizer
|
||||
from tinygrad.engine.search import beam_search, bufs_from_lin
|
||||
from tinygrad.uop.spec import type_verify
|
||||
|
||||
if __name__ == "__main__":
|
||||
mdl = ResNet50()
|
||||
@@ -56,4 +57,6 @@ if __name__ == "__main__":
|
||||
uops_line = []
|
||||
for u in rewritten_uops:
|
||||
uops_line.append(apply_rewrites(u, rewrites_for_linearizer))
|
||||
with Timing("***** model verify in "):
|
||||
for u in uops_line: type_verify(u.arg.lst)
|
||||
print(sum(len(u.arg.lst) for u in uops_line))
|
||||
|
||||
@@ -430,10 +430,8 @@ def get_kernelize_map(big_sink:UOp) -> dict[UOp, UOp]:
|
||||
|
||||
# insert gbarriers in places determined by the realize map
|
||||
realize_map = group_realizes(tensor_map[big_sink])
|
||||
tensor_map = graph_rewrite_map(tensor_map[big_sink], add_gbarrier, realize_map, bottom_up=True, input_map=tensor_map, name="insert_gbarrier")
|
||||
# optionally reorder gbarriers or insert more (top down)
|
||||
tensor_map = graph_rewrite_map(tensor_map[big_sink], finalize_gbarrier, input_map=tensor_map, name="finalize_gbarrier")
|
||||
tensor_map = graph_rewrite_map(tensor_map[big_sink], remove_tags, input_map=tensor_map, name="remove_tags")
|
||||
tensor_map = graph_rewrite_map(tensor_map[big_sink], add_gbarrier, ctx=realize_map, bottom_up=True, input_map=tensor_map, name="insert_gbarrier")
|
||||
tensor_map = graph_rewrite_map(tensor_map[big_sink], finalize_gbarrier+remove_tags, input_map=tensor_map, name="finalize_gbarrier")
|
||||
|
||||
# TODO: move view_left/view_right here
|
||||
|
||||
|
||||
Reference in New Issue
Block a user