5files and data structures – Scotch Brand 5.1.10 User Manual

Page 19

Advertising
background image

Scotch

can now handle compressed streams on the fly, in several widely used

formats such as gzip, bzip2 or lzma. Please refer to Section 6.2 for more informa-
tion.

4.2

Changes from version 5.0

A new integer index type has been created in the Fortran interface, to address array
indices larger than the maximum value which can be stored in a regular integer.
Please refer to Section 8.3 for more information.

5

Files and data structures

For the sake of portability, readability, and reduction of storage space, all the data
files shared by the different programs of the Scotch project are coded in plain
ASCII text exclusively. Although we may speak of “lines” when describing file for-
mats, text-formatting characters such as newlines or tabulations are not mandatory,
and are not taken into account when files are read. They are only used to provide
better readability and understanding. Whenever numbers are used to label objects,
and unless explicitely stated, numberings always start from zero, not one.

5.1

Graph files

Graph files, which usually end in “.grf” or “.src”, describe valuated graphs, which
can be valuated process graphs to be mapped onto target architectures, or graphs
representing the adjacency structures of matrices to order.

Graphs are represented by means of adjacency lists: the definition of each

vertex is accompanied by the list of all of its neighbors, i.e. all of its adjacent arcs.
Therefore, the overall number of edge data is twice the number of edges.

Since version 3.3 has been introduced a new file format, referred to as the “new-

style” file format, which replaces the previous, “old-style”, file format. The two
advantages of the new-style format over its predecessor are its greater compacity,
which results in shorter I/O times, and its ability to handle easily graphs output
by C or by Fortran programs.

Starting from version 4.0, only the new format is supported.

To convert

remaining old-style graph files into new-style graph files, one should get version 3.4
of the Scotch distribution, which comprises the scv file converter, and use it to
produce new-style Scotch graph files from the old-style Scotch graph files which
it is able to read. See section 6.3.5 for a description of gcv, formerly called scv.

The first line of a graph file holds the graph file version number, which is cur-

rently 0. The second line holds the number of vertices of the graph (referred to as
vertnbr

in libScotch; see for instance Figure 16, page 51, for a detailed example),

followed by its number of arcs (unappropriately called edgenbr, as it is in fact equal
to twice the actual number of edges). The third line holds two figures: the graph
base index value (baseval), and a numeric flag.

The graph base index value records the value of the starting index used to

describe the graph; it is usually 0 when the graph has been output by C programs,
and 1 for Fortran programs. Its purpose is to ease the manipulation of graphs within
each of these two environments, while providing compatibility between them.

19

Advertising