Date: | Fri, 27 Jul 2007 12:35:51 -0500 |
---|---|
From: | "Lide Duan" <leaderduan@xxxxxxxxx> |
Subject: | Re: [Gems-users] Change in ruby network code? |
Mike, I think I have found out what the problem was. In Topology::make2DTorus(), the number of torus switches is determined by : int numberOfTorusSwitches = m_nodes/MachineType_base_level(MachineType_NUM); which is actually m_nodes/3. But in my configuration, the simulated system has 16 processors, 32 L2 banks and 16 momeries. In this case, m_nodes = 64, then numberOfTorusSwitches = 64/3 = 21 which is not a square of some number. The first 16 switches is actually used to form a 4x4 torus network. The problem was generated when the following souce code deals with the last 5 switches which are actually unused. I explictly set the numberOfTorusSwitches to 16, and the problem is gone. But I am still concerning the protocol as you mentioned. The protocol I am using now is MOESI_CMP_directory, and the 16p are placed on 16 chips (1 p on 1 chip). Actually I want to observe the network behavior of a 16p CMP, but in order to utilize the auto-generated TORUS2D interconnet, I placed each processor on a single chip, but reduced the latencies to make the 16p communicate like on a single chip. Is it resonable to do this? Is there any restriction on the protocol can be used if I do so? Lide On 7/27/07, Mike Marty <mikem@xxxxxxxxxxx> wrote: Lide, |
[← Prev in Thread] | Current Thread | [Next in Thread→] |
---|---|---|
|
Previous by Date: | Re: [Gems-users] Change in ruby network code?, Mike Marty |
---|---|
Next by Date: | Re: [Gems-users] debugging network, Dave Z. |
Previous by Thread: | Re: [Gems-users] Change in ruby network code?, Mike Marty |
Next by Thread: | Re: [Gems-users] Change in ruby network code?, Mike Marty |
Indexes: | [Date] [Thread] |