Iliffe vector

Iliffe vector

In computer programming, an Iliffe vector is a data structure used to implement multi-dimensional arrays. Named after John K. Iliffe, an Iliffe vector for an "n" dimensional array (where "n">2) consists of a vector (or 1 dimensional array) of pointers to an "n"−1 dimensional array. They are often used to avoid the need for expensive multiplication operations when performing address calculation on an array element. They can also be used to implement triangular arrays, or other kinds of irregularly shaped arrays.

Their disadvantages include the need for multiple dependent pointer indirections to access an element, and the extra work associated with determining the next row in an n-dimensional array to allow an optimising compiler to prefetch it. Both of these cause slow downs on systems where the CPU is significantly faster than main memory.

The Iliffe vector for a 2-dimensional array is simply a vector of pointers to vectors of data, i.e., the Iliffe vector represents the columns of an array where each column element is a pointer to a row vector.

Multidimensional arrays in languages such as Java and Atlas Autocode are implemented as Iliffe vectors.

References

*cite journal| author=John K. Iliffe|title=The Use of The Genic System in Numerical Calculations|journal=Annual Review in Automatic Programming|volume=2|year=1961|pages=1–28|doi=10.1016/S0066-4138(61)80002-5,see page 25


Wikimedia Foundation. 2010.

Игры ⚽ Поможем сделать НИР

Look at other dictionaries:

  • Array data type — Not to be confused with Array data structure. In computer science, an array type is a data type that is meant to describe a collection of elements (values or variables), each selected by one or more indices that can be computed at run time by the …   Wikipedia

  • Array — In computer science an array [Paul E. Black, array , in Dictionary of Algorithms and Data Structures , Paul E. Black, ed., U.S. National Institute of Standards and Technology. 26 August 2008 (accessed 10 September 2008).… …   Wikipedia

  • Irregular matrix — An irregular matrix, or ragged matrix, can be described as a matrix that has a different number of elements in each row. Ragged matrices are not used in linear algebra, since standard matrix transformations cannot be performed on them, but they… …   Wikipedia

  • ICL Distributed Array Processor — The Distributed Array Processor (DAP) produced by International Computers Limited (ICL) was the world s first commercial massively parallel computer. The original paper study was complete in 1972 and building of the prototype began in 1974. The… …   Wikipedia

  • Isaac Newton — Sir Isaac Newton …   Wikipedia

  • Mesocyclops — Scientific classification Kingdom: Animalia Phylum: Arthropoda Subphylum: Cr …   Wikipedia

  • Direction finding — (DF) refers to the establishment of the direction from which a received signal was transmitted. This can refer to radio or other forms of wireless communication. By combining the direction information from two or more suitably spaced receivers… …   Wikipedia

  • Kilimanjaro — Para otros usos de este término, véase Kilimanjaro (desambiguación). Kilimanjaro Imagen del Kibo (5892 m), en diciembre de 2006 …   Wikipedia Español

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”