란?

  • Loop 중에 변하지 않는 것 (Invariant) 는 loop 밖으로 꺼내서 한번만 연산하게 하는 방법이다.
  • 가령 아래의 다이어그램을 보자.

출처: By Mooshua1857 - Own work, CC0, https://commons.wikimedia.org/w/index.php?curid=115584861

  • 위의 다이어그램에서는 CEi 에 의존하여 계속 값이 바뀌며 연산되지만, D 는 Loop 과는 무관하게 연산된다.
  • 따라서 D 의 경우에는 loop 밖으로 꺼내서 한번만 연산하게 하는 것.