Mode :
Check : XHTML 1.0 Strict

Performance improvement with the Dx314 ANSI C toolset

October 1992
INMOS document number: 72-TDS-354-00
40 Pages

© INMOS Limited 1992.

About this document

frontcover 72-TDS-354-00

This document provides advice about how to maximize the performance of the toolset. It brings together information provided in other toolset documents particularly from the Language and Libraries Reference Manual.

The document describes the layout of code and data in memory for programs developed with the ANSI C Dx314 Toolset. It then goes on to describe methods of improving code in order to:

  • minimize the running time of the program;
  • reduce the size of the program; either code or data or both.

Note: details of how to manipulate the software virtual through-routing mechanism are given in the User Guide.

Contents

	Preface
		Host versions
		About this document
		About the toolset documentation set
		Other documents
		occam and FORTRAN toolsets
		Documentation conventions

1	Introduction
	1.1	Transputer architecture
	1.2	General issues
		1.2.1	Space versus time
		1.2.2	Processor classes and types
		1.2.3	Full versus reduced libraries
		1.2.4	Start-up code
	1.3	Obtaining information

2	Memory layout
	2.1	Memory layout for configured programs
	2.2	Memory layout for non-configured programs
	2.3	Code layout
	2.4	Static data layout
		2.4.1	Local static data layout
		2.4.2	Constant static objects
	2.5	Stack layout
	2.6	Layout of structures
	2.7	Memory mapped devices

3	Improving code
	3.1	General optimizations
	3.2	Loop unrolling
	3.3	Pointer update versus array subscripting
	3.4	Optimizing switch statements
	3.5	Use ANSI function prototypes
	3.6	Use floating point in single precision where possible
	3.7	Short integers
	3.8	Chars
	3.9	Use ANSI C mem.. functions
	3.10	Keep variables as local as possible
	3.11	Access to static data
	3.12	Large objects
	3.13	Built-in, inlined routines
	3.14	Channel communication
	3.15	External function definitions

4	Other features
	4.1	Arithmetic right shift of signed integers
	4.2	Signedness of plain chars

5	Running benchmarks
	5.1	General rules

	Index

arrow upBack to the top

Last modification: 12.11.2014 12:28:55