Scalable crossbar network: a non-blocking ... - CiteSeerX

32 downloads 0 Views 887KB Size Report
with this problem is the use of non-blocking crossbar networks. However ... network (SCN) that is a non-blocking network is presented to cope with the afore-.
J Supercomput DOI 10.1007/s11227-014-1319-2

Scalable crossbar network: a non-blocking interconnection network for large-scale systems Fathollah Bistouni · Mohsen Jahanshahi

© Springer Science+Business Media New York 2014

Abstract Interconnection networks (INs) are used in wide applications of multiprocessor systems in order to set up connections between various nodes such as processors and memory modules. However, there is a fundamental problem in INs that has always been considered as one of the most challenging issues in this area. Blocking problem in these networks degrades network performance and consequently the performance of the whole system. In the meantime, the main option for dealing with this problem is the use of non-blocking crossbar networks. However, there are engineering and scaling difficulties when using these networks in large-scale systems. The number of pins on a VLSI chip cannot exceed a few hundreds, which restricts the size of the largest crossbar that should be integrated into a single VLSI chip. Using the idea of multistage implementation of crossbar network can resolve the problem. However, the next problem that arises with this idea is high hardware cost. Therefore, in this paper, a new implementation of crossbar network named scalable crossbar network (SCN) that is a non-blocking network is presented to cope with the aforementioned scaling problems. In addition, performance analysis results show that SCN outperforms multistage crossbar networks and multistage interconnection networks in terms of terminal reliability, mean time to failure, and system failure rate. Keywords Parallel computers · Interconnection networks · Blocking problem · Reliability · Scalable crossbar network

F. Bistouni Department of Information Technology, Qazvin Branch, Islamic Azad University, Qazvin, Iran e-mail: [email protected] M. Jahanshahi (B) Young Researchers and Elite Club, Central Tehran Branch, Islamic Azad University, Tehran, Iran e-mail: [email protected]; [email protected]

123

F. Bistouni, M. Jahanshahi

1 Introduction In the early 1950s, Neumann proposed a simple economical design for electronic computers in which a single processing unit is connected to a single memory module. During 1960s, parallel computing was partially solved, wherein by using the concept of solid state components, the cost of large computing machines was reduced. Afterward, very large scale integration (VLSI) was evolved in which thousands of transistors were placed on a single chip. Success of supercomputers to cope with scientific problems such as weather modeling, aerodynamic analysis of aircraft design, and particle physics may be the strongest motivation for development of parallel computers. After 1980s, this technology has played an undeniable, viable role to solve other problems [1]. Parallel processors are computer systems that consist of several processing elements connected via interconnection networks [2]. In a generic, multi-processor architecture, many processors link together through an interconnection network by which those are capable of transmitting data among themselves. In these systems, every node has a processor, a share of the main memory, and a cache hierarchy. The processors are connected to the global interconnection through a network interface. Another component of this system is I/O, where I/O devices are often connected to an I/O bus which is interfaced to memory module of different processors via the interconnection. Therefore, processor, memory hierarchy, and interconnection network are critical components of a parallel system [3–5]. One of the main concerns of parallel computing systems which apply multiple processors is the mechanism of information transferring among the processor elements and memory modules. Interconnection networks are formed by a complex connection of switching elements and links which determine the communication fashion among them. As a result, designing high-performance interconnection networks becomes a critical issue to exploit the performance of parallel computers [4–13]. Choosing the network topology is the first step in the design of a network. A key to the efficiency of interconnection networks comes from the fact that communication resources are shared. Instead of creating a dedicated channel between each terminal pair, the interconnection network is implemented with a collection of shared switching elements connected by shared links. The connection pattern of these switching elements defines the network’s topology. In fact, topology of an interconnection network is specified by a set of nodes N ∗ connected by a set of links L. Messages originate and terminate in a set of terminal nodes N where N ⊆ N∗ . Therefore, a network node may be a terminal node that acts as a source (input) or destination (output) for packets, or it may be a switch node that forwards packets from input ports to associated output ports. In other words, a message is delivered between terminals by making several hops across the shared links and switch nodes from its source terminal to its destination terminal [10,14,15]. For efficient and fair use of the network resources, a message is often divided into packets prior to transmission. A packet is the smallest unit of communication that contains the destination address and sequencing information, which are carried in the packet header. For topologies in which packets may have to traverse some intermediate switching elements, the routing algorithm determines the path selected by a packet to reach its destination. At each intermediate switch, the routing algorithm indicates

123

Scalable crossbar network Fig. 1 A crossbar network of size N × M

the next channel to be used. That channel may be selected among a set of possible choices. If all the candidate channels are busy, the packet is blocked and cannot advance, which is known as the blocking or head-of-line (HOL) blocking problem. Therefore, the main reason for the problem comes from the fact that communication resources such as switching elements and links are limited and shared in an interconnection network. In addition, efficient routing is also critical to the performance of interconnection networks. When a message or packet header reaches an intermediate switch, a switching mechanism determines how and when the router switch is set; that is, the input channel is connected to the output channel selected by the routing algorithm. In other words, the switching mechanism determines how network resources are allocated for message transmission [10,14,16–19]. More precisely, a network is said to be non-blocking if it can handle all requests that are a permutation (the term “permutation” defined as a request for parallel connections of every N sources to their N corresponding distinct destinations) of the inputs and outputs. That is, a dedicated path can be formed from each input to its corresponding output without any conflicts (shared channels). Conversely, a network is blocking if it cannot handle all such requests without conflicts [10,14,20,21]. Therefore, considering the blocking problem is one of the main factors for choosing an appropriate interconnection topology. So far, many interconnection topologies have been proposed. However, a few of them can efficiently solve the blocking problem. For systems with N nodes, the ideal topology would connect those nodes through a single N × N switch. Such a switch is known as a crossbar. The crossbar networks allow any processor in the system to connect to any other processor or memory unit so that many processors can communicate simultaneously without contention. Therefore, a crossbar network is obviously strictly non-blocking for each permutation of connections. A crossbar can be defined as a switching network with N inputs and M outputs, which allows up to min{N , M} one-to-one interconnections without contention. Figure 1 shows an N × M crossbar network. Usually, M = N except for crossbars connecting processors and memory modules. However it is realized, when we depict crossbar switches in a system, to avoid drawing the entire schematic each time, we employ the symbol for a crossbar shown in Fig. 2. Where it is clear from context that the box is a crossbar switch, we will omit the “X” and depict the crossbar as a simple box with inputs and outputs. Many other networks work very hard to achieve the non-blocking property that comes to the crossbar network very easily. If crossbars are trivially non-blocking, then why bother with any other non-blocking network? The main reason is scalability issue.

123

F. Bistouni, M. Jahanshahi Fig. 2 Used symbol for a 3 × 5 crossbar network

The number of physical connections of a switch is limited by hardware constraints such as the number of available pins and wiring area. The advent of VLSI permitted the integration of hardware for thousands of switches into a single chip. However, the number of pins on a VLSI chip cannot exceed a few hundreds, which restricts the size of the largest crossbar that should be integrated into a single VLSI chip [10,14,22]. These scaling issues preclude the use of crossbar networks for large network sizes. Therefore, the network can be used in small-scale multi-processors. However, there is a reasonable solution for the exploitation of these networks in large-scale systems. The solution uses small-size crossbar networks as building blocks for larger network sizes. According to previous works, this solution can be used by two different approaches: (1) Using small-size crossbar networks to build other large-size interconnection networks with different topology than the crossbar network [10,14,20,23–44]. Using this approach, many topologies have been introduced, most of which are known as multistage interconnection networks. (2) Using small-size crossbar networks to build large-sized crossbar networks [10,14,45]. Using this approach, designed networks similar to the crossbar network are non-blocking. Using the first approach, many alternative topologies have been proposed. Generally, in these topologies, messages may have to traverse several crossbar switches before reaching the destination node. In these networks, these switches are usually identical and have been traditionally organized as a set of stages. Each stage (but the input/output stages) is only connected to the previous and next stages using regular connection patterns. Input and output stages are connected to the first and last stages, respectively. These networks are referred to as multistage interconnection networks (MINs) and have different properties depending on the number of stages and how those stages are arranged. As will be discussed in Sect. 2, this approach can greatly promote the scalability problem. However, generally, it cannot hold the non-blocking feature of the crossbar network and suffers from many difficulties to solve the blocking problem. Unlike the first method, which is considered by many researchers, so far, very little works has been done on the latter approach. However, we believe that the development of this approach can lead to desired topologies which can meet most performance parameters needed in this area. Therefore, our focus in this paper is on the second approach. In this paper, according to this approach and the ideas proposed in [10,14] to build scalable crossbar networks, a new topology (see Sect. 3) called scalable crossbar network (SCN) will be proposed, which can tackle the blocking problem efficiently. In addition, the SCN eliminates the scalability issue due to the use of small-size crossbar networks as switching elements. On the other hand, the SCN’s self-routing mechanism is efficient and affordable. Furthermore, performance analysis (see Sect. 4) demon-

123

Scalable crossbar network

strates that SCN achieves a very reasonable performance in terms of various critical parameters such as terminal reliability, mean time to failure, and system failure rate compared with many representative MINs such as, shuffle-exchange network (SEN), extra-stage shuffle-exchange network (SEN+), Benes network, multilayer MINs, and replicated MINs as well as multistage implementation of crossbar network called multistage crossbar network (MCN). We will be more familiar with these networks in Sect. 2. The rest of the paper is organized as follows: an overview of related works will be provided in Sect. 2. The proposed interconnection topology, SCN, will be presented in Sect. 3. In Sect. 4, network performance is extensively analyzed. Finally, Sect. 5 concludes the paper. 2 Related works As discussed in Sect. 1, the number of pins on a VLSI chip cannot exceed a few hundreds, which restricts the size of the largest crossbar that can be integrated into a single VLSI chip. Also, the solution is using the small-size crossbar networks as building blocks for larger network sizes. On the other hand, this solution can be implemented in two different methods: (1) Using small-size crossbar networks to build other large-size interconnection networks with different topology with respect to the crossbar network [10,14,20,23–44]. (2) Using small-size crossbar networks to build large-size crossbar networks [10,14,45]. We will discuss two approaches in details in the following Sects. 2.1 and 2.2. 2.1 Using small-size crossbar networks to build other large-size interconnection networks Using this method, so far, many topologies have been proposed. In what follows, important recent works are reviewed: Various banyan-type MIN architectures, such as omega network, binary n-cube network, shuffle-exchange network, and delta networks have been presented in the literature. Typically, all of these kinds of networks are made of crossbar switches with small size 2 × 2. These basic networks provide just one path between any sourcedestination pair using 2 × 2 switches as basic elements. The network fails if merely one of the switches fails, resulting in poor fault-tolerance. In [23], a MIN called gamma was proposed. The gamma network is an interconnection network connecting N inputs to N outputs. It consists of (log2 N +1) stages numbered from stage 0 to stage (log2 N ) and N crossbar switches per stage. The crossbar switches in the first and last stages are of small size 1 × 3 and 3 × 1, respectively, and the intermediate stages have 3 × 3 small-size crossbar switches. The stages are linked via “power of two” and identify connections in such a way that redundant paths exist between the input and output terminals. However, the gamma network provides only one path when source and destination node sequence number is the same. Therefore, it provides different levels of fault tolerance to different node pairs and fails to guarantee high fault-tolerance for all pairs of source destination nodes. Therefore, in order to improve the capability of

