Thinning Protocols for Routing h Relations in Complete Networks

We present two simple routing protocols called constant thinning and geometric thin ning protocol for complete network under OCPC assumption analyze them and compare them with each other and some other routing protocols Introduction Parallel programmers would welcome the at shared memory because it would make PRAM style programming possible and thus make easier to utilize the rich culture of parallel algo rithms written for the PRAM model As large memories with a large number of simultaneous accesses do not seem feasible the only possible way to build a PRAM type parallel computer appears to be to build it from processors with local memories The ne granularity of par allelism and global memory access what makes the PRAM model so desirable for algorithm designers sets very high demands for data communication Fortunately memory accesses at the rate of the processor clock are not necessary but due to the parallel slackness principle latency in access does not imply ine ciency It is enough to route an h relation e ciently By de nition in an h relation there is a complete graph where each node processor has at most h packets to send and it is the target of at most h packets We assume the OCPC Optical Communication Parallel Computer or collision assumption If two or more packets arrive at a node simultaneously all fail An implementation of an h relation is work optimal at cost c if all packets arrive at their target in time ch The rst attempt to implement an h relation is to use greedy routing algorithm By greedy principle one tries to send packets as fast as one can The fatal drawback of the greedy algo rithm is the livelock Some packets can cause mutual failure of sending until eternity Consider the situation when two processors have each one packet targeted to the same processor Due to greediness they are forced to send and fail for ever since then proc greedy for all processors i f Pg pardo while processor i has packets do choose an unsent packet at random and try to send it University of Joensuu Department of Computer Science P O Box Joensuu Finland email Anssi Kautonen Martti Penttonen cs joensuu University of Turku Department of Computer Science Lemmink isenkatu A Turku Finland email Ville Leppanen cs utu Another routing algorithm was proposed by Anderson and Miller and it was improved by Valiant They realize work optimally an h relation for h log p where p is the number of processors Other algorithms with even lower latency were provided by Contrary to these the h relation algorithm of Ger b Graus and Tsantilas has the advantage of being direct i e the packets go to their target directly without intermediate nodes For other results related with direct or indirect routing see also The algorithm of Ger b Graus and Tsantilas runs work optimally for h log p log log p Due to its simplicity and directness we choose the GGT algorithm as our reference point Our new algorithm presented in Section is inspired by although the latter deals with the continuous routing problem not the h relation proc GGT h for i to log h do Transmit h proc Transmit h for all processors P pardo for e h maxfp h ln p ln pg times do choose an unsent packet x at random attempt to send x with probability unsent packets h As another point of reference we take what is called Penalty algorithm in proc Penalty f function for all processors P do while processor P has unsent packets do choose a packet x at random if f number of failures of x RandomNumber then attempt to send x In Penalty algorithm each packet has an individual failure history and failures decrease the sending probability In literature similar protocols are often called backo protocols and Ethernet with f i minf i g is a famous representative of this class Thinning protocols The throughput of the greedy routing of randomly addressed packets is characterized by h h e where h is the probability that one of the h competing processors is sending to the same processor at the same time For all x x x e This would be the throughput if all processors would create and send a new randomly addressed packet which is not the case in routing an h relation It may happen that at the end only two processors have a packed addressed to the same target In this situation under the OCPC assumption the greedy algo rithm which always tries both packets ends up in a livelock The solution is to decrease the