OpenSWMM Engine  6.0.0-alpha.4
Data-oriented, plugin-extensible SWMM Engine (6.0.0-alpha.4)
Loading...
Searching...
No Matches
ThreadInfo.hpp
Go to the documentation of this file.
1
16#ifndef OPENSWMM_CORE_THREADINFO_HPP
17#define OPENSWMM_CORE_THREADINFO_HPP
18
19#include <string>
20#include <vector>
21
22namespace openswmm {
23namespace threadinfo {
24
27int logicalCpus();
28
33int ompMaxThreads();
34
36int ompAvailable();
37
40int perfCores();
41
48
52
54void setKokkosOmpThreads(int n);
55
72int resolveRequested(int requested, const char* what,
73 std::vector<std::string>* warnings);
74
79bool isOversubscribed(int threads);
80
83constexpr int kMinConduitsPerThread = 100;
84
94int dwThreads(int requested, int n_conduits, std::vector<std::string>* warnings);
95
102int twoDThreads(int requested, int n_triangles, std::vector<std::string>* warnings);
103
104} // namespace threadinfo
105} // namespace openswmm
106
107#endif // OPENSWMM_CORE_THREADINFO_HPP
Definition ThreadInfo.cpp:25
int ompMaxThreads()
Definition ThreadInfo.cpp:36
int perfCores()
Definition ThreadInfo.cpp:53
void setKokkosOmpThreads(int n)
Recorded by the engine when it hands a thread count to the Kokkos plugin.
Definition ThreadInfo.cpp:69
int logicalCpus()
Definition ThreadInfo.cpp:31
int kokkosOmpThreads()
Definition ThreadInfo.cpp:65
bool isOversubscribed(int threads)
Definition ThreadInfo.cpp:80
int resolveRequested(int requested, const char *what, std::vector< std::string > *warnings)
Resolve a [OPTIONS] THREADS request into a thread count.
Definition ThreadInfo.cpp:85
constexpr int kMinConduitsPerThread
Definition ThreadInfo.hpp:83
int twoDThreads(int requested, int n_triangles, std::vector< std::string > *warnings)
2D CPU-marcher team size for a THREADS request.
Definition ThreadInfo.cpp:168
int dwThreads(int requested, int n_conduits, std::vector< std::string > *warnings)
Dynamic-wave Picard team size for a THREADS request.
Definition ThreadInfo.cpp:134
int ompAvailable()
1 when built with SWMM_USE_OPENMP, else 0.
Definition ThreadInfo.cpp:45
int hostReservedThreads()
Definition ThreadInfo.cpp:73
Definition NodeCoupling.cpp:16