[comp.sys.transputer] Mixed T2 & T4 storage allocation problem

ROSS@bio-medical-physics.aberdeen.ac.uk (09/12/89)

QUOTE from Inmos technical Note 24, Exploring multiple transputer arrays,
page 18 section 4 :
" The memory requirement of programs is determined by the compiler as the
number of words needed.  However, running a program on a 16-bit transputer may
require more words of storage than if the same program was run on a 32-bit
transputer. For example, [4]BYTE array requires 1 word of storage on a T4, but
2 words on a T2.  Since, as is noted in (1) above, the program must be compiled
for a 32-bit transputer, the allocation of storage must be forced to be
suitable for 16-bit transputers by declaring arrays as follows:

[ArraySize][2]BYTE dummyArray:
[ArraySize]BYTE array IS dummyArray[0]:

The same applies for boolean and INT16 arrays.   "

I can see that storage requirements are different on different word size
machines but I don't understand the example shown in the quote.  What is
actually happening and why does this work ?  They say the same applies to
boolean and INT16 arrays but don't mention INT32, why not ?  Also what about
non vector storage, surely you need to take special care with those as well?

Can anyone elighten me on this matter as I am developing an application which
must explore and run on a mixed network of T2's and T4's (with no external
memory) and am not sure exactly how to continue.


yours,
Philip Ross