What causes delay/yield

In scratch 2.0, (I left before they updated) yield and a delay of 33 (the framerate of scratch) is triggered by any loop repeating more than once, or any wait block. Yield only is caused by a repeat 0. However, this is canceled by using a custom block with run without screen refresh (said to be identical to warp) However, Snap! warp blocks seem to also cause yield and delay. Is there an easy way to prevent/force yield/delay that does not also cause one yield at the start?

There are so many topics asking the same question it's really surprsing. Here, have a couple topics which dealt with this already. Run Without Screen Refresh, Expert Snappers who know how to make things faster?