How are annotations handled during codegeneration?

I found this tutorial here about scheduling and stumbled over the annotation function. My question is, how is this handled during code generation? If I try it with the matmul function from the example and use sch.mod.script(show_meta=True) there is an annotation on the given loop, but the loops themselves are still there, unlike when using tensorize. Since annotate and tensorize seem to have similar ideas, when would I use one over the other?