싱크로나이저(알고리즘)

Synchronizer (algorithm)

컴퓨터 과학에서 싱크로나이저는 비동기 프로세서 네트워크 위에서 동기식 알고리즘을 실행하는 데 사용할 수 있는 알고리즘이므로 비동기식 시스템이 동기식 네트워크로 실행될 수 있다.

이 개념은 원래 (Awerbuch, 1985)에서 알파, 베타, 감마라는 세 가지 싱크로나이저 알고리즘과 함께 제안되었으며, 이는 시간과 메시지의 복잡성 측면에서 서로 다른 절충을 제공하였다. 본질적으로, 그것들은 비동기 알고리즘(글로벌 클럭이 없는 네트워크에서 작동)이 설계하기 더 어렵고 종종 동등한 동기 알고리즘보다 덜 효율적이라는 문제에 대한 해결책이다. 싱크로나이저를 사용함으로써 알고리즘 설계자는 단순화된 "이상적 네트워크"를 처리한 다음 나중에 보다 현실적인 비동기 사례에서 작동하는 버전을 기계적으로 만들 수 있다.

사용 가능한 싱크로나이저 알고리즘

아우베르부치가 원문에서 제공한 3가지 알고리즘은 다음과 같다.

  • 알파 싱크로나이저: 이것은 시간 복잡성은 낮지만 메시지 복잡성은 높다.
  • 베타 동기화 장치: 이것은 시간 복잡성은 높지만 메시지 복잡성은 낮다.
  • 감마 싱크로나이저: 이것은 상당히 낮은 시간과 메시지의 복잡성을 제공함으로써 알파와 베타 사이의 합리적인 절충을 제공한다.

원본 논문 이후 문헌에서 다른 싱크로나이저 알고리즘이 제안되었다.

참조

  • Baruch Awerbuch (1985). "Complexity of Network Synchronization" (PDF). {{cite journal}}: Cite 저널은 필요로 한다. journal= (도움말)