Phylanx Report: February 2020

The 30th month of work focused on work in the following areas:

  • Fixing build system and contiguous integration issues
  • Distributed calculations are beginning to be looked at. Some issues with distributed performance counters, both in Phylanx and Octotiger have been identified and fixed. Strategies for enabling users to run distributed code through Phylanx have been considered.
  • JetLag
    • A paper about Jetlag (incorporating Apex, Traveler, etc.) was submitted to the PEARC20 conference.
    • Working with the creator of Agave to make a standalone Agave that we can run inside a firewall with minimal effort
  • APEX:
    • APEX updates to CSV output, fixing timer reset behavior for use in Jupyter notebooks, cleaning up API inconsistencies, bug fixes
    • Buildbot updates resulting in stable Phylanx build and tests
    • Nightly regression tests fixed, performance investigations starting
  • Traveler tools: Traveler has continued to improve visualization:
    • PAPI counters as obtained through OTF2/Apex.
    • Making viz faster by moving some code to C
    • Start adding locality info
  • Working on Tiramisu project, parsing and optimizing source trees.
  • Tiling:
    • Theory:
      • worked on the k-server problem.
      • worked on the short labeling problem.
      • Investigated the use of a dynamic solver for the integer program / CSP arising in our tiling model.
  • Implementation:
    • worked on the associated data structure needed to implement the tiling solver.
    • worked on distributed matrix inversion.
    • Worked on distributed Tiling primitive and automated annotations.
    • Learned DFS (depth-first-search) in undirected graph and implemented DFS using an iterative way rather than a recursive way (considering python’s limited recursion)
    • Implemented the cycle equivalence algorithm to find control regions in linear time with the help of NetworkX library.
    • Learned the algorithm in the “Scop detection: a fast algorithm for industrial compilers” paper.
    • Learned the basic background about dominator tree, natural loop, and control flow.
    • Learned the source code in the Graphite implementation since the algorithm in the “Scop detection: a fast algorithm for industrial compilers” paper is improved based on it and without giving explicit explanation.

Organizational Activities and Results

  • Weekly group-meeting, minutes:

February 5th, February 12th, February 19th, February 26th: https://drive.google.com/drive/folders/0B-L3qi_kGiCLN0NRaHZDU3d4Q1k

Repository Activity February 1st – February 29th:

Impact on Other Projects

  • Vcpkg:
    • Pull request: Updating HPX to V1.4.1 (#10214)
  • HPX Pull Requests:
    • Pull request: Fixing use of allocator for C++20 (#4391)
    • Pull request: Add warning messages for using thread binding options on macOS (#4386)
    • Pull request: Adding overload for `hpx::init`/`hpx::start` for use with resource partitioner (#4374)
Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *