Skip to content

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
    • Help
    • Support
    • Submit feedback
    • Contribute to GitLab
  • Sign in
C
codes
  • Project
    • Project
    • Details
    • Activity
    • Releases
    • Cycle Analytics
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Charts
  • Issues 38
    • Issues 38
    • List
    • Boards
    • Labels
    • Milestones
  • Merge Requests 8
    • Merge Requests 8
  • Wiki
    • Wiki
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Charts
  • Create a new issue
  • Commits
  • Issue Boards
  • codes
  • codes
  • Merge Requests
  • !54

Merged
Opened Jul 24, 2018 by Caitlin Ross@caitlinross
  • Report abuse
Report abuse

ROSS-Damaris integration support

The main purpose of this branch is to add support for the ROSS-Damaris integration. This involved adding an option to the ./configure step in the build process, which is --with-damaris. No path needs to be specified here. If ROSS is built with Damaris enabled, it will create the necessary pkgconfig files in the same location as the regular ROSS pc file, so the CODES process will be able to find it.

The ROSS blog contains the full details on dependencies, building, and running with Damaris enabled. There are a few CODES-specific details to using Damaris here: https://xgitlab.cels.anl.gov/codes/codes/wikis/Using-ROSS-Instrumentation-with-CODES.

One thing to note is that using Damaris requires splitting MPI_COMM_WORLD. MPI_COMM_CODES was set previously (which is typically just set to MPI_COMM_WORLD), but MPI_COMM_WORLD was still being used in many places. This merge request fixes that as well. It also added in a function codes_comm_update() in codes/src/util/codes-comm.c. This needs to be called after tw_init() in the model's main(). This just updates MPI_CODES_COMM to be the same as MPI_COMM_ROSS. It needs to be called after tw_init() because that is where the communicator will be split. This only matters if you're running with Damaris actually turned on. If you're not running with Damaris turned on (whether you built ROSS/CODES with it enabled or not), there's no issues.

The other change made in this merge request is not directly related to Damaris, but provides support for all the model callback functions necessary to use all ROSS instrumentation modes with Dragonfly Plus. I also fixed the RNG reverse computation issue in DFP synthetic workloads that was recently found in the other network synthetic workloads.

Check out, review, and merge locally

Step 1. Fetch and check out the branch for this merge request

git fetch origin
git checkout -b "damaris" "origin/damaris"

Step 2. Review the changes locally

Step 3. Merge the branch and fix any conflicts that come up

git fetch origin
git checkout "origin/master"
git merge --no-ff "damaris"

Step 4. Push the result of the merge to GitLab

git push origin "master"

Note that pushing to GitLab requires write access to this repository.

Tip: You can also checkout merge requests locally by following these guidelines.

  • Discussion 0
  • Commits 7
  • Changes 18
Assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking
0
Labels
None
Assign labels
  • View project labels
Reference: codes/codes!54

Revert this merge request

This will create a new commit in order to revert the existing changes.

Switch branch
Cancel
A new branch will be created in your fork and a new merge request will be started.

Cherry-pick this merge request

Switch branch
Cancel
A new branch will be created in your fork and a new merge request will be started.