---
name: "ptscotch_dgscat"
section: "1"
platform: "linux"
package: "ptscotch"
version: "5.1.8a.dfsg-2"
release: "Debian 6.0 (Squeeze)"
platforms: ["linux"]
url: "https://new.carta.tech/ptscotch_dgscat"
---

# ptscotch\_dgscat(1)

build distributed source graph file fragments from a centralized source graph file

## NAME

**ptscotch\_dgscat** - build distributed source graph file fragments from a centralized source graph file

## SYNOPSIS

```
ptscotch_dgscat [options] [igfile] [ogfile]
```

## DESCRIPTION

**The ptscotch\_dgscat program reads a centralized source graph** *igfile* **and** **writes it back on the form of a set of files** *ogfile* **representing** **fragments of a distributed source graph.**

**When file names are not specified, data is read from standard input** **and written to standard output. Standard streams can also be** **explicitly represented by a dash '-'.**

**When the proper libraries have been included at compile time, dgord** **can directly handle compressed graphs, both as input and output. A** **stream is treated as compressed whenever its name is postfixed with** **a compressed file extension, such as in 'brol.grf.bz2' or '-.gz'. The** **compression formats which can be supported are the bzip2 format** **('.bz2'), the gzip format ('.gz'), and the lzma format ('.lzma', on** **input only).**

**dgord bases on implementations of the MPI interface to spread work** **across the processing elements. It is therefore not likely to be run** **directly, but instead through some launcher command such as mpirun.**

## DISTRIBUTED FILE NAMES

**In order to tell whether programs should read from, or write to, a** **single file located on only one processor, or to multiple instances** **of the same file on all of the processors, or else to distinct files** **on each of the processors, a special grammar has been designed,** **which is based on the '%' escape character. Four such escape** **sequences are defined, which are interpreted independently on every** **processor, prior to file opening. By default, when a filename is** **provided, it is assumed that the file is to be opened on only one of** **the processors, called the root processor, which is usually process** **$0$ of the communicator within which the program is run. The index** **of the root processor can be changed by means of the -r** **option. Using any of the first three escape sequences below will** **instruct programs to open in parallel a file of name equal to the** **interpreted filename, on every processor on which they are run.**

- **%p**

  **Replaced by the number of processes in the global communicator in** **which the program is run. Leads to parallel opening.**

- **%r**

  **Replaced on each process running the program by the rank of this** **process in the global communicator. Leads to parallel opening.**

- **%-**

  **Discarded, but leads to parallel opening. This sequence is mainly** **used to instruct programs to open on every processor a file of** **identical name. The opened files can be, according whether the** **given path leads to a shared directory or to directories that** **are local to each processor, either to the opening of multiple** **instances of the same file, or to the opening of distinct files** **which may each have a different content, respectively (but in** **this latter case it is much recommended to identify files by** **means of the '%r' sequence).**

- **%%**

  **Replaced by a single '%' character. File names using this escape** **sequence are not considered for parallel opening, unless one or** **several of the three other escape sequences are also present.**

**For instance, filename 'brol' will lead to the opening of file 'brol'** **on the root processor only, filename '%-brol' (or even 'br%-ol') will** **lead to the parallel opening of files called 'brol' on every** **processor, and filename 'brol%p-%r' will lead to the opening of files** **on which the program were to run.**

## OPTIONS

- **-c**

  **Check the consistency of the input source graph after** **loading it into memory.**

- **-h**

  **Display some help.**

- **-r*pnum***

  **Set root process for centralized files (default is 0).**

- **-V**

  **Display program version and copyright.**

## EXAMPLE

**Run ptscotch\_dgscat on 5 processing elements to scatter centralized graph** **file brol.grf into 5 gzipped file fragments brol5-0.grf.gz to** **brol5-4.grf.gz.**

```
      $ mpirun -np 5 ptscotch_dgscat brol.grf brol%p-%r.grf.gz
```

## SEE ALSO

**[ptscotch\_dgtst(1)](/ptscotch_dgtst/1.md), [ptscotch\_dgord(1)](/ptscotch_dgord/1.md), [scotch\_gmk\_hy(1)](/scotch_gmk_hy/1.md).**

**PT-Scotch user's manual.**

## AUTHOR

**Francois Pellegrini \<francois.pellegrini@labri.fr\>**
