
用软件实现并行计算机系统的时钟同步

提出了利用软件同步实现TANSPUTER系统中各处理器时钟同步方法。首先对并行计算机系统的时钟同步问题进行了介绍;然后对一种多处理器的同步算法简单地进行了描述,并给出了在990一 STAR并行计算机系统中实现的方法;提供了部分程序代码和注解以及在990一STAR并行计算机系统中获取的结果;讨论了代码的实用性和可移植性。[1]

同步问题

系统就被认为同步,这可以通过相应的硬件和软件技术来实现。 讨论非容错的软件同步方法,其同步思想就是通过并行计算机系统中节点互联网络中的信息交换来计算同步硬件时钟时所需的调整值。具体实现过程就是假定处理节点中某个处理器的时钟作为参考时钟(主时钟),然后使并行计算机系统中其它的时钟值与其保持一致,这种机制可通过周期地广播主时间、并设置从时钟的值与它接收到的时间值相等来实现。

在系统软件设计时,因为时间管理总是属于最高优先级别的进程,系统总是会立即响应时间管理进程,这样不管Sender和Receiver进程谁先激活,其间的延迟可以用一些常数单位rdmin(最小激活延迟单位)来度量,虽然不知准确的激活延迟为多少,但可以通过将首先激活的进程人为延迟rdmin来得到部分补偿。[1]
算法实现和程序结构
算法利用并行C语言和TRANSPUTER汇编语言混合编写、并已在研制的990一STAR并行计算机系统上侧试通过,990一STAR为松散藕合的并行计算机系统,包括16个数据处理节点和一个专用图像处理节点,每个数据处理节点由TRANSPUTER T805和Intel i860通过存贮共享藕合而成,每个i86。具有强大的计算能力,主要完成大负荷的计算。各节点之间的通讯通过T805及其通讯链来实现。为了便于系统的扩展和降低硬件的复杂性,整个系统没有设置硬件全局时钟,各节点之间的同步采用软件时钟来实现。 在TRANSPUTER系统中,LINK不能为几个同时被激活的进程共享并行计算机,所以通信不会因LINK的吞吐量而受影响,对于进程激活延迟只要在首先激活的进程中加入适当的记rdmin即可,因为对于以LINK直接连接的节点,数据交换时,总是sender先于Rceciver结束,而对于以C004相连接的节点,情况就不一样。总之,通过在Master或Slaver同步代码中插入适当的延时就能补偿激活延迟误差。
此时要注意的问题有:延迟数据的精度和误差、静态时序分析所用条件的更改,例如把理想时钟(ideal clock)变成传播时钟(propagated clock)、输入(input)和输出(output)延迟的更改、再优化时是否提供了详细的布局信息和所用时序引擎(timing engine)之间的误差等。说明:指示调用进程的超时时钟在指定的时间后向调用进程发送一个sigalrm信号.设置超时时钟时时间值不会被放入堆栈中,后一次设置会把前一次(还未到超时时间)冲掉.。最后提醒一句:做时钟树时也要计算线间延迟,所以同样会有布局中提到的不同时序引擎(timing engine)之间的误差的问题。
c - 高频头是指只能接收c拨束的卫星电视(广播)节目,也就是通过接收机发送22k信号和不发送22k信号来选择,只要设置正确多台接收机就可以接收不同极化的节目了,如奥斯卡ask-268双本振ku高频头,确定的方法很简单,我们再看122ku天浪的几个下行频率分别为11727 11804 11880 11881 11958。据d.j介绍,“csr mesh采取的是一种广播技术 ,类似大海中的波涛,其节点和节点之间的距离是50米,我们的芯片有中继功能可以将信号不断传输到更远,当控制信号到达第一波被控设备后并行计算机,它们会将信号再次广播出去,传给第二波设备,然后是第三波...而这些设备采集到的温度、红外等信号也可以回传回来。光接收电路2接收从可变色散补偿器1输出的光信号,并将该信号转换成电信号,执行公知的信号接收处理(例如,时钟再现、数据识别等),并将所接收的表示处理结果的数据信号输出给误差校正电路3。
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/tongxinshuyu/article-108503-1.html
再配上奶茶的歌声
特别是常规潜艇世界第一