A fine-grain clock synchronization mechanism for Myrinet clusters

Clock synchronization is a fundamental requirement for any real-time distributed system operating with global schedules. The presence of a global clock permits co-scheduling, enhances the degree of synchronization between cooperating tasks of parallel programs, and permits implementation of quality of service (QoS) based communication. This paper describes the design and implementation of a high accuracy (/spl plusmn/5/spl mu/s) global clock on a Myrinet network of PC with low software overhead. The clock synchronization scheme uses a novel approach to reduce errors arising from variation of latency of transmitted clock values. The contribution of this work is that high-accuracy of clock synchronization is obtained without significant resource consumption. This makes the synchronization scheme equally suitable for high-performance and real-time distributed systems. The new approach achieves clock accuracy of the order of /spl plusmn/5/spl mu/s, compared to the other known clock synchronization algorithm on Myrinet that achieves accuracy of the order of milliseconds. Programmability of the Myrinet interface card and the presence of an on-board real time clock are critical to achieving this accuracy.