dgord(1)

✨ dgord β€” the girlies' guide to parallel sparse matrix ordering ✨

okay so bestie, this is dgord(1) from the PT-Scotch user's manual, and it's literally the tool that reorders your sparse matrix graphs in parallel. no cap. let's get into it πŸ’…


🌸 NAME 🌸

dgord β€” compute sparse matrix orderings of graphs in parallel πŸ¦‹


πŸŽ€ SYNOPSIS πŸŽ€

dgord [options] [gfile] [ofile] [lfile]

πŸ’– DESCRIPTION πŸ’–

so dgord computes, in a parallel way (main character energy fr), an ordering of a Scotch source graph that represents the pattern of some symmetric sparse matrix. slay.

the source graph file, gfile, is either one centralized graph file, or a whole set of files representing fragments of a distributed graph. the resulting ordering gets stored in ofile. and any eventual logging info β€” like the stuff option -v produces β€” gets sent to lfile. iykyk. 🫢

when you don't specify file names? data is read from standard input and written to standard output. the standard streams can also be explicitly represented by a dash '-'. iconic.

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, like in 'brol.grf.bz2' or '-.gz'. the compression formats that can be supported are:

  • the bzip2 format ('.bz2')
  • the gzip format ('.gz')
  • the lzma format ('.lzma')
ngl bestie, dgord bases on implementations of the MPI interface to spread work across the processing elements. so it's not likely to be run directly β€” instead you run it through some launcher command such as mpirun. periodt.

✨ OPTIONS ✨

  • -copt β€” choose the default ordering strategy according to one or several options among these cuties:
    • b β€” enforce load balance as much as possible.
    • q β€” privilege quality over speed (default).
    • s β€” privilege speed over quality.
    • t β€” enforce safety.
    • x β€” enforce scalability.
  • -h β€” display some help πŸ₯Ί
  • -mmfile β€” save column block mapping data to file mfile. mapping data specifies, for each vertex, the index of the column block to which this vertex belongs. so organized tbh.
  • -ostrat β€” use parallel graph ordering strategy strat (peep the PT-Scotch user's manual for more info πŸ‘€).
  • -rpnum β€” set root process for centralized files (default is 0).
  • -ttfile β€” save partitioning tree data to file tfile. partitioning tree data specifies, for each vertex, the index of the first vertex of the parent block of the block to which the vertex belongs. altogether with the mapping data provided in file mfile, it allows one to rebuild the separator tree of the nested dissection process. very giving "reconstructed the whole family tree" vibes 🌈
  • -V β€” display program version and copyright πŸ“œ
  • -vverb β€” set verbose mode to verb. it's a set of one or more characters which can be:
    • s β€” strategy information.
    • t β€” timing information.

πŸ”₯ EXAMPLES πŸ”₯

run dgord on 5 processing elements to reorder matrix graph brol.grf and save the resulting ordering to file brol.ord, using the default sequential graph ordering strategy:

$ mpirun -np 5 dgord brol.grf brol.ord

run dgord on 5 processing elements to reorder the distributed matrix stored on graph fragment files brol5-0.dgr to brol5-4.dgr, and save the resulting ordering to file brol.ord (see dgscat(1) for an explanation of the '%p' and '%r' sequences in names of distributed graph fragments):

$ mpirun -np 5 dgord brol%p-%r.dgr brol.ord

πŸ’œ SEE ALSO πŸ’œ

and also… the PT-Scotch user's manual πŸ“–


πŸ‘‘ AUTHOR πŸ‘‘

Francois Pellegrini <francois.pellegrini@labri.fr> πŸ’Œ


okay that's the whole thing bestie, go forth and reorder some graphs 🧚✨ this was the PT-Scotch user's manual, dated 16 June 2026 β€” mwah, take care of her πŸ«ΆπŸ’–πŸŽ€

πŸ“¦ where this page comes from