ARCR1@vaxa.york.ac.uk (11/27/88)
Dear all, First of all, apologies to those of you who will receive this message twice -- Im sending it to both the occam and the transputer mailing lists. In optimising my application for running on a large array of transputers (The Edinburgh Concurrent Supercomputer) I would like to take advantage of the advertised (INMOS tech. notes etc.) capability of the transputer to drive its links at the same time as doing work in the cpu -- ie to overlap useful work with communication. My reading of the specificaton of the T800 suggests that a link running at 10 MHz, and sending data in one direction should take only one cyle in 200 from the cpu. My first question is how will this be affected by doing bidirectional comms on the link? question 2 is : Why do I find that, even when the time for communicating data is a factor of ten less than the time taken by the work, the overlap is still only of the order of 50% (ie the time taken for both together is greater than the time for just the work by an ammount equal to half the time taken by the communication by itself) I suspect that my data are in off-chip memory (and I dont know what spec. that memory is on this machine), so my figure of 1 cycle in 200 will be modified, but by how much ? I hope one (or even several) of you techies out there can come up with some convincing reasons for this behaviour, or even a way of doing something about it, because at the moment it seems that this claimed advantage of the transputer is only an advantage when it doesnt matter much anyway! Thanks in advance Andy Raine