Article View: comp.sys.transputer
Article #999VCX Questions/Answers
From: "M STALKER , OFFSITE", SYSCON
Date: Mon, 24 Sep 1990 21:11
Date: Mon, 24 Sep 1990 21:11
858 lines
34264 bytes
34264 bytes
****************************************************************************
>From: Mario D. Stalker Date: 9-24-90
To: Joelle Prevost
joelle@alpe.imag.fr
L.M.C./algo parallele 76 57 48 14
Subject: V.C.X. Information
Dear Miss Prevost:
Your questions about VCX are extremelly helpful to me, specially now
that I am writing VCX's documentation and User Manual. Your comments points
out some areas of weakness in my explanation of VCX; they help me identify
these areas and make the necessary corrections. I will try to answer your
first 3 questions. The fourth question will be partially answered because I
would like to build a simple example of "datagram routing" to provide a more
descriptive explanation.
I would like to know a little more about your work with transputer
systems; can you tell me what type of projects you are involved with? What
kind of development tools and compilers you are presently using? etc.
I will now proceed to answer questions 1 - 3:
QUESTION #1 You say something like "the user might use the RTG tool to find
the appropriate hardwired configuration". As I understand the
Fig.2, the user will find it by testing many ".nif" files and
looking at the ".lis" files to of them ?
ANSWER: I am assuming that you are familiar with the Logical System "C"
compiler and with the format of the "network information file"
(.nif). If not, let me know and I will explain this in more
detail.
You have the right idea!! Yes, the user will run the RTG tool on
a series of ".nif" files and them will look at the output of the
RGT to see which virtual configuration gives the best routing
tables (the one with shortest paths). I will give you an example
which shows two ".nif" files and the output generated by RTG for
each one of them. This example uses the same physical network
hardwired configuration shown in Figure 8, page 19. However,
the node id numbers assigned follow a different pattern:
Physical network: 10 transputers
case_1.nif: represents a pipeline virtual configuration
case_2.nif: represents a tree virtual configuration
2
This is the (case_1.nif) file:
--------------------------------------------------------------------
-- SYSCON CORPORATION (c) 1990; Developer: Mario Stalker --
-- --
-- April 3, 1990 file name: case_1.nif --
-- --
-- This file contains the configuration information for a network --
-- with a topology of a pipeline. The topology in this case is a --
-- worst case scenario as far as communications efficency is --
-- concerned. It yields a minimum total average of 3.44 hops. --
-- The minimum average for node 1 (FARMER/COLLECTOR) is 3.89 hops --
-- (see page 20 of Technical Report for a description of a hop). --
--------------------------------------------------------------------
1, root_nod , R0, 0, , , 2;
2, work_nod , R1, 1, , 3, ;
3, work_nod , R2, , , 4, 2;
4, work_nod , R3, , , 5, 3;
5, work_nod , R4, 6, , , 4;
6, work_nod , R5, , 5, 7, ;
7, work_nod , R6, , , 8, 6;
8, work_nod , R7, , , 9, 7;
9, work_nod , R8, ,10, , 8;
10, work_nod , R9, , , , 9;
=========================================================================
This is the statistical information (case_1.lis) file:
*******************************************************************
* *
* ROUTING TABLE GENERATOR - Rev. 1.1 - Mario Stalker *
* *
* SYSCON CORPORATION November 1989 (c) *
* *
*******************************************************************
Input file: case_1.nif Date and time: Tue Apr 3 07:32:06 1990
DISPLAYING NETWORK STATISTICS ...
Number of nodes: 10 (not including node 0)
Number of paths: 88
Cyclic paths: 0 (found and deleted)
Deleted paths: 0.0 (percentage)
DISPLAYING RESULTS (verbose level 1)
----------------------------------------------------------------------------------------
Hops Statistics:
First column: source node id
Second column: max. hops average from source to all nodes
Third column: min. hops average from source to all nodes
Between (): min. hops average from all nodes to source
source: 1 - max. hops average: 3.89 - min. hops average: 3.89 ( 3.89)
source: 2 - max. hops average: 4.11 - min. hops average: 4.11 ( 4.11)
source: 3 - max. hops average: 3.44 - min. hops average: 3.44 ( 3.44)
source: 4 - max. hops average: 3.00 - min. hops average: 3.00 ( 3.00)
source: 5 - max. hops average: 2.78 - min. hops average: 2.78 ( 2.78)
source: 6 - max. hops average: 2.78 - min. hops average: 2.78 ( 2.78)
3
source: 7 - max. hops average: 3.00 - min. hops average: 3.00 ( 3.00)
source: 8 - max. hops average: 3.44 - min. hops average: 3.44 ( 3.44)
source: 9 - max. hops average: 4.11 - min. hops average: 4.11 ( 4.11)
source: 10 - max. hops average: 3.89 - min. hops average: 3.89 ( 3.89)
Total max. average: 3.44 Total min. average: 3.44
The following information can be displayed in four verbose levels; this is
the less verbose level and contains the source/destination pairs which are
connected by the longest paths.
src: 1 max. hops: 8 dest: 9
----------------------------------------------------------------------------------------
src: 2 max. hops: 8 dest: 10
----------------------------------------------------------------------------------------
src: 3 max. hops: 7 dest: 10
----------------------------------------------------------------------------------------
src: 4 max. hops: 6 dest: 10
----------------------------------------------------------------------------------------
src: 5 max. hops: 5 dest: 10
----------------------------------------------------------------------------------------
src: 6 max. hops: 5 dest: 1
----------------------------------------------------------------------------------------
src: 7 max. hops: 6 dest: 1
----------------------------------------------------------------------------------------
src: 8 max. hops: 7 dest: 1
----------------------------------------------------------------------------------------
src: 9 max. hops: 8 dest: 1
----------------------------------------------------------------------------------------
src: 10 max. hops: 8 dest: 2
----------------------------------------------------------------------------------------
=========================================================================
This is a set of routing tables (generated by RTG), contained in case_1.rot
file:
*******************************************************************
* *
* ROUTING TABLE GENERATOR - Rev. 1.1 - Mario Stalker *
* *
* SYSCON CORPORATION November 1989 (c) *
* *
*******************************************************************
Input file: case_1.nif Date and time: Tue Apr 3 07:32:08 1990
num_nodes 10; <-- Number of nodes found in the network --
node 1 (source); <-- This is the routing table for node 1 --
dest_node 1;
dest_node 2, 3;
dest_node 3, 3;
dest_node 4, 3;
dest_node 5, 3; <-- This line says that to go from node 1
dest_node 6, 3; to node 5, the datagram should exit the
dest_node 7, 3; source node through link 3.
dest_node 8, 3;
dest_node 9, 3;
dest_node 10, 3;
4
node 2; <-- This is the routing table for node 2 --
dest_node 1, 0;
dest_node 2;
dest_node 3, 2;
dest_node 4, 2;
dest_node 5, 2;
dest_node 6, 2;
dest_node 7, 2;
dest_node 8, 2;
dest_node 9, 2;
dest_node 10, 2;
node 3; <-- This is the routing table for node 3 --
dest_node 1, 3;
dest_node 2, 3;
dest_node 3;
dest_node 4, 2;
dest_node 5, 2;
dest_node 6, 2;
dest_node 7, 2;
dest_node 8, 2;
dest_node 9, 2;
dest_node 10, 2;
node 4; <-- This is the routing table for node 4 --
dest_node 1, 3;
dest_node 2, 3;
dest_node 3, 3;
dest_node 4;
dest_node 5, 2;
dest_node 6, 2;
dest_node 7, 2;
dest_node 8, 2;
dest_node 9, 2;
dest_node 10, 2;
node 5; <-- This is the routing table for node 5 --
dest_node 1, 3;
dest_node 2, 3;
dest_node 3, 3;
dest_node 4, 3;
dest_node 5;
dest_node 6, 0;
dest_node 7, 0;
dest_node 8, 0;
dest_node 9, 0;
dest_node 10, 0;
node 6; <-- This is the routing table for node 6 --
dest_node 1, 1;
dest_node 2, 1;
dest_node 3, 1;
dest_node 4, 1;
dest_node 5, 1;
dest_node 6;
dest_node 7, 2;
dest_node 8, 2;
dest_node 9, 2;
dest_node 10, 2;
5
node 7; <-- This is the routing table for node 7 --
dest_node 1, 3;
dest_node 2, 3;
dest_node 3, 3;
dest_node 4, 3;
dest_node 5, 3;
dest_node 6, 3;
dest_node 7;
dest_node 8, 2;
dest_node 9, 2;
dest_node 10, 2;
node 8; <-- This is the routing table for node 8 --
dest_node 1, 3;
dest_node 2, 3;
dest_node 3, 3;
dest_node 4, 3;
dest_node 5, 3;
dest_node 6, 3;
dest_node 7, 3;
dest_node 8;
dest_node 9, 2;
dest_node 10, 2;
node 9; <-- This is the routing table for node 9 --
dest_node 1, 3;
dest_node 2, 3;
dest_node 3, 3;
dest_node 4, 3;
dest_node 5, 3;
dest_node 6, 3;
dest_node 7, 3;
dest_node 8, 3;
dest_node 9;
dest_node 10, 1;
node 10; <-- This is the routing table for node 10 --
dest_node 1, 3;
dest_node 2, 3;
dest_node 3, 3;
dest_node 4, 3;
dest_node 5, 3;
dest_node 6, 3;
dest_node 7, 3;
dest_node 8, 3;
dest_node 9, 3;
dest_node 10;
=============================================================================
6
This is the (case_2.nif) file:
----------------------------------------------------------------------
-- SYSCON CORPORATION (c) 1990; Developer: Mario Stalker --
-- --
-- April 3, 1990 file name: case_2.nif --
-- --
-- This file contains configuration information for a network --
-- with a topology of a three level tree. It is the most --
-- efficient configuration for the application under consideration --
-- FARMER -> WORKERS -> COLLECTOR . It yields a Total Minimum --
-- Average of 2.60 hops. However, there is a minimum average of --
-- 1.89 hops between node 1 (FARMER/COLLECTOR) and all the WORKERS. --
----------------------------------------------------------------------
1, root_nod , R0, 0, ,10, 2;
2, work_nod , R1, 1, 4, 3, 5;
3, work_nod , R2, , , 4, 2;
4, work_nod , R3, 2, , , 3;
5, work_nod , S2, , , 2, ;
6, work_nod , R9, , , , 9;
7, work_nod , R8, ,10, 8, ;
8, work_nod , R10, ,10, , 7;
9, work_nod , S10, ,10, 6, ;
10, work_nod , S1, 7, 1, 8, 9;
=========================================================================
This is the (case_2.lis) file for the second case:
*******************************************************************
* *
* ROUTING TABLE GENERATOR - Rev. 1.1 - Mario Stalker *
* *
* SYSCON CORPORATION November 1989 (c) *
* *
*******************************************************************
Input file: case_2.nif Date and time: Wed Apr 25 14:56:14 1990
DISPLAYING NETWORK STATISTICS ...
Number of nodes: 10 (not including node 0)
Number of paths: 130
Cyclic paths: 0 (found and deleted)
Deleted paths: 0.0 (percentage)
DISPLAYING RESULTS (verbose level 4)
----------------------------------------------------------------------------------------
Hops Statistics:
First column: source node id
Second column: max. hops average from source to all nodes
Third column: min. hops average from source to all nodes
Between (): min. hops average from all nodes to source
source: 1 - max. hops average: 1.89 - min. hops average: 1.89 ( 1.89)
source: 2 - max. hops average: 2.33 - min. hops average: 2.11 ( 2.11)
source: 3 - max. hops average: 3.89 - min. hops average: 2.89 ( 2.89)
source: 4 - max. hops average: 3.89 - min. hops average: 2.89 ( 2.89)
source: 5 - max. hops average: 3.00 - min. hops average: 3.00 ( 3.00)
7
source: 6 - max. hops average: 3.44 - min. hops average: 3.44 ( 3.44)
source: 7 - max. hops average: 3.67 - min. hops average: 2.67 ( 2.67)
source: 8 - max. hops average: 3.67 - min. hops average: 2.67 ( 2.67)
source: 9 - max. hops average: 2.56 - min. hops average: 2.56 ( 2.56)
source: 10 - max. hops average: 2.11 - min. hops average: 1.89 ( 1.89)
Total max. average: 3.04 Total min. average: 2.60
Notice that the following information is displayed at the fourth verbose
level. This level provides the distance for each path that goes from source
to destination. It also gives an itinerary for each path. For instance, the
third line below says that the path which joins source node #1 with
destination node #3 has 2 hops. It also says that this path follows the
itinerary:
exit node #1 through link 3;
go to node #2;
exit node #2 through link 2;
reach destination node #3.
(Notice that some source/destination pairs have more than one path)
src: 1 dest: 1 N/A
src: 1 dest: 2 hops: 1 path: 1:L3 --> 2
src: 1 dest: 3 hops: 2 path: 1:L3 --> 2:L2 --> 3 (see above comments)
src: 1 dest: 4 hops: 2 path: 1:L3 --> 2:L1 --> 4
src: 1 dest: 5 hops: 2 path: 1:L3 --> 2:L3 --> 5
src: 1 dest: 6 hops: 3 path: 1:L2 --> 10:L3 --> 9:L2 --> 6
src: 1 dest: 7 hops: 2 path: 1:L2 --> 10:L0 --> 7
src: 1 dest: 8 hops: 2 path: 1:L2 --> 10:L2 --> 8
src: 1 dest: 9 hops: 2 path: 1:L2 --> 10:L3 --> 9
src: 1 dest: 10 hops: 1 path: 1:L2 --> 10
----------------------------------------------------------------------------------------
src: 2 dest: 1 hops: 1 path: 2:L0 --> 1
src: 2 dest: 2 N/A
src: 2 dest: 3 hops: 1 path: 2:L2 --> 3
hops: 2 path: 2:L1 --> 4:L3 --> 3
src: 2 dest: 4 hops: 1 path: 2:L1 --> 4
hops: 2 path: 2:L2 --> 3:L2 --> 4
src: 2 dest: 5 hops: 1 path: 2:L3 --> 5
src: 2 dest: 6 hops: 4 path: 2:L0 --> 1:L2 --> 10:L3 --> 9:L2 --> 6
src: 2 dest: 7 hops: 3 path: 2:L0 --> 1:L2 --> 10:L0 --> 7
src: 2 dest: 8 hops: 3 path: 2:L0 --> 1:L2 --> 10:L2 --> 8
8
src: 2 dest: 9 hops: 3 path: 2:L0 --> 1:L2 --> 10:L3 --> 9
src: 2 dest: 10 hops: 2 path: 2:L0 --> 1:L2 --> 10
----------------------------------------------------------------------------------------
src: 3 dest: 1 hops: 2 path: 3:L3 --> 2:L0 --> 1
hops: 3 path: 3:L2 --> 4:L0 --> 2:L0 --> 1
src: 3 dest: 2 hops: 1 path: 3:L3 --> 2
hops: 2 path: 3:L2 --> 4:L0 --> 2
src: 3 dest: 3 N/A
src: 3 dest: 4 hops: 1 path: 3:L2 --> 4
hops: 2 path: 3:L3 --> 2:L1 --> 4
src: 3 dest: 5 hops: 2 path: 3:L3 --> 2:L3 --> 5
hops: 3 path: 3:L2 --> 4:L0 --> 2:L3 --> 5
src: 3 dest: 6 hops: 5 path: 3:L3 --> 2:L0 --> 1:L2 --> 10:L3 --> 9:L2 --> 6
hops: 6 path: 3:L2 --> 4:L0 --> 2:L0 --> 1:L2 --> 10:L3 --> 9:L2 --> 6
src: 3 dest: 7 hops: 4 path: 3:L3 --> 2:L0 --> 1:L2 --> 10:L0 --> 7
hops: 5 path: 3:L2 --> 4:L0 --> 2:L0 --> 1:L2 --> 10:L0 --> 7
src: 3 dest: 8 hops: 4 path: 3:L3 --> 2:L0 --> 1:L2 --> 10:L2 --> 8
hops: 5 path: 3:L2 --> 4:L0 --> 2:L0 --> 1:L2 --> 10:L2 --> 8
src: 3 dest: 9 hops: 4 path: 3:L3 --> 2:L0 --> 1:L2 --> 10:L3 --> 9
hops: 5 path: 3:L2 --> 4:L0 --> 2:L0 --> 1:L2 --> 10:L3 --> 9
src: 3 dest: 10 hops: 3 path: 3:L3 --> 2:L0 --> 1:L2 --> 10
hops: 4 path: 3:L2 --> 4:L0 --> 2:L0 --> 1:L2 --> 10
----------------------------------------------------------------------------------------
src: 4 dest: 1 hops: 2 path: 4:L0 --> 2:L0 --> 1
hops: 3 path: 4:L3 --> 3:L3 --> 2:L0 --> 1
src: 4 dest: 2 hops: 1 path: 4:L0 --> 2
hops: 2 path: 4:L3 --> 3:L3 --> 2
src: 4 dest: 3 hops: 1 path: 4:L3 --> 3
hops: 2 path: 4:L0 --> 2:L2 --> 3
src: 4 dest: 4 N/A
src: 4 dest: 5 hops: 2 path: 4:L0 --> 2:L3 --> 5
hops: 3 path: 4:L3 --> 3:L3 --> 2:L3 --> 5
src: 4 dest: 6 hops: 5 path: 4:L0 --> 2:L0 --> 1:L2 --> 10:L3 --> 9:L2 --> 6
hops: 6 path: 4:L3 --> 3:L3 --> 2:L0 --> 1:L2 --> 10:L3 --> 9:L2 --> 6
src: 4 dest: 7 hops: 4 path: 4:L0 --> 2:L0 --> 1:L2 --> 10:L0 --> 7
hops: 5 path: 4:L3 --> 3:L3 --> 2:L0 --> 1:L2 --> 10:L0 --> 7
src: 4 dest: 8 hops: 4 path: 4:L0 --> 2:L0 --> 1:L2 --> 10:L2 --> 8
hops: 5 path: 4:L3 --> 3:L3 --> 2:L0 --> 1:L2 --> 10:L2 --> 8
src: 4 dest: 9 hops: 4 path: 4:L0 --> 2:L0 --> 1:L2 --> 10:L3 --> 9
hops: 5 path: 4:L3 --> 3:L3 --> 2:L0 --> 1:L2 --> 10:L3 --> 9
9
src: 4 dest: 10 hops: 3 path: 4:L0 --> 2:L0 --> 1:L2 --> 10
hops: 4 path: 4:L3 --> 3:L3 --> 2:L0 --> 1:L2 --> 10
----------------------------------------------------------------------------------------
src: 5 dest: 1 hops: 2 path: 5:L2 --> 2:L0 --> 1
src: 5 dest: 2 hops: 1 path: 5:L2 --> 2
src: 5 dest: 3 hops: 2 path: 5:L2 --> 2:L2 --> 3
src: 5 dest: 4 hops: 2 path: 5:L2 --> 2:L1 --> 4
src: 5 dest: 5 N/A
src: 5 dest: 6 hops: 5 path: 5:L2 --> 2:L0 --> 1:L2 --> 10:L3 --> 9:L2 --> 6
src: 5 dest: 7 hops: 4 path: 5:L2 --> 2:L0 --> 1:L2 --> 10:L0 --> 7
src: 5 dest: 8 hops: 4 path: 5:L2 --> 2:L0 --> 1:L2 --> 10:L2 --> 8
src: 5 dest: 9 hops: 4 path: 5:L2 --> 2:L0 --> 1:L2 --> 10:L3 --> 9
src: 5 dest: 10 hops: 3 path: 5:L2 --> 2:L0 --> 1:L2 --> 10
----------------------------------------------------------------------------------------
src: 6 dest: 1 hops: 3 path: 6:L3 --> 9:L1 --> 10:L1 --> 1
src: 6 dest: 2 hops: 4 path: 6:L3 --> 9:L1 --> 10:L1 --> 1:L3 --> 2
src: 6 dest: 3 hops: 5 path: 6:L3 --> 9:L1 --> 10:L1 --> 1:L3 --> 2:L2 --> 3
src: 6 dest: 4 hops: 5 path: 6:L3 --> 9:L1 --> 10:L1 --> 1:L3 --> 2:L1 --> 4
src: 6 dest: 5 hops: 5 path: 6:L3 --> 9:L1 --> 10:L1 --> 1:L3 --> 2:L3 --> 5
src: 6 dest: 6 N/A
src: 6 dest: 7 hops: 3 path: 6:L3 --> 9:L1 --> 10:L0 --> 7
src: 6 dest: 8 hops: 3 path: 6:L3 --> 9:L1 --> 10:L2 --> 8
src: 6 dest: 9 hops: 1 path: 6:L3 --> 9
src: 6 dest: 10 hops: 2 path: 6:L3 --> 9:L1 --> 10
----------------------------------------------------------------------------------------
src: 7 dest: 1 hops: 2 path: 7:L1 --> 10:L1 --> 1
hops: 3 path: 7:L2 --> 8:L1 --> 10:L1 --> 1
src: 7 dest: 2 hops: 3 path: 7:L1 --> 10:L1 --> 1:L3 --> 2
hops: 4 path: 7:L2 --> 8:L1 --> 10:L1 --> 1:L3 --> 2
src: 7 dest: 3 hops: 4 path: 7:L1 --> 10:L1 --> 1:L3 --> 2:L2 --> 3
hops: 5 path: 7:L2 --> 8:L1 --> 10:L1 --> 1:L3 --> 2:L2 --> 3
src: 7 dest: 4 hops: 4 path: 7:L1 --> 10:L1 --> 1:L3 --> 2:L1 --> 4
hops: 5 path: 7:L2 --> 8:L1 --> 10:L1 --> 1:L3 --> 2:L1 --> 4
src: 7 dest: 5 hops: 4 path: 7:L1 --> 10:L1 --> 1:L3 --> 2:L3 --> 5
hops: 5 path: 7:L2 --> 8:L1 --> 10:L1 --> 1:L3 --> 2:L3 --> 5
10
src: 7 dest: 6 hops: 3 path: 7:L1 --> 10:L3 --> 9:L2 --> 6
hops: 4 path: 7:L2 --> 8:L1 --> 10:L3 --> 9:L2 --> 6
src: 7 dest: 7 N/A
src: 7 dest: 8 hops: 1 path: 7:L2 --> 8
hops: 2 path: 7:L1 --> 10:L2 --> 8
src: 7 dest: 9 hops: 2 path: 7:L1 --> 10:L3 --> 9
hops: 3 path: 7:L2 --> 8:L1 --> 10:L3 --> 9
src: 7 dest: 10 hops: 1 path: 7:L1 --> 10
hops: 2 path: 7:L2 --> 8:L1 --> 10
----------------------------------------------------------------------------------------
src: 8 dest: 1 hops: 2 path: 8:L1 --> 10:L1 --> 1
hops: 3 path: 8:L3 --> 7:L1 --> 10:L1 --> 1
src: 8 dest: 2 hops: 3 path: 8:L1 --> 10:L1 --> 1:L3 --> 2
hops: 4 path: 8:L3 --> 7:L1 --> 10:L1 --> 1:L3 --> 2
src: 8 dest: 3 hops: 4 path: 8:L1 --> 10:L1 --> 1:L3 --> 2:L2 --> 3
hops: 5 path: 8:L3 --> 7:L1 --> 10:L1 --> 1:L3 --> 2:L2 --> 3
src: 8 dest: 4 hops: 4 path: 8:L1 --> 10:L1 --> 1:L3 --> 2:L1 --> 4
hops: 5 path: 8:L3 --> 7:L1 --> 10:L1 --> 1:L3 --> 2:L1 --> 4
src: 8 dest: 5 hops: 4 path: 8:L1 --> 10:L1 --> 1:L3 --> 2:L3 --> 5
hops: 5 path: 8:L3 --> 7:L1 --> 10:L1 --> 1:L3 --> 2:L3 --> 5
src: 8 dest: 6 hops: 3 path: 8:L1 --> 10:L3 --> 9:L2 --> 6
hops: 4 path: 8:L3 --> 7:L1 --> 10:L3 --> 9:L2 --> 6
src: 8 dest: 7 hops: 1 path: 8:L3 --> 7
hops: 2 path: 8:L1 --> 10:L0 --> 7
src: 8 dest: 8 N/A
src: 8 dest: 9 hops: 2 path: 8:L1 --> 10:L3 --> 9
hops: 3 path: 8:L3 --> 7:L1 --> 10:L3 --> 9
src: 8 dest: 10 hops: 1 path: 8:L1 --> 10
hops: 2 path: 8:L3 --> 7:L1 --> 10
----------------------------------------------------------------------------------------
src: 9 dest: 1 hops: 2 path: 9:L1 --> 10:L1 --> 1
src: 9 dest: 2 hops: 3 path: 9:L1 --> 10:L1 --> 1:L3 --> 2
src: 9 dest: 3 hops: 4 path: 9:L1 --> 10:L1 --> 1:L3 --> 2:L2 --> 3
src: 9 dest: 4 hops: 4 path: 9:L1 --> 10:L1 --> 1:L3 --> 2:L1 --> 4
src: 9 dest: 5 hops: 4 path: 9:L1 --> 10:L1 --> 1:L3 --> 2:L3 --> 5
src: 9 dest: 6 hops: 1 path: 9:L2 --> 6
src: 9 dest: 7 hops: 2 path: 9:L1 --> 10:L0 --> 7
src: 9 dest: 8 hops: 2 path: 9:L1 --> 10:L2 --> 8
11
src: 9 dest: 9 N/A
src: 9 dest: 10 hops: 1 path: 9:L1 --> 10
----------------------------------------------------------------------------------------
src: 10 dest: 1 hops: 1 path: 10:L1 --> 1
src: 10 dest: 2 hops: 2 path: 10:L1 --> 1:L3 --> 2
src: 10 dest: 3 hops: 3 path: 10:L1 --> 1:L3 --> 2:L2 --> 3
src: 10 dest: 4 hops: 3 path: 10:L1 --> 1:L3 --> 2:L1 --> 4
src: 10 dest: 5 hops: 3 path: 10:L1 --> 1:L3 --> 2:L3 --> 5
src: 10 dest: 6 hops: 2 path: 10:L3 --> 9:L2 --> 6
src: 10 dest: 7 hops: 1 path: 10:L0 --> 7
hops: 2 path: 10:L2 --> 8:L3 --> 7
src: 10 dest: 8 hops: 1 path: 10:L2 --> 8
hops: 2 path: 10:L0 --> 7:L2 --> 8
src: 10 dest: 9 hops: 1 path: 10:L3 --> 9
src: 10 dest: 10 N/A
----------------------------------------------------------------------------------------
=============================================================================
This the case_2.rot file:
*******************************************************************
* *
* ROUTING TABLE GENERATOR - Rev. 1.1 - Mario Stalker *
* *
* SYSCON CORPORATION November 1989 (c) *
* *
*******************************************************************
Input file: case_2.nif Date and time: Tue Apr 3 07:07:47 1990
num_nodes 10;
node 1;
dest_node 1;
dest_node 2, 3;
dest_node 3, 3;
dest_node 4, 3;
dest_node 5, 3;
dest_node 6, 2;
dest_node 7, 2;
dest_node 8, 2;
dest_node 9, 2;
dest_node 10, 2;
12
node 2;
dest_node 1, 0;
dest_node 2;
dest_node 3, 2, 1; <-- This indicates two paths
dest_node 4, 1, 2;
dest_node 5, 3;
dest_node 6, 0;
dest_node 7, 0;
dest_node 8, 0;
dest_node 9, 0;
dest_node 10, 0;
node 3;
dest_node 1, 3, 2;
dest_node 2, 3, 2;
dest_node 3;
dest_node 4, 2, 3;
dest_node 5, 3, 2;
dest_node 6, 3, 2;
dest_node 7, 3, 2;
dest_node 8, 3, 2;
dest_node 9, 3, 2;
dest_node 10, 3, 2;
node 4;
dest_node 1, 0, 3;
dest_node 2, 0, 3;
dest_node 3, 3, 0;
dest_node 4;
dest_node 5, 0, 3;
dest_node 6, 0, 3;
dest_node 7, 0, 3;
dest_node 8, 0, 3;
dest_node 9, 0, 3;
dest_node 10, 0, 3;
node 5;
dest_node 1, 2;
dest_node 2, 2;
dest_node 3, 2;
dest_node 4, 2;
dest_node 5;
dest_node 6, 2;
dest_node 7, 2;
dest_node 8, 2;
dest_node 9, 2;
dest_node 10, 2;
node 6;
dest_node 1, 3;
dest_node 2, 3;
dest_node 3, 3;
dest_node 4, 3;
dest_node 5, 3;
dest_node 6;
dest_node 7, 3;
dest_node 8, 3;
dest_node 9, 3;
dest_node 10, 3;
13
node 7;
dest_node 1, 1, 2;
dest_node 2, 1, 2;
dest_node 3, 1, 2;
dest_node 4, 1, 2;
dest_node 5, 1, 2;
dest_node 6, 1, 2;
dest_node 7;
dest_node 8, 2, 1;
dest_node 9, 1, 2;
dest_node 10, 1, 2;
node 8;
dest_node 1, 1, 3;
dest_node 2, 1, 3;
dest_node 3, 1, 3;
dest_node 4, 1, 3;
dest_node 5, 1, 3;
dest_node 6, 1, 3;
dest_node 7, 3, 1;
dest_node 8;
dest_node 9, 1, 3;
dest_node 10, 1, 3;
node 9;
dest_node 1, 1;
dest_node 2, 1;
dest_node 3, 1;
dest_node 4, 1;
dest_node 5, 1;
dest_node 6, 2;
dest_node 7, 1;
dest_node 8, 1;
dest_node 9;
dest_node 10, 1;
node 10;
dest_node 1, 1;
dest_node 2, 1;
dest_node 3, 1;
dest_node 4, 1;
dest_node 5, 1;
dest_node 6, 3;
dest_node 7, 0, 2;
dest_node 8, 2, 0;
dest_node 9, 3;
dest_node 10;
==============================================================================
QUESTION #2 How exactly can be done the "on-the-fly" virtual reconfiguration
mentioned page 6 ?
ANSWER: One set of routing tables (selected in the command line) is
loaded during the initialization routine. Subsequent sets of
routing tables can be dynamically loaded by the application
program by simply sending the individual tables as "datagrams".
This is done by one process working in the host transputer which
reads the new set of routing tables from a file and then send
them as "datagrams" to other processes (executing in other
14
nodes). Each of these processes will receive the corresponding
new table and overwrite the previous "active" routing table. The
application programmer must take provisions to stop "datagram
routing" by any other processes while the new set of routing
tables are being dynamically loaded.
QUESTION #3 Is the Master Routing Table == the set of the Datagram Routing
Tables?
ANSWER: Yes, as you can see in the example above, the "case_1.rot" and
"case_2.rot" files contains a set of 10 individual routing tables
(one for each node). These tables are stored in a file and
distributed to every node during the initialization routine, or
when the tables are dynamically reloaded.
QUESTION #4 Is the Destination Channel # of the Process Connectivity Table an
absolute number identifying that channel through the whole
application? An example of call to the I/O functions would have
been useful too. I am not very sure to understand that Channel
#01 links AP2 to AP4 in one direction ,and AP4 to AP1 in the
other one?
ANSWER: The explanation about "The Process Connectivity Table" which I
provided in the Technical Report is a little bit confusing. Let
me workout an example and try to explain this in a more straigh-
forward manner. I will also rewrite that portion of the
Technical Report.
<<<< I HOPE I DON'T CONFUSE YOU EVEN MORE!!! >>>>
IF YOU HAVE SOME .NIF FILES, YOU CAN E-MAIL THEM TO ME. I WILL RUN THEM
THROUGH THE RTG TOOL AND SEND YOU THE GENERATED .LIS AND .ROT FILES.
*****************************************************************************
For more information contact: Mario D. Stalker
SYSCON Corporation
9841 Broken Land Pkwy, Suite 210
Columbia, Maryland 21046
Telephone: (301) 381-8319
FAX: (301) 381-8321
E-Mail: stalker@capsrv.jhuapl.edu
_____________________________________________________________________________
| |
| SYSCON Corporation, a subsidiary of Harnischfeger Industries, Inc. |
| Corporate Headquarters |
| 1000 Thomas Jefferson Street, N.W. |
| Washington, D.C. 20007 |
| |
| System Engineering, Computer Systems, Training and Simulation Systems, |
| Facilities Management, Technical Services, Hardware/Software Products. |
| |
| Parallel Processing Architectures, Real Time Programming, Software Tools |
| Development. |
| |
|---------------------------------------------------------------------------|
*****************************************************************************
Technical Details
Message-ID:
<9009242117.AA07215@theory.TN.CORNELL.EDU>Path:
arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!tut.cis.ohio-state.edu!ucbvax!CAPSRV.JHUAPL.EDU!stalkerShow Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!tut.cis.ohio-state.edu!ucbvax!CAPSRV.JHUAPL.EDU!stalker
From: stalker@CAPSRV.JHUAPL.EDU ("M STALKER , OFFSITE", SYSCON)
Newsgroups: comp.sys.transputer
Subject: VCX Questions/Answers
Message-ID: <9009242117.AA07215@theory.TN.CORNELL.EDU>
Date: 24 Sep 90 21:11:00 GMT
Sender: daemon@ucbvax.BERKELEY.EDU
Organization: The Internet
Lines: 858