• No results found

Interaction of Cache Size and Network Topology (Case 2)

5.5 The Interaction of Cache Size and Network Topology

5.5.2 Interaction of Cache Size and Network Topology (Case 2)

The DP7 problem was also analyzed using workstations which are all residing on different computing hosts. In this situation, we expect communication between the workstations to take longer than the previously discussed case in which workstations are on the same computing host. In addition, other factors that may affect the performance of the cache in this case include the order in which request and response messages are received on the different workstations and the speed at which communication between any two workstations is completed. These factors, which can not usually be controlled affect the number of requests sent and received between the workstations. The result obtained from executing the DP7 model on workstations residing on different computing hosts is shown in Figure 5.6.

0

100000

200000

300000

400000

500000

600000

Cache size

130000

140000

150000

160000

170000

180000

190000

200000

210000

220000

Number of requests sent

different_hosts

Figure 5.6: Number of requests sent with different cache sizes in Case 2

Similarly to case 1 discussed earlier, the result shows that the number of network transaction reduces as the cache size is increased until the optimal cache size is reached. However, increasing the cache size above the optimal size causes the number of requests to vary within a close range

unlike in case 1 where the number of requests remains almost the same. This variation can be attributed to the order in which messages are received on the different workstations. That is, in case 1, it is most likely that messages are received at their destinations according to the order in which they were sent from different workstations so that once the optimal cache size is reached, the number of requests remain almost the same. On other hand, in case 2 the order may differ depending on the interconnection between any two communicating workstations and this may in turn affect the number of requests sent even for different instances of the same problem. Since the experiment for each cache size examined is conducted individually, the number of requests in each situation varies within a close range depending on how messages were sent on the network in that particular situation. We note that the optimal cache size in this case is also almost the same as in case 1 which is around 200000. The time taken to complete BDD manipulation also follows the same trend as the number of requests sent when the cache size is changed.

However, one major difference between the case in which workstations are on the same host and when they are on different hosts is that in the first case, the total number of requests sent is lesser than those sent in the second case even if the same cache sizes are used. For example, in case 1 discussed above, the number of requests sent when using caches sizes between 10000 and 500000 ranges from 115000 to 60000 requests while in case 2, it ranges between 220000 and 130000. This difference can be attributed to the order in which requests and response messages are received on the workstations which is usually different with every execution of a problem.

5.5.3 Interaction of Cache Size and Network Topology (Case 2)

Another possible interconnection of workstations used for processing is to have a mixture of multiprocessor and single processor machines on the network. The experiment was conducted by allowing the grid engine to assign workstations to available computing hosts randomly. Thus, there are computing hosts on which only one workstation resides while other computing hosts may have two or more workstations running on them. Using the same number of workstations used in the earlier cases for theDP7 problem, the result obtained in this situation shows that for any particular cache size, the number of requests sent among the workstations can vary between some maximum and minimum values. An average of the possible maximum and

minimum values found for different cache sizes are shown in Figure 5.7.

0

100000

200000

300000

400000

500000

600000

Cache size

40000

60000

80000

100000

120000

140000

160000

180000

200000

Number of requests sent

minimum_requests

maximum_requests

Figure 5.7: Number of requests sent with different cache sizes in Case 3

Some of the reasons responsible for the variations in the number of requests sent during different executions using the same cache size include:

1. The assignment of workstations on available computing hosts, which in turn affects the rate at which communication between two workstations can be completed.

2. The order in which messages meant for the same workstation are received.

For example, we observed that for any particular cache size, a lower number of requests are sent when more workstations are on the same computing hosts while a higher number of requests are sent otherwise. The number of requests sent also increases as the workstations are assigned to more different computing hosts. This result can be seen as a combination of case 1 and case 2 discussed earlier. Thus, the number of requests sent can be anything between the number of requests in case 1 and those in case 2.

In addition, another information obtainable from the result is that even though the number of requests sent can be anything within an interval, as the cache size increases the number of requests sent tends to certain maximum or minimum values which becomes almost stable after the optimal cache size is reached. We note that the time taken to complete BDD manipulation in this case follows the same trend as the number of requests sent. Thus, the time taken also vary between certain maximum and minimum values which depends on the number of requests that are sent.

In summary, considering the three different cases of interconnection of workstations discussed, case 1 results in a better performance of the cache than case 2 and case 3 since it is not affected by issues pertaining to the network. However, the difference between case 1 and case 2 is not so much as the results obtained in both cases show a major similarity (that is, number of requests sent reduces as cache size increases until the optimal cache size is reached). Thus, the number of requests that will be sent when the cache size is increased and the time it will take to complete BDD manipulation can be predicted in both cases. Case 3 shows that the number of requests sent when a particular cache size is used can vary between two different values depending on the connection between the workstations used for manipulation and the order in which messages are received. We observe that the minimum and maximum number of requests that can be sent in case 3 are almost the same as the number of requests sent in case 1 and case 2, respectively. Thus pointing to the fact that case 3 is a combination of both case 1 and case 2. Moreover, we can say that the use of a single computing host for BDD manipulation gives the lower limit of the number of requests that can be sent during BDD manipulation while the upper limit is obtained when each of the workstations are on different computing hosts. Although these two values are relatively close for theDP7problem, the difference may likely increase for larger problems. However, for predictability, it is better to use either multiprocessor systems or an interconnection of single processor machines when making use of the distributed BDD package. Lastly, in all the three cases discussed, we note again that the optimal cache size remains approximately the same (200000 for theDP7problem) and the number of requests sent remains within a very close range or approximately the same when the cache size is increased beyond the optimal cache size.

Related documents