Add a upcxx-info script

Issue #543 resolved
Dan Bonachea created an issue

We've recently encountered several situations where it would be useful to have a upcxx-info script that dumps information to stdout about the current UPC++ install tree.

The output should include human-readable and easily machine parsable versions at least the following fields:

  • UPC++ configure line
  • Bulld system name uname -a and timestamp
  • UPC++ and GASNet versions, exactly as reported by upcxx --version
  • List of supported networks and the default network (as set at install)
  • C++ compiler family name and version (as separate fields)
  • Contents of each field in $(builddir)/Makefile that remain meaningful post-install. eg:
    • CONFIG_CC, CONFIG_CXX
    • UPCXX_CUDA*
    • UPCXX_HIP*
    • UPCXX_VALGRIND, UPCXX_DISCONTIG, UPCXX_MPSC_QUEUE, UPCXX_FORCE_LEGACY_RELOCATIONS
    • UPCXX_BASH, UPCXX_PYTHON, GMAKE
  • Complete/actual GASNet configure line for codemode=opt as invoked by do-gasnet-configure (eg including GASNET_CONFIGURE_ARGS, AND the implicit arguments we add)d
  • GASNet configuration summary from bld/gasnet.opt/config.txt

This is mostly intended to be used post-install once all the build artifacts are wiped out. So it needn't work/exist in the build tree.

This enhancement has multiple "clients":

  1. Post-install user support via email
  2. Post-install debugging of installation parameters
  3. Spack package logic for automated detection of UPC++ installs

Comments (4)

  1. Dan Bonachea reporter

    issue #543: Add upcxx -info argument

    New -info argument can be appended to any upcxx command, suppressing compilation behavior and instead dumping lots of details about the UPC++/GASNet libraries and configuration in-use.

    • Make some cosmetic improvements to -help

    • Fix upcxx.sh prefix computation for in-build-tree upcxx, where it was incorrectly selecting the upcxx.* directory instead of the parent bld directory which is more directly analogous to the installed prefix directory. This discrepancy had no visible effect, as it was masked in all previous uses.

    Resolves issue #543

    → <<cset b6d5c91cb446>>

  2. Dan Bonachea reporter

    issue #543: Add upcxx-info script

    New upcxx-info wrapper script forwards to upcxx -info. The two are functionality identical, but the former raises visibility of the command, and makes it easier to test for -info support.

    Resolves issue #543

    → <<cset 195945603f64>>

  3. Log in to comment