Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • SWIFTsim SWIFTsim
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 57
    • Issues 57
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 23
    • Merge requests 23
  • Deployments
    • Deployments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Commits
  • Issue Boards
Collapse sidebar
  • SWIFT
  • SWIFTsimSWIFTsim
  • Merge requests
  • !1009

Initial partition with memory weighted edges

  • Review changes

  • Download
  • Email patches
  • Plain diff
Merged Peter W. Draper requested to merge partition-memory-edges into master Jan 29, 2020
  • Overview 5
  • Commits 7
  • Changes 4

Introduces a new initial partition technique and makes it the default. The new technique edgememory is like the previous memory one except we also add some weight to the graph edges so that the cuts between ranks are guided away from splitting dense regions unnecessarily. Tests show this is slightly better than the previous technique in getting a good balance (order of few percent).

This request also includes the clipping of gravity particle weights to avoid problems with dense cells being more efficiently processed than less dense ones, so these are given overweight (we assume memory use per cell correlates with the work, that is not true).

We also have a tweak to how we work out when the sum of weights is greater than the highest value of type idx_t (very important when idx_t is a 32bit int), seems we need a little more overhead to avoid overflow some where in the depths of METIS (1000 -> 10000).

Finally the dumpCells debugging function is extended to include a sum of the task times associated with the cell.

See #640 (closed) for some motivation.

Edited Jan 29, 2020 by Peter W. Draper
Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: partition-memory-edges