OpenSWMM Engine  6.0.0-alpha.4
Data-oriented, plugin-extensible SWMM Engine (6.0.0-alpha.4)
Loading...
Searching...
No Matches
ThreadInfo.hpp File Reference

Process-wide hardware / OpenMP thread capability query. More...

#include <string>
#include <vector>
Include dependency graph for ThreadInfo.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  openswmm
 
namespace  openswmm::threadinfo
 

Functions

int openswmm::threadinfo::logicalCpus ()
 
int openswmm::threadinfo::ompMaxThreads ()
 
int openswmm::threadinfo::ompAvailable ()
 1 when built with SWMM_USE_OPENMP, else 0.
 
int openswmm::threadinfo::perfCores ()
 
int openswmm::threadinfo::hostReservedThreads ()
 
int openswmm::threadinfo::kokkosOmpThreads ()
 
void openswmm::threadinfo::setKokkosOmpThreads (int n)
 Recorded by the engine when it hands a thread count to the Kokkos plugin.
 
int openswmm::threadinfo::resolveRequested (int requested, const char *what, std::vector< std::string > *warnings)
 Resolve a [OPTIONS] THREADS request into a thread count.
 
bool openswmm::threadinfo::isOversubscribed (int threads)
 
int openswmm::threadinfo::dwThreads (int requested, int n_conduits, std::vector< std::string > *warnings)
 Dynamic-wave Picard team size for a THREADS request.
 
int openswmm::threadinfo::twoDThreads (int requested, int n_triangles, std::vector< std::string > *warnings)
 2D CPU-marcher team size for a THREADS request.
 

Variables

constexpr int openswmm::threadinfo::kMinConduitsPerThread = 100
 

Detailed Description

Process-wide hardware / OpenMP thread capability query.

Single source of truth for "how many threads can this process usefully run", shared by SWMMEngine::start (global OMP team), DWSolver::setNumThreads (dynamic-wave Picard team), SurfaceRouter2D (2D marcher) and the C API swmm_get_thread_info(). See plans/THREAD_LIMITS_AND_OVERSUBSCRIPTION_PLAN_2026-09-03.md.

Author
Caleb Buahin caleb.nosp@m..bua.nosp@m.hin@g.nosp@m.mail.nosp@m..com
License\n Apache-2.0