![]() |
OpenSWMM Engine
6.0.0-alpha.4
Data-oriented, plugin-extensible SWMM Engine (6.0.0-alpha.4)
|
Process-wide hardware / OpenMP thread capability query. More...
#include <string>#include <vector>Go to the source code of this file.
Namespaces | |
| namespace | openswmm |
| namespace | openswmm::threadinfo |
Functions | |
| int | openswmm::threadinfo::logicalCpus () |
| Query OS-visible logical CPU concurrency. | |
| int | openswmm::threadinfo::ompMaxThreads () |
| Query the current calling-context OpenMP maximum. | |
| int | openswmm::threadinfo::ompAvailable () |
| Report whether engine OpenMP support was compiled. | |
| int | openswmm::threadinfo::perfCores () |
| Query macOS performance-cluster logical CPU count. | |
| int | openswmm::threadinfo::hostReservedThreads () |
| Read host thread reservation from the current environment. | |
| int | openswmm::threadinfo::kokkosOmpThreads () |
| Read the engine-recorded Kokkos OpenMP team hint. | |
| void | openswmm::threadinfo::setKokkosOmpThreads (int n) |
| Store the engine-recorded Kokkos OpenMP team hint. | |
| int | openswmm::threadinfo::resolveRequested (int requested, const char *what, std::vector< std::string > *warnings) |
| Resolve a thread request and optionally append oversubscription diagnostics. | |
| bool | openswmm::threadinfo::isOversubscribed (int threads) |
| Compare a team plus host reservation with known logical concurrency. | |
| int | openswmm::threadinfo::dwThreads (int requested, int n_conduits, std::vector< std::string > *warnings) |
| Resolve a dynamic-wave team request with model-size and automatic core caps. | |
| int | openswmm::threadinfo::twoDThreads (int requested, int n_triangles, std::vector< std::string > *warnings) |
| Resolve a 2D marcher team request using core and triangle-count heuristics. | |
Variables | |
| constexpr int | openswmm::threadinfo::kMinConduitsPerThread = 100 |
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.