123

F. Bistouni, M. Jahanshahi

fault-tolerance in the gamma, in [24], two new designs of 4-disjoint paths MINs called 4-disjoint gamma interconnection networks (4DGIN-1 and 4DGIN-2) were proposed. Both designs have (log2 N + 1) number of stages from stage 0 to (log2 N ), each stage involves N sources and N destinations. In these networks, small-size crossbar switches are used in sizes such as 2 × 4, 4 × 2, 2 × 3, and 3 × 2. In [25], a fault-tolerant network called CSMIN (combining switches multistage interconnection network) was designed. CSMIN provides two disjoint paths to guarantee one fault-tolerant and can dynamically reroute packets between these two paths to solve the collision situation. A CSMIN of size N consists of (log2 N + 1) stages labeled from 0 to (log2 N ). In this topology, the switch architecture at the first and the last stage has 2 × 4 and 3 × 2 small-size crossbars, respectively. Also, switches located at stage 1 have 3 × 3 crossbars. Moreover, each switch located at the intermediate stage has a 4 × 4 crossbar switch. In [26], to eliminate the backtracking penalties of the CSMIN, a new design called Fault-tolerant Fully-Chained Combining Switches Multi-stage Interconnection Network (FCSMIN) has been proposed. The FCSMIN has multiple paths between any source-destination pair to provide better fault-tolerance capability. The FCSMIN changes one of the original non-straight links of CSMIN at stage 1 to (log2 N − 1) to a chained link. A FCSMIN of size N consists of (log2 N + 1) stages labeled from 0 to (log2 N ). Similar to the CSMIN, all switching elements used in FCSMIN are crossbar networks of small sizes. The first stage of FCSMIN is similar to CSMIN having 2 × 4 crossbar switches. For stages 1 to (log2 N − 1), each switch of FCSMIN is augmented with a chaining links. 3 × 3 crossbar switches replace the switches at intermediate stages. It also removed either of the non-straight links between the last two stages so that the final stage has 2 × 1 crossbar switches. A new class of fault-tolerant MINs called extra group networks (EGN) has been introduced in [27]. An EGN of size N has N ) in the intermediate stages of 2 × 2 one m × l multiplexer in the input stage, log2 ( m N ) crossbar switches, and one 1×m demultiplexer in the output stage. There are ( N2 + 2m N switches in each of the intermediate stages, (N + m ) multiplexers in the input stage N N ) demultiplexers in the output stage. Each unique path network of size m and (N + m plus its associated multiplexers and demultiplexers called a group. Therefore, similar to previous works, the EGN is also a MIN consisting of small-size crossbar networks. In order to further improve fault-tolerance and reliability in the EGN, A new MIN topology named improved extra group network (IEGN) is proposed in [20]. Similar to EGN, the IEGN is also a MIN with small-size crossbar networks as switching elements. The IEGN is an extra group network (EGN) with additional auxiliary links. Adding some auxiliary links increases the size of crossbar switches from 2 × 2 to 3 × 3. The auxiliary links help enhance fault-tolerant capability and keep a better level of performance even in the presence of faults. Generally, an IEGN of size N × N has one N ) stages (intermediate stages) of 3 × 3 m × l multiplexer stage (input stage), log2 ( m N ) crossbar switches, and one l×m demultiplexer stage (output stage). There are ( N2 + 2m N crossbar switches in each of the intermediate stages, (N + m ) multiplexers in the input N ) demultiplexers in the output stage. Reference [28] proposed a new stage and (N + m architectural concept called HASIN (hierarchical adaptive switching interconnection network). The HASIN network topology uses crossbars switch in the local level and a mesh topology in the global level. In this work, the power consumption is reduced since

123

Scalable crossbar network

small crossbar switches are used to compose the clusters. As the crossbars present a simple architecture and do not require buffers, the power consumption is much smaller than conventional router architecture. This hierarchical topology not only reduces the number of hops and explores the communication locality, but is also able to provide low power consumption. Reference [29] is an effort to improve reliability and fault-tolerance of banyan-type networks such as shuffle-exchange network (SEN) by introducing a new topology, called the augmented shuffle-exchange network (ASEN) consisting of crossbar switches of small sizes. The ASEN is a SEN with one less stage, additional intrastage links called auxiliary links, multiplexers, demultiplexers, and a slightly more complex switching element. An ASEN of size N × N consists of ((log2 N ) − 1) stages of ( N2 ) switching elements. The switches in the final stage are 2 × 2 crossbar switches and the remaining switches in stages 1 through ((log2 N ) − 2) are 3 × 3 crossbar switches. There is one 2 × 1 multiplexer for each input link of a switch in the stage 1 and one 1 × 2 demultiplexer for each output link of a switch in the stage ((log2 N ) − 1). Therefore, an ASEN of size N × N has N multiplexers in the input stage and N demultiplexers in the output stage. The network complexity (defined as the number of 2 × 2 switching elements) of an N × N ASEN is given by 3 [( 3N 2 )(1 + 4 ((log2 N ) − 2))]. Reference [33] introduces a class of fault-tolerant MINs named as Augmented Baseline Networks (ABNs). An ABN of size N × N consists of two identical groups of N2 sources and N2 destinations. The switching elements in the final stage are 2 × 2 crossbar switches and the remaining switches in stages 1 through ((log2 N ) − 3) are 3 × 3 crossbar switches. Each source is linked to both groups via multiplexers. There is one 4 × 1 multiplexer for each input link of a switch in the stage 1 and one 1 × 2 demultiplexer for each output link of a switch in stage ((log2 N ) − 2). In each stage, the crossbar switches can be grouped into conjugate subsets, where each one is composed of all switches in a particular stage that leads to the same subset of destinations. These switches communicate through the auxiliary links, form a conjugate loop. The conjugate loops are formed in such a way that the two switches which form a loop, have their respective conjugate switches in a different loop. This pair of loops is called conjugate loops. The network complexity 16 of an N × N ABN is equal to [( 9N 8 )( 9 + ((log2 N ) − 3))]. Another type of MINs are replicated MINs [20,39]. Replicated MINs enlarge banyan-type MINs by replicating them L times. The resulting MINs are arranged in L layers. An L-layer replicated MIN of size N × N consists of (log2 N ) stages of ( L×N 2 ) switching elements. Typically, all switching elements are small-size crossbar switches of size 2 × 2. Packets are received by the inputs of the network and distributed to the layers. There is one 1 × L demultiplexer for any input before stage 1. In addition, there was one L ×1 multiplexer for L output links of L switching layers in stage (log2 N ), which are connected to each output node. Therefore L-layer replicated MINs of size N × N has N demultiplexers in the input stage and N multiplexers in the output stage. The network complexity of an N × N L-layer replicated MIN is [( L×N 4 )(1 + 2(log2 N ))]. In contrast to the banyan-type MINs, replicated MINs offer better performance in terms of reliability and multicasting because multiple paths exist for a source-destination pair. Almost all kinds of topologies described above are of multistage interconnection networks. Since all these topologies are made of small size crossbar switches which in turn are implemented using a single chip, these topologies can greatly satisfies the

123

F. Bistouni, M. Jahanshahi

scalability problem. However, in these topologies efficient addressing the fundamental blocking problem is left. In continue, we present the arguments on this issue: The MINs can be classified mainly into two categories: (1) Single-path (banyantype) MINs. (2) Multi-path MINs. In the single-path MINs, there is only one path between each source-destination pair, minimizing the number of switches and stages. Therefore, a connection between a free source-destination pair is not always possible because of conflicts with the existing connections. These networks are also known as blocking MINs. The second type of networks, the multi-path MINs can provide multiple paths between each source-destination pair. These networks are also known as fault-tolerant MINs. In the fault-tolerant MINs, it is possible to provide multiple paths to reduce conflicts and increase fault-tolerance compared with the single-path MINs. However, most of the fault-tolerant MINs are not able to handle all conflicts yet to create a non-blocking state in the network. Therefore, most of these networks are also known as blocking MINs. However, there is a hope to solve the blocking problem by using two specific classes of fault-tolerant MINs: (1) Rearrangeable non-blocking (or simply rearrangeable) MINs such as Benes network [43] and (2n−1)-stage shuffleexchange networks (n = log2 N ) [40–42]. (2) Non-blocking Clos network [44]. A rearrangeable MIN is always capable of connecting all free sources to free destinations in a permutation request, but to accomplish this in some scenarios the existing connections may be rearranged which is called rearrangeable non-blocking. Although the rearrangeable MINs are theoretically capable of creating a non-blocking mode on network, in practice, there are some underlying issues that make these networks not to be a good candidate for solving the blocking problem. These issues are as follows: (a) In the case of rearrangeable networks, it is possible that reorganizing connections is not acceptable as applications cannot be interrupted [45]. (b) Rearrangeable networks require a central controller to rearrange connections and were proposed for array processors. Also, connections cannot be easily rearranged on multiprocessors because processors access the network asynchronously. So, rearrangeable networks behave like blocking networks when accesses are asynchronous [10]. A network is non-blocking if any permutation can be set up, without the need to reroute (or rearrange) any of the connections that are already set up. Therefore, if any free source can be connected to any free destination without altering the path taken by any other traffic, then the network is non-blocking. The best-known example of a nonblocking MIN is the Clos network. The Clos network is a three-stage network (Clos networks with any odd number of stages can be derived recursively from the three-stage Clos by replacing the switches of the middle stage with three-stage Clos networks) in which each stage is composed of a number of crossbar switches. A symmetric Clos is characterized by a triple, (m, n, r ) where m is the number of middle-stage crossbar switches, n is the number of input (output) ports on each switch in the first stage (last stage), and r is the number of crossbar switches in each first and last stages. In a Clos network, each middle stage switch has one input link from every switch in first stage and one output link to every switch in last stage. Thus, the r first stage switches are n × m crossbars to connect n input ports to m middle switches, the m middle switches are r × r crossbars to connect r first stage switches to r last stage switches, and the r last stage switches are m × n crossbars to connect m middle switches to n output ports. Although the Clos network can show non-blocking feature, it suffers from some

123

Scalable crossbar network

issues which makes it not to be a good candidate for solving the blocking problem. These issues are as follows: (a) It is proved that a Clos network is non-blocking if (m ≥ 2n − 1) [14,46]. Therefore, only under some circumstances, it can solve the blocking problem, thus it suffers from some limitations. (b) Usually it needs a suitable mechanism or control for assigning the connections. Also, the mechanism or control in Clos network is too complex [14,30,45–48]. In routing a circuit in a Clos network, the only free decision is at the first stage switch, where any of the m middle switches can be chosen as long as the link to that middle switch is available. The middle switches must choose a single link to the output switch (and the route is not possible if this link is busy). Similarly, the last stage switch must choose the selected output port. Therefore, the problem of routing in a Clos network is the problem of assigning each circuit (or packet) to a middle switch. In total, according to the arguments made in this sub-section, it can be concluded that the MINs are able to solve the scalability problem existing in the crossbar network and can also provide parameters such as fault-tolerance. However, these networks cannot appropriately cope with the blocking problem.

2.2 Using small-size crossbar networks to build large-sized crossbar networks In this case, the small size crossbar networks are used as switching elements to build large-scale crossbar networks. By exploiting this technique, first, the blocking problem can easily be solved, because as previously mentioned, it has been proven that crossbar networks are strictly non-blocking network. Second, the scalability problem can be solved using this method. Although the number of pins on a VLSI chip cannot exceed a few hundreds, large crossbars can be realized by partitioning them into smaller crossbars, each one implemented using a single chip. Therefore, this technique is much more efficient approach than the one discussed in Sect. 2.1. Now, the question that arises here is whether previous designed topologies are based on this approach? To the best of our knowledge, although some ideas have been proposed in this case [10,14], the number of practical solutions undertaken in this field is almost zero. In other words, less practical efforts has been done to implement this approach compared to the first approach. A multistage implementation of crossbar architecture called multistage crossbar network (MCN), consisting of small-size crossbar networks as switching elements, is rare examples of the efforts [45], which will be introduced in continue. Figure 3 shows a MCN of size 4 × 4, which is built using a number of 2 × 2 crossbar switches. In general, an N ×N MCN can be realized with (N 2 ) 2 × 2 crossbar switches. This type of network can provide multiple paths for some source-destination pairs. Also, unlike most networks, in this topology, the path length (defined as the number of switching elements between a source-destination pair) between different sourcedestination pairs is not identical. In this network, the path length can vary between 1 and (2N − 1) switching elements. Unlike the typical crossbar network (Fig. 1), whose port size is limited by pin count, such crossbar-based networks are useful to build large crossbar networks, promoting scalability due to exploitation of small-size crossbar switches as switching elements.

123

F. Bistouni, M. Jahanshahi Fig. 3 A MCN of size 4 × 4

Although this structure can satisfy the scalability parameter, it has a major disadvantage compared to typical crossbar network, higher hardware cost. Cost of an interconnection network can be calculated according to the number of crosspoints within a switch [20,33,39,47]. Therefore, since there are (N 2 ) crosspoints on a crossbar network, its cost is equal to (N 2 ). However, since the MCN has (N 2 ) crossbar switches of size 2 × 2, its cost is equal to (4N 2 ). In other words, The MCN is four times more expensive than the typical crossbar network, which is non-negligible, especially in large-scale systems. According to the arguments made in this sub-section, it can be concluded that the approach of using small-size crossbar networks to build large-size crossbar networks is more appropriate technique to design the scalable non-blocking topologies, compared to the first approach (described in Sect. 2.1). However, as mentioned before, so far, little works have been done to exploit this approach. Also, in the case of MCN which is a network built on the basis of this approach, although it can solve the problems of scalability and blocking, it imposes a higher hardware cost than the typical crossbar network. Therefore, our motivation in this paper is to provide a new interconnection topology based on this approach, named scalable crossbar network (SCN) that meets the following main requirements: (1) It is non-blocking. (2) It is made up of small-size crossbar switches in order to solve the problem of limitation on the number of pins on a single VLSI chip. (3) It does not impose a higher hardware cost than the typical crossbar network. As will be discussed in Sect. 3, the SCN can meet all these needs. In addition, it has an efficient routing mechanism that is fast, affordable, and self-routing. Also, the performance analysis done in Sect. 4 will show that the SCN has a very good performance in terms of various key parameters such as terminal reliability, mean time to failure, and system failure rate compared to various interconnection networks such as SEN, SEN+, Benes network, replicated MIN, multilayer MINs, and MCN.

123

Scalable crossbar network

3 Scalable crossbar network (SCN) A typical crossbar network (shown in Fig. 1) can be seen as a network that contains only one switching element. In other words, there is only one crossbar switch between each source-destination pair in a typical crossbar network. This structure can bring great benefits to a topology: Despite having only one switching element between each source-destination pair it increases transmission speed between the nodes. In other words, the path length which has a direct relationship with latency is always equal to 1. Also, non-blocking state for each permutation of connections can be guaranteed, because the “permutation” defined as a request for parallel connections of every N sources to their N corresponding distinct destinations. In addition, unlike the MCN in which there are large number of switches involved in the cost, hardware cost of the network is just equal to the number of crosspoints in a single switch. As a result, the cost of such a network is lower than the cost of MCN. Despite the above advantages, a typical single-switch crossbar network suffers from a major problem that is the problem of scalability in the number of pins on a VLSI chip, which leads to the network size limitation problem in a network. Given the above arguments, using only one switching element between each sourcedestination pair achieves many advantages, especially in non-blocking mode. Therefore, we will utilize this idea to design a new non-blocking topology, SCN. However, as noted, we are faced a major problem, scalability. To deal with this engineering problem, we will use a number of small-size crossbar switches rather than a single large-size switch so that each switch can support a certain group of sources and destinations. Therefore, in this new structure, we need a group of resources (such as switching elements and links) in order to assign them to different nodes. In other words, to meet basic objectives, such as non-blocking, scalability, and low cost, the new topology is a combination of several methods, as follows: (1) Similar to typical crossbar network, there is only one switch between each source-destination pair. (2) A number of small size crossbar switches are used as switching elements. (3) In this structure, network resources are grouped to fairly allocate them to different nodes, facilitating the routing mechanism, and also keeping only one switch between each source-destination pair. The aforementioned first two methods have already been used in literature; the first method in the crossbar network and the second one in networks such as MINs and MCN. However, to our best knowledge, the third method is innovative and has not been seen in any of the previous works for the design of non-blocking networks. In addition, other creative works done here is combination of these three methods. In continue, we will become more familiar with the topological structure of the SCN. Figure 4 shows a SCN of size 8 × 8, which is built using a number of 2 × 2 crossbar switches (for better understanding, connections to the source 0 is highlighted). An N × N SCN network requires ( CN ) switching groups, each group containing ( CN ) crossbar switches of size C × C. For instance, with (N = 8) and (C = 2) (Fig. 4), a 8 × 8 SCN requires four switching groups, each group contains four crossbar switches of size 2 × 2. The groups are labeled as G i , i = 1, 2, . . . , ( CN ) and the switching elements are labeled as SEi, j , where i represents the group number and i = 1, 2, . . . , ( CN ) and j represents the switch number and j = 1, 2, . . . , ( CN ). In this network, each

123

F. Bistouni, M. Jahanshahi Fig. 4 A SCN of size 8 × 8

source is connected to one switch in each group. Therefore, each source is connected to ( CN ) switch. For example, in Fig. 4, the source 000 (0) is connected to four switches SE1,1 , SE2,1 , SE3,1 , and SE4,1 . Also, each of these switches is connected to two separate destinations from other switches, SE1,1 is connected to destinations 000 and 001, SE2,1 is connected to destinations 010 and 011, SE3,1 is connected to destinations 100 and 101, and SE4,1 is connected to destinations 110 and 111. In other words, each switching group will support (C) destinations; all these switching groups together can cover all network destinations. Therefore, the SCN is designed such that there

123

Scalable crossbar network

is only one intermediate switch between each source-destination pair. Moreover, this network is designed in such a way that each switch of size C × C is only under traffic of (C) sources. Since it is always assumed that the destination for none of the sources is not equal at the same time in a permutation of connections, all (C) sources can be connected easily without collision by C × C crossbar switches to their destinations. Therefore, the SCN eliminates the possibility of blocking and with this structure, we can achieve our main goal, namely to design a non-blocking network. On the other hand, the SCN is a network made of small size crossbar switches. As a result, the scalability problem is solved by the adoption of the technique. In the past, both of these features (i.e., non-blocking and scalability) were present in the MCN. However, as discussed in Sect. 2, the main problem was its higher hardware cost compared with typical crossbar network. Now, a question arises here is that what the cost of SCN is? As discussed in Sect. 2, the cost of a network can be calculated by taking the number of crosspoints within a switching element and by the number of switching elements within the network [20,33,39,45,47] into account. Therefore, cost of two networks of crossbar and MCN is equal to (N 2 ) and (4N 2 ), respectively. On the other hand, since the SCN is comprised of ( CN ) switching groups and there are ( CN ) switches of 2

size C × C in each group, total number of switches is equal to ( CN 2 ). Also, since these

) = N 2 . Therefore, the switches are of size C × C, the cost of SCN is equal to ( N C×C 2 cost of SCN is four times less than the MCN, and it is equal to the cost of the crossbar network. Routing for SCN can be expressed as self-routing. In self-routing procedure, the switches examine the destinations of their input data and set themselves. No central routing hardware is needed [20,49,50]. Routing tag consists of binary digits that control the connection through different switching groups from input to the output. Let the source S and destination D be represented in binary as S = sn . . . s1 and D = dn . . . d1 , where n = log2 N . The routing for SCN will include two phases: (1) Determine the switching group number. (2) Determine the switch state (straight or exchange). To send a message from a source to a destination in the SCN, firstly, it is necessary to specify the switching group number (GN) that the destination is located on it. This can be calculated according to destination tag bits as follows: 2

⎛ GN = ⎝

(log2 N )−2



2

⎞ di+2 (2)i ⎠ + 1

i=0

For example, consider the destination 110 (d 3 = 1, d2 = 1, d1 = 0), the group number 1 di+2 (2)i ) + 1 = (d2 (2)0 + d3 (2)1 ) for this destination is calculated as GN = ( i=0 + 1 = (1 + 2) + 1 = 4. After determining the group number, the next step is to specify the switch state. The switch state specifies that the input message to the switch should be sent to the upper output or lower output. If the incoming message is sent to the same output port with the input port of the switch, then the state is called straight. Otherwise, the state is exchange. These two modes are shown in Fig. 5, assuming both input ports

123

F. Bistouni, M. Jahanshahi Fig. 5 States of switching elements

Table 1 The routing values for source 000

Source

Destinations

Group number

(s1 ⊕ d1 )

Switch state

000

000

1

0

Straight

001

1

1

Exchange

010

2

0

Straight

011

2

1

Exchange

100

3

0

Straight

101

3

1

Exchange

110

4

0

Straight

111

4

1

Exchange

are working. Let the upper input and output lines be labeled i and the lower input and output lines be labeled j. (1) Straight-input i to output i, input j to output j; (2) Exchange-input i to output j, input j to output i. The switch state (SS) in the SCN can be obtained by using the source and destination tag bits, as follows:  SS =

Straight, s1 ⊕ d1 = 0 Exchange, s1 ⊕ d1 = 1

For instance, consider the source 101 (s3 = 1, s2 = 0, s1= 1) and destination 1 di+2 (2)i ) + 1 = 100 (d3 = 1, d2 = 0, d1 = 0) then we have: GN = ( i=0 0 1 (d2 (2) + d3 (2) ) + 1 = (0 + 2) + 1 = 3, so the source will be attached to the third switching group and since s1 ⊕ d1 = 1 ⊕ 0 = 1 so the switch state is exchange. To better appreciate this, the routing values for source 000 and all destinations are summarized in Table 1. Also, for further

discussion, the routing values to the permutation P = 01234567 are as follows: 13572460 1 di+2 (2)i )+1 = (d2 (2)0 + d3 (2)1 )+ Source 000 and destination 001:GN = ( i=0 =1 1 = (0 + 0) + 1 = 1 and s1 ⊕ d1 = 0 ⊕ 1  1 di+2 (2)i )+1 = (d2 (2)0 + d3 (2)1 )+ Source 001 and destination 011: GN = ( i=0 =0 1 = (1 + 0) + 1 = 2 and s1 ⊕ d1 = 1 ⊕ 1  1 di+2 (2)i )+1 = (d2 (2)0 + d3 (2)1 )+ Source 010 and destination 101: GN = ( i=0 =1 1 = (0 + 2) + 1 = 3 and s1 ⊕ d1 = 0 ⊕ 1  1 di+2 (2)i )+1 = (d2 (2)0 + d3 (2)1 )+ Source 011 and destination 111: GN = ( i=0 1 = (1 + 2) + 1 = 4 and s1 ⊕ d1 = 1 ⊕ 1 = 0

123

Scalable crossbar network

1 Source 100 and destination 010: GN = ( i=0 di+2 (2)i )+1 = (d2 (2)0 + d3 (2)1 )+ =0 1 = (1 + 0) + 1 = 2 and s1 ⊕ d1 = 0 ⊕ 0  1 di+2 (2)i )+1 = (d2 (2)0 + d3 (2)1 )+ Source 101 and destination 100: GN = ( i=0 =1 1 = (0 + 2) + 1 = 3 and s1 ⊕ d1 = 1 ⊕ 0  1 di+2 (2)i )+1 = (d2 (2)0 + d3 (2)1 )+ Source 110 and destination 110: GN = ( i=0 =0 1 = (1 + 2) + 1 = 4 and s1 ⊕ d1 = 0 ⊕ 0  1 di+2 (2)i )+1 = (d2 (2)0 + d3 (2)1 )+ Source 111 and destination 000: GN = ( i=0 1 = (0 + 0) + 1 = 1 and s1 ⊕ d1 = 1 ⊕ 0 = 1

4 Performance analysis In this section, performance of the SCN compared to known networks, namely, SEN, SEN+, Benes network, two-layer replicated MIN, multilayer MIN 1248, multilayer MIN 1888 (the digits of the legend refer to the number of layers at stage 1, stage 2, etc.; also, the parameters of start replication factor G S , growth factor CF , and layer limit factor G L will be defined for each network separately as follows: network 1248: G S = 2, G F = 2, and G L = 8 and network 1888: G S = 2, G F = 8, and G L = 8.), and MCN will be evaluated. These networks cover a wide range of types of topologies. That is why we choose them to compare with. The SEN network is a blocking network. The SEN+ is a fault-tolerance network. The Benes network is a rearrangeable network. The replicated MIN is a network with a certain structure and high efficiency. Also, based on [39], it has been proven that both multilayer networks 1248 and 1888 present an appropriate performance. Moreover, the MCN is a non-blocking network. Generally, reliability is defined by the IEEE as “the ability of a system or component to perform its required functions under stated conditions for a specified period of time” [51]. Therefore, in the domain of interconnection networks, many researchers have been convinced that it is the most immediate parameter for each efficient network topology [20,24,29,31–35,52–56]. In addition, reliability analysis is a mathematical description of a system and can give exact information about the performance of the system. An interconnection network should be able to deliver information reliably. Interconnection networks can be designed for continuous operation in the presence of a limited number of faults. In other words, in an interconnection network, reliability is a measure of how often the network correctly performs the task of delivering messages. In most situations, there is a need to deliver messages 100 % of time without loss. A network can be defined as a collection of nodes and links (which are known as vertices and edges in graph theory, respectively) in which some particular nodes are called terminals [57,58]. On the other hand, the reliability of a network is defined as the connectivity probability of certain set of terminal nodes with each other. This connection can be achieved with at least one fault-free path between the nodes. If this connection is achieved, then the network is in state of up, otherwise it is in state of down [20,32,35,57,59–62]. However, the connectivity analysis is very challenging in the case of complex networks. Complex networks are consisting of multiple source and destination nodes, complex topology, interdependencies at the component and system levels, and uncertainties in actual conditions of network components and deterioration models [59,60]. According to this definition, lifeline networks such as electrical and

123

F. Bistouni, M. Jahanshahi

gas networks [59,60,63], wireless mobile ad hoc networks (MANETs) [64], wireless mesh networks [65–68], wireless sensor networks [69,70], sensors based on nanowire networks [71], social networks [72], stochastic-flow manufacturing networks (SMNs) [73], and interconnection networks [10,14,20,32,35] are known as complex network systems from the viewpoint of reliability. According to the reported researches, reliability investigation of the complex networks can be accomplished by simulation or analytical models. Although simulationbased approaches are easily implemented, there are some restrictions to their effectiveness. For instance, the number of performed simulations should be large enough to provide a comprehensive study which can be extremely time-consuming. Furthermore, simulation presents a small range of results compared to the analytical methods. Clearly, analytical methods have been avoided due to their complexity in favor of the simplicity of using simulation. Using reliability equations, analytical methods have been developed to present an exact solution for computing the reliability of a system. Therefore, the time-consuming calculations and the non-repeatability issue of the simulation methodology should be eliminated. Given the reliability equation for a system, further analyses on the system such as computing exact values of the reliability, failure rate at specific points in time, computation of the system MTTF (mean time to failure) can be performed. In addition, reliability optimization techniques can be utilized to promote design improvement efforts. Given the above arguments, it can be concluded that reliability is a key parameter in network performance. Also, analytical methods in reliability analysis should be developed to present an exact solution for computing the reliability of a system. Therefore, the reliability parameter will be studied carefully in this paper by the analytical method. On the other hand, an important measure of reliability, which is of interest to many researchers, is the terminal reliability [20,24,31,34,54,74]. As a result, our focus in this paper is on analyzing the terminal reliability. Another important metric that we should investigate is the time that a system is available, often referred to as “uptime” in the IT industry. The length of time that a system is online between outages or failures can be thought of as the “time to failure” for that system. The mean time to failure (MTTF) is the average of the time to failure or in other words, the MTTF is the expected value of the time to failure. Therefore, due to crucial nature of this parameter, it also will be analyzed in this paper as one of the most important performance metrics. In many cases, the primary objective in system performance analysis is to obtain a failure distribution of the entire system based on the failure distribution of its components. The parameter that can be used to study these cases is system failure rate. However, almost in none of the previous works this parameter has been investigated. Therefore, for a deeper analysis of the performance of the networks, this important parameter will be analyzed as well. Moreover, the parameter that can be used in assessment of the MINs performance in terms of cost, is the cost-effectiveness parameter that in the most reported works [4,27,32,33,35] has been emphasized. Therefore, we will discuss the parameter to a comprehensive review of the hardware costs of the networks. Here, the switch fault model will be used for reliability analysis of the MINs therefore; it will be assumed that each switching component (i.e. switching elements, mul-

123

Scalable crossbar network

tiplexers, and demultiplexers) may fail. In addition, the Weibull distribution is one of the most commonly used distributions in reliability. Hence, we assume that the time-to-failure of the switching components are described with a Weibull distribution with three parameters of lifetime variable t, characteristic life or scale parameter η, and slope or shape parameter β. 4.1 Mathematical analyses The terminal reliability, denoted R(t), is defined as the probability of successful communication between a source-destination pair. In this paper, we assume that the r (t) is the probability of a 2 × 2 switching element (SE2×2 ) being operational. Also, given the number of gates in switching components of different sizes, their operational probability can be generated based on r (t) [4,32,33]. It is also assumed that the hardware complexity of a component is directly proportional to the number of gates [4,33]. In the SCN, there is only one switching element between each source-destination pair. Therefore, we have: (1) RSCN (t) = r (t) Also, for the SEN and SEN+, we have: RSEN (t) = r (t)(log2 N )

(2)

RSEN+ (t) = r (t)2 (1 − (1 − r (t)((log2 N )−1) )2 )

(3)

For the 8 × 8 Benes network, terminal reliability is given by: R8×8 Benes (t) = r (t)2 (1 − (1 − (r (t)2 (1 − (1 − r (t))2 )))2 )

(4)

Terminal reliability of the N × N Benes network is calculated as follows: R N ×N

Benes (t)

= r (t)2 (1 − ((1 − (R N × N Benes (t)))2 )) 2

2

(5)

Also, for the two-layer replicated MIN and multilayer MINs, we have: Rreplicated (t) = r (t)(1 − (1 − r (t)(log2 N ) )2 )

(6)

Rnetwork1248 (t) = r (t)4 (1 − (1 − (r (t)2 (1 − (1 − (r (t)2 ×(1 − (1 − r (t)((log2 N )−3) )2 )))2 )))2 )

(7)

Rnetwork1888 (t) = r (t)10 (1 − (1 − r (t)((log2 N )−1) )8 )

(8)

In the case of the MCN, as discussed in Sect. 2, in this topology, the path length (defined as the number of switching elements between a source-destination pair) between different source-destination pairs is not identical. In this network, the path length can vary between 1 and (2N − 1) switching elements. This makes the reliability vary between different sources and destinations. To solve this, we will consider an average

123

F. Bistouni, M. Jahanshahi

path length between any source-destination pair. In other words, we will discuss a set of the source-destination pairs such that the path length between them equals to (2N −1)+1 = N . However, even with this assumption, two different cases occur for 2 terminal reliability analysis. We first calculate both samples, and then we calculate the average of these two. These two samples are as follows: RMCN (t) = r (t) N

(9)

RMCN (t) = r (t)(r (t)2 (1 − (1 − r (t)(N −3) )2 )) + (1 − r (t))r (t) N

(10)

Now, according to Eqs. (9) and (10), the average terminal reliability for MCN is given by equation (11). RMCN (t) =

r (t) N + r (t)(r (t)2 (1 − (1 − r (t)(N −3) )2 )) + (1 − r (t))r (t) N 2

(11)

As previously mentioned, it is assumed that the times-to-failures of the switching components are described using Weibull life distribution. Therefore, we have: RSCN (t) = e

−( ηt )β

RSEN (t) = e

−(log2 N )( ηt )β

(12)

RSEN+ (t) = e

−2( ηt )β

R8×8 Benes (t) = e

−2( ηt )β

Benes (t)

−2( ηt )β

R N ×N

=e

Rreplicated (t) = e Rnetwork1248 (t) = e

(1 − (1 − e

(1 − (1 − (e

(1 − (1 − e

(14)

−( ηt )β 2

) ))) ) 2

(15)

(1 − ((1 − (R N × N Benes (t))) )) 2

−( ηt )β

(1 − (1 − e

(16)

2

−(log2 N )×( ηt )β 2

) )

(17)

−4( ηt )β

−10( ηt )β

e

RMCN (t) =

) )

−2( ηt )β

2

×(1 − (1 − (e Rnetwork1888 (t) = e

(13) −((log2 N )−1)( ηt )β 2

−N ( ηt )β

−2( ηt )β

(1 − (1 − e +e

−( ηt )β

(1 − (1 − (e

−2( ηt )β

(1 − (1 − e

−((log2 N )−3)( ηt )β 2

) )))2 )))2 )

−((log2 N )−1)( ηt )β 8

(e

) )

(−2)( ηt )β

(18) (19)

(−(N −3))( ηt )β 2 −( t )β (−N )( ηt )β (1 − (1 − e ) )) + (1 − e η )e

2

(20) The MTTF is calculated by the following equation:



MTTF =

R(t)dt

(21)

0

Therefore, the MTTF of the networks is given by the following equations: MTTFSCN =



(e

−( ηt )β

(e

−(log2 N )( ηt )β

(e

−2( ηt )β

)dt

(22)

0

MTTFSEN =



)dt

(23)

0

MTTFSEN+ =

0

123



(1 − (1 − e

−((log2 N )−1)( ηt )β 2

) ))dt

(24)

Scalable crossbar network MTTF8×8 Benes =



(e

−2( ηt )β

(e

−2( ηt )β

(e

−( ηt )β

(1 − (1 − (e

−2( ηt )β

(1 − (1 − e

−( ηt )β 2

) )))2 ))dt

(25)

0

MTTF N ×N

Benes

=



MTTFreplicated =



(1 − ((1 − (R N × N Benes (t)))2 )))dt 2

0

(1 − (1 − e

(26)

2

−(log2 N )( ηt )β

)2 ))dt

(27)

0

t β t β t β t β t β t β ∞ e−(N ( η )) + e−( η ) (e(−2)( η ) (1−(1−e(−(N −3))( η ) )2 )) + (1−e−( η ) )e(−N )( η ) = dt 2 0

MTTFMCN

MTTFnetwork1248 =

(28) ∞

(e

−4( ηt )β

(1−(1−(e

−2( ηt )β

(1−(1−(e

−2( ηt )β

0 −((log2 N )−3)( ηt )β

MTTFnetwork1888

×(1 − (1 − e )2 )))2 )))2 ))dt ∞ −10( ηt )β −((log2 N )−1)( ηt )β 8 = (e (1 − (1 − e ) ))dt

(29) (30)

0

Moreover, the cost-effectiveness (CE) parameter is given by equation (31) [4,27,32, 33,35]. ∫∞ R(t)dt Mean time to failure = 0 (31) CE = Cost Cost According to Eq. (31), we have: CESCN = CESEN =

CESEN+ =

∫∞ 0 (e

−( ηt )β

)dt

(32)

N2 −(log2 N )( ηt )β ∫∞ )dt 0 (e

(33)

2N (log2 N )

∫∞ 0 (e

−2( ηt )β

(1 − (1 − e

−((log2 N )−1)( ηt )β 2 ) ))dt

(34)

2N (log2 N + 1) −2( ηt )β ∞ ∫0 (e (1 − ((1 − (R N N (t)))2 )))dt 2 × 2 Benes CE N ×N Benes = 2N (2(log2 N ) − 1) t )β −( −(log2 N )( ηt )β 2 ∫∞ (e η (1 − (1 − e ) ))dt CEreplicated = 0 4N (log2 N + 1) ⎛ ⎞ (−(N −3))( ηt )β 2 −( ηt )β (−N )( ηt )β −(N ( ηt ))β −( ηt )β (−2)( ηt )β +e (e (1−(1−e ) ))+(1−e )e e ∞ ⎠ dt ∫0 ⎝ 2

(35) (36)

CEMCN =

4N 2

(37) CEnetwork1248 =

∫∞ 0 (e

−4( ηt )β

(1 − (1 − (e

−2( ηt )β

(1 − (1 − (e

−2( ηt )β

−((log2 N )−3)( ηt )β 2 2 2 (1 − (1 − e ) ))) ))) ))dt

36N + (16N (log2 N − 3))

(38) −10( ηt )β −((log2 N )−1)( ηt )β 8 ∫∞ (e (1 − (1 − e ) ))dt CEnetwork1888 = 0 24N + (16N (log2 N − 1))

(39)

On the other hand, the system failure rate, denoted λ, can be computed by the following equation [75–77]. 1 d(R(t)) (40) λ=− R(t) dt

123

F. Bistouni, M. Jahanshahi

According to Eq. (40), we have: ⎛ − ⎝− λSCN = ⎛

e

 β−1 ⎞ β ηt ⎠ ( t )β ηe η −( ηt )β

 β−1 β ηt η  β−1 ⎞

(41)

=

β log2 (N ) ηt ⎠  β−1 log (N )( ηt )β β log2 (N ) ηt ηe 2 λSEN = = η (−(log2 (N )))( ηt )β e ⎛ ⎛ ⎛ ⎞2 ⎞  β−1 ⎜ ⎝ 1 ⎠ +1⎟ ⎜ 2β ηt +1 − − ⎠ ⎝ ⎜ (log2 (N )−1)( ηt )β ⎜ e ⎜− t β ⎜ 2( ) −⎜ ηe η ⎞ ⎛ ⎜ ⎜  β−1 (− log (N ))( t )β −( t )β ⎜ t 1 2 η η ⎝− ⎠ +1 2β(log (N )−1) e ⎝ 2 η (log2 (N )−1)( ηt )β e − η λSEN+ = (−2)( ηt )β (−(log2 (N )−1))( ηt )β 2 e (1 − (1 − e ) ) ⎛ ⎛ ⎛ ⎞2 ⎞  β−1 ⎟ ⎜ ⎝ 1 ⎜ 2β ηt +1⎠ +1⎠ ⎝− − ⎜ (log2 (N )−1)( ηt )β ⎜ e ⎜ 2( t )β ⎜ 2( t )β e η ⎜ ηe η ⎛ ⎜ ⎜  β−1 (− log (N ))( t )β −( t )β ⎜ 1 2 η η ⎝− 2β(log2 (N )−1) ηt e ⎝ (log2 (N )−1)( ηt )β e + η =

2 1 − − + 1 +1 (log2 (N )−1)( ηt )β e ⎛  β−1  β−1  β−1  β−1  β−1 ⎞ 10β ηt 12β ηt 32β ηt 20β ηt 36β ηt ⎠ −⎝ + + − − 10( ηt )β 6( t )β 8( t )β 5( t )β 9( t )β ηe ηe η ηe η ηe η ηe η λ8×8 Benes = (−2)( ηt )β (−2)( ηt )β −( t )β e (1 − (1 − (e (1 − (1 − e η )2 )))2 )

− ⎝−

(42) ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠

⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎞ ⎟ ⎟ ⎠ +1 ⎟ ⎠

⎛  β−1  β−1  β−1  β−1  β−1 ⎞ t 36β ηt 10β ηt 12β ηt 32β ηt 2( ηt )β ⎝ 20β η ⎠ e + − − − 5( t )β 9( t )β 10( ηt )β 6( t )β 8( t )β ηe η ηe η ηe ηe η ηe η =

2 1 2 − − + 1 +1 4( t )β 3( t )β e η e η ⎞ ⎛ ⎞ ⎛ ⎛ ⎞2  β−1 ⎟ ⎜ ⎝ 1 ⎟ ⎜ β ηt +1⎠ +1⎠ ⎝− − t β ⎟ ⎜ log (N )( η ) ⎟ ⎜ e 2 ⎟ ⎜− t )β ⎟ ⎜ ( −⎜ η ⎟ ηe ⎞ ⎟ ⎛ ⎜ ⎟ ⎜  β−1 (− log (N ))( t )β −( t )β ⎜ t 1 2 η η ⎠ ⎝ +1 ⎟ 2β log2 (N ) η e − ⎠ ⎝ log2 (N )( ηt )β e − η λreplicated = −( t )β (−(log2 (N )))( ηt )β 2 e η (1 − (1 − e ) ) ⎛ ⎛ ⎛ ⎞ ⎞2 ⎞  β−1 ⎜ ⎝ 1 ⎠ +1⎟ ⎜ β ηt ⎟ +1 ⎠ ⎝− − ⎜ ⎟ log (N )( ηt )β ⎜ ⎟ e 2 ⎜ ⎟ t t ( η )β ⎜ β ⎟ (η) e ⎜ ⎟ ηe ⎞ ⎟ ⎛ ⎜ ⎜ ⎟  β−1 (− log (N ))( t )β −( t )β ⎜ t 1 2 η η ⎝− +1⎠ ⎟ 2β log2 (N ) η e ⎝ ⎠ log2 (N )( ηt )β e + η =

2 1 − − +1 +1 t β log (N )( η ) e 2

123

(43)

(44)

(45)

Scalable crossbar network ⎛ ⎜ ⎜ ⎜ −⎜ ⎜ ⎜ ⎝

λMCN =

e

 β−1  β−1

+β ηt Nβ ηt 2η

 β−1 3β( t )β−1 (−2)N ( ηt )β +3( ηt )β η e − Nβ ηt 2



(−N )( ηt )β −( ηt )β

+

η



⎟ ⎟ ⎟ ⎟  β−1 ⎟ t ⎟ 2Nβ η ⎠

N ( t )β ηe η t t t t t β β β β β (−N )( η ) −( ) (−2)( η ) (−(N −3))( η ) 2 −( ) (−N )( ηt )β e +e η (e (1−(1−e ) ))+(1−e η )e 2  

β−1  t β−1 (−N )( ηt )β −( ηt )β e Nβ ηt +β η 2η ⎛  β−1 ⎞  β−1 3β ηt (−2)N ( ηt )β +3( ηt )β ⎜ ⎟ e + ⎝(−N )β ηt ⎠ 2



 β−1 2Nβ ηt η N ( t )β ηe η = t t t t β β β β (−N )( η ) −( η ) (−2)N ( η ) +3( η ) 2 −e + −e 2 2 N ( ηt )β e ⎛ ⎛ ⎞8 ⎞ ⎛ ⎟ ⎜ 1 +1⎠ +1⎠ ⎜ 10β( ηt )β−1 ⎝−⎝− ⎜ (log2 (N )−1)( ηt )β e ⎜ ⎜− ⎜ 10( ηt )β −⎜ ηe ⎞7 ⎛ ⎜ ⎜  β−1 (− log (N ))( t )β −9( t )β ⎜ t 1 2 η η ⎠ ⎝ +1 8β(log (N )−1) − e ⎝ 2 η (log2 (N )−1)( ηt )β e − η λnetwork 1888 = (−10)( ηt )β (−(log2 (N )−1))( ηt )β 8 e (1 − (1 − e ) ) ⎛ ⎛ ⎞8 ⎞ ⎛ ⎟ ⎜ 1 +1⎠ +1⎠ ⎜ 10β( ηt )β−1 ⎝−⎝− ⎜ (log2 (N )−1)( ηt )β e ⎜ ⎜ 10( t )β ⎜ 10( ηt )β e η ⎜ ηe ⎛ ⎜ ⎜  β−1 (− log (N ))( t )β −9( t )β ⎜ 1 2 η η ⎝− 8β(log2 (N )−1) ηt e ⎝ (log2 (N )−1)( ηt )β e + η =

8 1 − − + 1 +1 t (log2 (N )−1)( η )β e

+

+

(46) ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠

⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎞7 ⎟ ⎟ ⎟ +1⎠ ⎠

(47)

4.2 Numerical results To obtain numerical results from the equations obtained in the Sect. 4.1, the value of the variable parameters in the equations must be specified. The parameters are as follows: Weibull distribution parameters namely lifetime variable (or operating time) t, characteristic life or scale parameter η, and slope or shape parameter β. Network size parameter (N ) must be specified too. Slope or shape parameter β is usually chosen in the following ranges: β < 1, β = 1, and β > 1 [78,79]. A value of β < 1 indicates that the failure rate (hazard function) decreases over time. This happens if there is significant “infant mortality”, or defective items failing early and the failure rate decreasing over time as the defective items are weeded out of the population. Also, a value of β = 1 indicates that the failure rate is constant over time. This might suggest random external events are causing mortality, or failure. Finally, a value of β > 1 indicates that the failure rate increases with time.

123

F. Bistouni, M. Jahanshahi Fig. 6 The Weibull failure rate for different values of β [80]

Fig. 7 The Weibull pdf for different values of η [80]

This happens if there is an “aging” process, or parts that are more likely to fail as time goes on. In the field of interconnection networks, as the operating time (t) increases, usually the failure probability of network equipments such as switching elements and links increases. Therefore, according to the above description, the β > 1 can be a better option for use in the field of interconnection networks. On the other hand, according to the graphs in Fig. 6, the β = 2 is a reasonable value for this case. In the case of characteristic life or scale parameter η, to determine the appropriate value for this parameter can be noted in the probability density function (pdf). In fact, the pdf represents the relative frequency of failure times as a function of time. The scale parameter is the 63.2 percentile of the data. A scale of 20, for example, indicates that 63.2 % of the equipment will fail in the first 20 h after the threshold time. For a

123

Scalable crossbar network

better understanding, Fig. 7 demonstrates the effect of the scale parameter, η, on the Weibull pdf for two samples β = 1 and β = 2.5. For example, consider the β = 2.5, as is visible in Fig. 7, in the case η = 50, the relative frequency of failure times is higher in early times in comparison with the case η = 100. In other words, by increasing the η, height of pdf curve also decreases. However, by increasing the η, the relative frequency of failure times covered more times. In the field of interconnection networks, it is usually assumed that the relative frequency of failure times will be more distributed at the high operating times. Because of this issue and considering Fig. 7 we will discuss a operating time range (t) from 1,000 to 8,000 h, η = 6,000 which is a reasonable estimate for this study. In addition, we will analyze the results for different network sizes of 8–1,024. The terminal reliability analysis results as a function of time for different network sizes of 8, 128, and 1,024 are summarized in Tables 2, 3, and 4, respectively. According to the results, it is evident that SCN has a tremendous advantage in terms of terminal reliability compared to the networks of SEN, SEN+, Benes network, replicated MIN, network 1248, network 1888, and MCN. An important point here is that the SCN can maintain its supremacy to even larger network sizes. However, the other networks suffer from the problem of decreased terminal reliability in large network sizes. The main reason for this is that the number of switching elements between any source-destination pair in the SCN remains constant even with increasing network size. While in the other networks, the number of switches between any sourcedestination pair increases with the increased size of the network, and hence terminal reliability decreases as a function of network size. In fact, the results reflect the fact that the SCN has a very good competence in providing the terminal reliability even in large-scale system scenarios. According to Eqs. (22)–(30), the MTTF analysis results as a function of network size is shown in Fig. 8. As Fig. 8 demonstrates, the best and the worst results in terms of MTTF are owned by SCN and MCN, respectively. These results indicate that SCN has a quite tangible advantages compared to other networks in terms of MTTF. In other words, the expected value (mean) of SCN’s failure-free operating time is higher than the failure-free operating time of the other networks. In addition, the interesting thing is that SCN could keep the excellence for all network sizes. Indeed, this excellence stems from the fact that SCN’s MTTF is not affected by increasing network size. While, in the other networks, as the network size increases, MTTF also significantly reduced. Therefore, regarding that SCN can also eliminate the blocking problem, the attained results prove that the SCN is a better candidate than other networks for use in systems such as multi-processor systems. On the other hand, according to Eqs. (32)–(39), the cost-effectiveness (CE) analysis results are shown in Fig. 9. As the figure shows, the SCN network performance is quite acceptable in terms of cost-effectiveness, especially in small network sizes. Also, this figure demonstrates that weakest results are owned by MCN, in terms of cost-effectiveness. In other words, although both SCN and MCN networks can provide non-blocking conditions, the MCN performance is very unfavorable compared with the SCN, in terms of cost-effectiveness. In addition, the SCN has the best results in network sizes of 8 and 16 compared with all the networks. On the other hand, it also has the best result in network size of 32, compared with Benes network, replicated MIN, MCN,

123

123

SCN

0.972604

0.894839

0.778801

0.64118

0.499352

0.367879

0.256376

0.169013

Time (h)

1,000

2,000

3,000

4,000

5,000

6,000

7,000

8,000

0.004828

0.016851

0.049787

0.124514

0.263597

0.472367

0.716531

0.920044

SEN

0.001609

0.008357

0.034153

0.108849

0.268543

0.512629

0.768944

0.943197

SEN+

0.000503

0.003806

0.021101

0.084478

0.241762

0.49793

0.766055

0.943124

Benes network

Table 2 Terminal reliability as a function of time for network size 8

0.001628

0.008568

0.116611

0.116611

0.293475

0.561985

0.822935

0.966387

Replicated MIN

0.000001

0.000035

0.000608

0.006707

0.046425

0.198584

0.520346

0.863624

MCN

0.000003

0.000072

0.00123

0.012799

0.078586

0.280497

0.60695

0.891952

Network 1248

3.9359127853401E−9

0.000001

0.000031

0.000867

0.011574

0.082038

0.329192

0.757465

Network 1888

F. Bistouni, M. Jahanshahi

0.256376

0.169013

7,000

8,000

0.64118

4,000

0.499 352

0.778801

3,000

0.367879

0.894839

2,000

5,000

0.972604

1,000

6,000

SCN

Time (h)

0.000004

0.000073

0.000912

0.007 742

0.044551

0.173774

0.459426

0.823292

SEN

0.000001

0.000037

0.00067

0.007672

0.055146

0.240473

0.611152

0.923665

SEN+

6.52789578839667E−9

0.000001

0.000111

0.004832

0.078667

0.392761

0.75151

0.942872

Benes network

Table 3 Terminal reliability as a function of time for network size 128

0.000001

0.000037

0.000671

0.007702

0.055858

0.247153

0.633349

0.942234

Replicated MIN

1.36625915834355E−99

1.89092005124058E−76

2.09907789935013E−56

1.86764767838263E−39

1.33536898324836E−25

2.04866291454292E−14

0.000001

0.042796

MCN

.34463320401145E−9

0.000001

0.000049

0.001822

0.031489

0.21782

0.59358

0.891832

1248

3.54641286402583E−12

2.78413101400389E−9

0.000001

0.000113

0.005143

0.071194

0.328159

0.757465

1888

Scalable crossbar network

123

123

0.256376 0.000001

0.169013 1.90199429791038E−8 6.42924688815325E−9 1.21729025049933E−12 6.42924725052804E−9 2.25257031569674E−791 2.09847069313308E−11 1.71232941410682E−14

7,000

8,000

0.000001

0.000033

0.000033

2.27170257027691E−9 0.000001

0.000002

0.000962

4.48030159579054E−8

0.000015

0.001614

0.048411

4.26997187896485E−606 1.08699151606185E−8 4.69618137734369E−11

1.56376961679502E−445 0.000002

1.10564911753978E−309 0.000238

1.51316958132199E−198 0.009635

0.320801

0.367879 0.000045

0.000597

0.014971

4.03988641072258E−112 0.138879

2.13468785108305E−50 0.562829

6,000

0.000962

0.039696

0.122608

0.492178

0.499352 0.000964

0.014922

0.370015

0.751174

5,000

1888 0.757461

0.64118 0.011744

0.121118

0.480782

0.891548

1248

4,000

MCN 6.712030230842E−13

0.778801 0.082085

0.915393

Replicated MIN

0.894839 0.329193

0.942872

Benes network

3,000

0.899675

SEN+

2,000

SEN

0.972604 0.757465

1,000

Time (h) SCN

Table 4 Terminal reliability as a function of time for network size 1,024

F. Bistouni, M. Jahanshahi

Scalable crossbar network 6000 5000

MTTF

4000 3000 2000 1000 0

8

16

32

64

128

256

512

1024

SCN

5317.361553 5317.361553 5317.361553 5317.361553 5317.361553 5317.361553 5317.361553 5317.361553

SEN

3069.980124 2658.680777 2377.996379 2170.803764 2009.773757 1879.971206 1772.453851 1681.497365

SEN+

3761.963869 3307.587796 2983.538906 2738.362696 2544.776766 2387.005563 2255.258094 2143.108327

Benes network

3058.811202 2874.736013 2774.212429 2712.152378 2670.705601 2641.453924 2619.941408 2603.605912

Replicated MIN 3307.587796 2983.538906 2738.362696 2544.776766 2387.005563 2255.258094 2143.108327 2046.146243 MCN

2136.330112 1520.151347 1076.745097 761.771986 538.7519849 380.9822904 269.4034306 190.4996848

Network 1248

2372.088067 2355.882637 2322.130676 2280.923048 2236.597435 2191.413013 2146.614699 2102.892667

Network 1888

1681.167435 1679.610657 1676.028864 1670.156321 1662.105458 1652.167551 1640.686202 1627.993819

Fig. 8 MTTF as a function of network size 90

Cost-effectiveness

80 70 60 50 40 30 20 10 0

8

16

32

64

128

256

512

1024

SCN

83.083774

20.770944

5.192736

1.298184

0.324546

0.081136

0.020284

0.005071

SEN

63.957919

20.770944

7.431239

2.826567

1.121526

0.458977

0.192324

0.082104

SEN+

58.780685

20.672424

7.769633

3.056208

1.242567

0.518013

0.22024

0.095131

Benes network

38.23514

12.833643

4.816341

1.926245

0.802496

0.343939

0.150502

0.06691

Replicated MIN

25.84053

9.323559

3.565576

1.420076

0.582765

0.244711

0.104644

0.045413

MCN

8.34504

1.484523

0.262877

0.046495

0.008221

0.001453

0.000257

4.5E-05

Network 1248

8.236417

2.83159

1.067156

0.424279

0.174734

0.073795

0.031762

0.013876

Network 1888

3.752606

1.457995

0.595181

0.250925

0.10821

0.047454

0.021082

0.009463

Fig. 9 Cost-effectiveness as a function of network size

network 1248, and network 1888. Moreover, it has a substantial advantage in virtually all network sizes compared to MCN, network 1248, and network 1888 in terms of costeffectiveness. Also, the results in Fig. 9 show that SCN has a close competition in other scenarios with all the networks in terms of cost-effectiveness. Overall, considering all

123

F. Bistouni, M. Jahanshahi Table 5 System failure rate as a function of time for network size 8 Time (h)

SCN

SEN

SEN+

Benes network

Replicated MIN

MCN

Network 1888

1,000

0.000056

0.000167

0.000122

0.000123

0.000080

0.000307

0.000556

2,000

0.0001111

0.000333

0.000296

0.000306

0.000258

0.000724

0.001111

3,000

0.0001667

0.0005

0.000522

0.000567

0.000512

0.001208

0.001669

4,000

0.0002222

0.000667

0.000774

0.000884

0.000788

0.001697

0.002259

5,000

0.0002778

0.000833

0.001032

0.001220

0.001056

0.002170

0.002943

6,000

0.0003333

0.001

0.001285

0.001552

0.001308

0.002630

0.003713

7,000

0.0003889

0.001167

0.001529

0.001871

0.001546

0.003084

0.004495

8,000

0.0004444

0.001333

0.001765

0.002175

0.001774

0.003536

0.005246

MCN

Network 1888

Table 6 System failure rate as a function of time for network size 128 Time (h)

SCN

SEN

SEN+

Benes network

Replicated MIN

1,000

0.000056

0.000389

0.000199

0.000125

0.000172

0.007021

0.000556

2,000

0.0001111

0.000778

0.000659

0.000366

0.000657

0.014190

0.001129

3,000

0.0001667

0.001167

0.001208

0.001037

0.001222

0.021293

0.002018

4,000

0.0002222

0.001156

0.001730

0.002217

0.001742

0.028402

0.003244

5,000

0.0002778

0.001944

0.002209

0.003317

0.002215

0.035516

0.004355

6,000

0.0003333

0.002333

0.002664

0.004217

0.002666

0.042633

0.004745

7,000

0.0003889

0.002722

0.003111

0.005645

0.003111

0.049751

0.00622

8,000

0.0004444

0.003111

0.003555

0.004701

0.003555

0.056870

0.007111

these discussions, it can be concluded that although SCN network provides critical factors such as non-blocking conditions, scalability, reliability, MTTF, and efficient routing mechanism, it does not impose a high cost given these important advantages. Generally, the system failure rate can be defined as the number of failures per unit time for a specified period of time. Therefore, whatever the value of this parameter is small, the network can operate with a smaller number of failures in a given time period. According to Eqs. (41) to (47), the results of system failure rate analysis as a function of time for different network sizes of 8, 128, and 1,024 are summarized in Tables 5, 6, and 7, respectively. In Tables 5, 6, and 7, the results of the system failure rate analysis are given for various times from 1,000 to 8,000 h. As the results demonstrate, the SCN achieves the lowest failure rate among other networks for all network sizes of 8, 128, and 1,024. As expected, the failure rate gradually increases with increasing the time. However, SCN failure rate is much lower than the other networks at all times. Also, the results show that the poorest results in terms of failure rate are owned by MCN network. In other words, these results reflect the fact that although MCN similar to SCN can solve the blocking problem, MCN is undesirable in terms of failure rate as one of the key performance parameters. In fact, the main reason for the weakness of the MCN failure rate is coupling of its high network complexity and high hardware cost.

123

Scalable crossbar network Table 7 System failure rate as a function of time for network size 1,024 Time (h)

SCN

SEN

SEN+

Benes network

Replicated MIN

MCN

Network 1888

1,000

0.000056

0.000556

0.000292

0.000125

0.000272

0.056871

0.000556

2,000

0.0001111

0.001111

0.000997

0.000369

0.001003

0.113746

0.001233

3,000

0.0001667

0.001667

0.001750

0.001245

0.001762

0.170626

0.00265

4,000

0.0002222

0.002222

0.002426

0.003303

0.002431

0.227513

0.004096

5,000

0.0002778

0.002778

0.003053

0.004966

0.003054

0.284393

0.005186

6,000

0.0003333

0.003333

0.003666

0.006854

0.003667

0.341273

0.006332

7,000

0.0003889

0.003889

0.004278

0.008291

0.004278

0.398153

0.007389

8,000

0.0004444

0.004444

0.004889

0.006888

0.004889

0.455033

0.008444

In summary, the results of analyzing the important performance parameters confirms that the SCN achieves a nice advantage compared to the blocking network of SEN, rearrangeable network of Benes network, non-blocking network of MCN, faulttolerant network of SEN+, replicated MIN, and multilayer MIN 1888. Therefore, not only the SCN eliminates the challenging issue of blocking, but also it yields a very good performance in terms of terminal reliability, mean time to failure, and system failure rate. 5 Conclusion and future works In this paper, a new topology named scalable crossbar network (SCN) was proposed which in addition to solving the blocking and scalability issues, its cost equals to the cost of typical crossbar network. In other words, the SCN leads to four times lower cost compared to the MCN. In addition, the results of the performance analysis proves that SCN outperforms blocking network SEN, fault-tolerant network SEN+, rearrangeable Benes network, non-blocking network MCN, and special topology of replicated MIN in terms of key performance parameters of terminal reliability, mean time to failure (MTTF), and system failure rate. There are also some ideas that can be considered in future works. In order to achieve more high-performance topologies, the SCN can be combined with some modern design ideas. For instance, multilayer and replicated networks are some of the ideas which can be combined with SCN topology. Moreover, some new innovative ideas such as increasing the number of switching groups, linking the switching groups together, and designing asymmetric networks (networks in which number of source and destination nodes differs) can be investigated in the SCN network. References 1. Jadhav SS (2009) Advanced computer architecture and computing. Technical publications, India 2. El-Rewini H, Abd-El-Barr M (2005) Advanced computer architecture and parallel processing. Wiley, Hoboken

123

F. Bistouni, M. Jahanshahi 3. Dubois M, Annavaram M, Stenström P (2012) Parallel computer organization and design. Cambridge University Press, New York 4. Bistouni F, Jahanshahi M (2014) Pars network: a multistage interconnection network with faulttolerance capability. J Parallel Distrib Comput (2014). http://dx.doi.org/10.1016/j.jpdc.2014.08.005 5. Arabnia HR (2008) A scalable network topology for medical imaging. In: 10th IEEE international conference on high performance computing and communications 2008 (HPCC’08). IEEE 6. Arabnia HR, Smith JW (1993) A reconfigurable interconnection network for imaging operations and its implementation using a multi-stage switching box. In: Proceedings of the 7th annual international high performance computing conference 7. Arabnia HR, Oliver MA (1987) A transputer network for the arbitrary rotation of digitised images. Comput J 30(5):425–432 8. Bhandarkar SM, Arabnia HR (1995) The REFINE multiprocessor—theoretical properties and algorithms. Parallel Comput 21(11):1783–1805 9. Bhandarkar SM, Arabnia HR (1995) The Hough transform on a reconfigurable multi-ring network. J Parallel Distrib Comput 24(1):107–114 10. Duato J, Yalamanchili S (2003) Interconnection networks: an engineering approach. Morgan Kaufmann, San Francisco 11. Navaridas J et al (2011) Simulating and evaluating interconnection networks with INSEE. Simul Model Pract Theory 19(1):494–515 12. Li Y, Peng S, Chu W (2010) Metacube—a versatile family of interconnection networks for extremely large-scale supercomputers. J Supercomput 53(2):329–351 13. Lüdtke D, Tutsch D (2009) The modeling power of CINSim: performance evaluation of interconnection networks. Comput Netw 53(8):1274–1288 14. Dally WJ, Towles BP (2004) Principles and practices of interconnection networks. Morgan Kaufmann, San Francisco 15. Wang X, Xiang D (2013) TM: a new and simple topology for interconnection networks. J Supercomput 66(1):514–538 16. Luo W, Xiang D (2012) An efficient adaptive deadlock-free routing algorithm for torus networks. IEEE Trans Parallel Distrib Syst 23(5):800–808 17. Garofalakis J, Stergiou E (2013) An analytical model for the performance evaluation of multistage interconnection networks with two class priorities. Future Gener Comput Syst 29(1):114–129 18. Escudero-Sahuquillo J et al (2013) An effective and feasible congestion management technique for high-performance MINs with tag-based distributed routing. IEEE Trans Parallel Distrib Syst 24(10):1918–1929 19. Swaminathan K, Lakshminarayanan G, Ko S-B (2014) Design and verification of an efficient WISHBONE-based network interface for network on chip. Comput Electr Eng 40(6):1838–1857 20. Bistouni F, Jahanshahi M (2014) Improved extra group network: a new fault-tolerant multistage interconnection network. J Supercomput 69(1):161–199 21. Villar JA et al (2013) An integrated solution for QoS provision and congestion management in high-performance interconnection networks using deterministic source-based routing. J Supercomput 66(1):284–304 22. Hur JY et al (2007) Systematic customization of on-chip crossbar interconnects. In: Diniz PC, Marques E, Bertels K, Fernandes MM, Cardoso JMP (eds) Reconfigurable computing: architectures, tools and applications. Springer, Berlin, Heidelberg, pp 61–72 23. Parker DS, Raghavendra CS (1984) The gamma network. IEEE Trans Comput 100(4):367–373 24. Rajkumar S, Goyal NK (2014) Design of 4-disjoint gamma interconnection network layouts and reliability analysis of gamma interconnection networks. J Supercomput 69(1): 468–491 25. Chen C-W, Chung C-P (2005) Designing a disjoint paths interconnection network with fault tolerance and collision solving. J Supercomput 34(1):63–80 26. Garhwal NS, Srivastava N (2011) Designing a fault-tolerant fully-chained combining switches multistage interconnection network with disjoint paths. J Supercomput 55(3): 400–431 27. Wei S, Lee G (1988) Extra group network: a cost-effective fault-tolerant multistage interconnection network. ACM SIGARCH computer architecture news, vol 16. no. 2. IEEE Computer Society Press 28. Matos D et al (2013) Hierarchical and multiple switching NoC with floorplan based adaptability. In: Brisk P, Coutinho JGF, Diniz PC (eds) Reconfigurable computing: architectures, tools and applications. Springer, Berlin, Heidelberg, pp 179–184

123

Scalable crossbar network 29. Kumar VP, Reddy SM (1987) Augmented shuffle-exchange multistage interconnection networks. Computer 20(6):30–40 30. Vasiliadis DC, Rizos GE, Vassilakis C (2013) Modelling and performance study of finite-buffered blocking multistage interconnection networks supporting natively 2-class priority routing traffic. J Netw Comput Appl 36(2):723–737 31. Gunawan I (2008) Reliability analysis of shuffle-exchange network systems. Reliab Eng Syst Saf 93(2):271–276 32. Blake JT, Trivedi KS (1989) Reliability analysis of interconnection networks using hierarchical composition. IEEE Trans Reliab 38(1):111–120 33. Bansal PK, Joshi RC, Singh K (1994) On a fault-tolerant multistage interconnection network. Comput Electr Eng 20(4): 335–345 34. Bistouni F, Jahanshahi M (2014) Analyzing the reliability of shuffle-exchange networks using reliability block diagrams. Reliab Eng Syst Saf 132:97–106 35. Blake JT, Trivedi KS (1989) Multistage interconnection network reliability. IEEE Trans Comput 38(11):1600–1604 36. Nitin, Subramanian A (2008) Efficient algorithms and methods to solve dynamic MINs stability problem using stable matching with complete ties. J Discret Algorithms 6(3):353–380 37. Fan CC, Bruck J (2000) Tolerating multiple faults in multistage interconnection networks with minimal extra stages. IEEE Trans Comput 49(9):998–1004 38. Adams GB, Siegel HJ (1982) The extra stage cube: a fault-tolerant interconnection network for supersystems. IEEE Trans Comput 100(5):443–454 39. Tutsch D, Hommel G (2008) MLMIN: a multicore processor and parallel computer network topology for multicast. Comput Oper Res 35(12):3807–3821 40. Çam H (2001) Analysis of shuffle-exchange networks under permutation trafic. In: Du DZ, Ngo HQ (eds) Switching networks: recent advances. Springer, US, pp 215–256 41. Çam H (2003) Rearrangeability of (2n − 1)-stage shuffle-exchange networks. SIAM J Comput 32(3):557–585 42. Dai H, Shen X (2008) Rearrangeability of 7-stage 16× 16 shuffle exchange networks. Front Electr Electron Eng China 3(4):440–458 43. Beneš VE (1965) Mathematical theory of connecting networks and telephone traffic, vol. 17. Academic Press, New York 44. Clos C (1953) A study of non-blocking switching networks. Bell Syst Tech J 32(2):406–424 45. Kolias C, Tomkos I (2005) Switch fabrics. IEEE Circuits Devices Mag 21(5):12–17 46. Fey D et al (2012) Optical multiplexing techniques for photonic Clos networks in high performance computing architectures. J Supercomput 62(2):620–632 47. Cuda D, Giaccone P, Montalto M (2012) Design and control of next generation distribution frames. Comput Netw 56(13):3110–3122 48. Sibai FN (2011) Design and evaluation of low latency interconnection networks for real-time manycore embedded systems. Comput Electr Eng 37(6):958–972 49. Das N, Mukhopadhyaya K, Dattagupta J (2000) O (n) routing in rearrangeable networks. J Syst Archit 46(6):529–542 50. Newman P (1989) Fast packet switching for integrated services. University of Cambridge, Computer Laboratory 51. Bauer E (2010) Design for reliability: information and computer-based systems. Wiley, Hoboken 52. Veglis A, Pomportsis A (2001) Dependability evaluation of interconnection networks. Comput Electr Eng 27(3):239–263 53. Dash RK et al (2012) Network reliability optimization problem of interconnection network under node-edge failure model. Appl Soft Comput 12(8):2322–2328 54. Fard NS, Gunawan I (2002) Reliability bounds for large multistage interconnection networks. In: Fagerholm J, Haataja J, Järvinen J, Lyly M, Råback P, Savolainen V (eds) Applied parallel computing. Springer, Berlin, Heidelberg, pp 507–514 55. Zhu Q, Wang X-K, Cheng G (2013) Reliability evaluation of BC networks. IEEE Trans Comput 62(11):2337–2340 56. Lee SE (2013) Adaptive error correction in Orthogonal Latin Square Codes for low-power, resilient on-chip interconnection network. Microelectron Reliab 53(3):509–511 57. Zarezadeh S, Asadi M (2013) Network reliability modeling under stochastic process of component failures. IEEE Trans Reliab 62(4):917–929

123

F. Bistouni, M. Jahanshahi 58. Li Y-F, Sansavini G, Zio E (2013) Non-dominated sorting binary differential evolution for the multiobjective optimization of cascading failures protection in complex networks. Reliab Eng Syst Saf 111:195–205 59. Kang W-H, Kliese A (2014) A rapid reliability estimation method for directed acyclic lifeline networks with statistically dependent components. Reliab Eng Syst Saf 124:81–91 60. Kim Y, Kang W-H (2013) Network reliability analysis of complex systems using a non-simulationbased method. Reliab Eng Syst Saf 110:80–88 61. Blake JT, Trivedi KS (1988) Reliability of the shuffle-exchange network and its variants. In: System sciences, vol I. Proceedings of the twenty-first annual Hawaii international conference on architecture track, vol 1. IEEE 62. Kang W-H, Song J, Gardoni P (2008) Matrix-based system reliability method and applications to bridge networks. Reliab Eng Syst Saf 93(11):1584–1593 63. Shuang Q, Zhang M, Yuan Y (2014) Node vulnerability of water distribution networks under cascading failures. Reliab Eng Syst Saf 124:132–141 64. Padmavathy N, Chaturvedi SK (2013) Evaluation of mobile ad hoc network reliability using propagation-based link reliability model. Reliab Eng Syst Saf 115:1–9 65. Jahanshahi M, Dehghan M, Meybodi MR (2013) LAMR: learning automata based multicast routing protocol for multi-channel multi-radio wireless mesh networks. Appl Intell 38(1): 58–77 66. Jahanshahi M, Dehghan M, Meybodi MR (2013) On channel assignment and multicast routing in multi-channel multi-radio wireless mesh networks. Int J Ad Hoc Ubiquitous Comput 12(4): 225–244 67. Jahanshahi M, Dehghan M, Meybodi MR (2011) A mathematical formulation for joint channel assignment and multicast routing in multi-channel multi-radio wireless mesh networks. J Netw Comput Appl 34(6): 1869–1882 68. Jahanshahi M, Barmi AT (2014) Multicast routing protocols in wireless mesh networks: a survey. Computing 1–29 69. Jahanshahi M, Maddah M, Najafizadegan N (2013) Energy aware distributed partitioning detection and connectivity restoration algorithm in wireless sensor networks. Int J Math Model Comput 3(1): 71–82 70. Jahanshahi M, Rahmani S, Ghaderi S (2013) An efficient cluster head selection algorithm for wireless sensor networks using fuzzy inference systems. Int J Smart Electr Eng 2(2): 121–125 71. Ebrahimi N, McCullough K, Xiao Z (2013) Reliability of sensors based on nanowire networks operating in a dynamic environment. IEEE Trans Reliab 62(4):908–916 72. Schneider K et al (2013) Social network analysis via multi-state reliability and conditional influence models. Reliab Eng Syst Saf 109:99–109 73. Lin Y-K, Chang P-C (2013) A novel reliability evaluation technique for stochastic-flow manufacturing networks with multiple production lines. IEEE Trans Reliab 62(1):92–104 74. Gunawan I (2008) Redundant paths and reliability bounds in gamma networks. Appl Math Model 32(4):588–594 75. Birolini A (2014) Reliability engineering: theory and practice. Springer, Berlin 76. Koren I, Krishna CM (2007) Fault-tolerant systems. Morgan Kaufmann, San Francisco 77. Mettas A, Savva M (2001) System reliability analysis: the advantages of using analytical methods to analyze non-repairable systems. In: Proceedings on annual reliability and maintainability symposium. IEEE 78. Stapelberg RF (2009) Handbook of reliability, availability, maintainability and safety in engineering design. Springer, London 79. McCool JI (2012) Using the Weibull distribution: reliability, modeling and inference. Wiley, Hoboken 80. Online reliability engineering e-textbook. http://www.engineeredsoftware.com/nasa/weibull.htm

123

Suggest Documents