db_connect: Could not connect to paper db at "wotug@dragon.kent.ac.uk"
db_connect: Could not connect to paper db at "wotug@dragon.kent.ac.uk"
%T tranx86 \-\- An Optimising ETC to IA32 Translator
db_connect: Could not connect to paper db at "wotug@dragon.kent.ac.uk"
%A Frederick R. M. Barnes
db_connect: Could not connect to paper db at "wotug@dragon.kent.ac.uk"
%E Alan G. Chalmers, Majid Mirmehdi, Henk Muller
%B Communicating Process Architectures 2001
%X This paper describes tranx86, a program which converts
Extended Transputer Code (ETC) from a modified Inmos occam
compiler, into IA32 code for execution on the Intel i386
family of processors within the KRoC/Linux system. Several
optimisations are employed in an attempt to maximise
performance on this family of processors, including
optimisations in the CCSP run\-time kernel. These include a
graph\-colouring type register allocation scheme and various
inlining of code. While tranx86 is mostly architecture
dependent, effort has been made to allow the use of
arbitrary schedulers, although currently CCSP is the only
fully supported one. Various benchmark programs are used to
compare the performance of this translator with the old
system, giving significant time wins in some cases. For the
commstime benchmark program on an 800 MHz Pentium\-3, the
old KRoC/Linux system gave 233 ns per communication (2
context switches); the new one, with optimisations and
inlining, gives 67 ns per communication \-\- more than a
3\-fold reduction in overheads.