Skip to content

GitLab

  • Menu
Projects Groups Snippets
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Sign in
  • I IPPL
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 39
    • Issues 39
    • List
    • Boards
    • Service Desk
    • Milestones
    • Iterations
  • Merge requests 12
    • Merge requests 12
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Metrics
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Infrastructure Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Code review
    • Issue
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • OPAL
  • Libraries
  • IPPL
  • Issues
  • #157

Closed
Open
Created May 02, 2023 by vinciguerra_a@vinciguerra_aDeveloper

Optimize ALPINE functions

Address suggested optimizations from !157 (merged).

  • Make res a vector of bool.
  • Use the expression dev > loadbalancethreshold_m directly
  • Use std::any_of instead of the explicit for-loop
  • MPI gather over booleans

The same optimization can be made for PICnd.

In addition, the two reduction kernels for the energy in ChargedParticles can be merged by using two reducers. This requires a Kokkos fence, since reduction kernels are non-blocking when there are multiple reducers.

Edited May 03, 2023 by vinciguerra_a
Assignee
Assign to
Time tracking