diff options
| author | 2017-01-12 22:23:08 +0100 | |
|---|---|---|
| committer | 2017-01-12 23:20:23 +0100 | |
| commit | 5cd17c361fe2def9ec99a2c95b54e01646f172c5 (patch) | |
| tree | 32cf115917a072596c29ec812c78c7ef772de7bc /src/lib/netlist/solver/nld_solver.cpp | |
| parent | b1c358678964630c1282953c1a80407997eae203 (diff) | |
Fix seldom used conditional build options.
- Fixed OPENMP compile
For congo bongo, using Solver.PARALLEL=1 significantly increases
performance from 270% to 380%. However, this has to be taken
with a grain of salt. Enabling this on predominantly logic netlists
can severly kill performance.
- Increased readability of timed queue code.
Diffstat (limited to 'src/lib/netlist/solver/nld_solver.cpp')
| -rw-r--r-- | src/lib/netlist/solver/nld_solver.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/lib/netlist/solver/nld_solver.cpp b/src/lib/netlist/solver/nld_solver.cpp index a5c85ef8cc5..52cccfd8419 100644 --- a/src/lib/netlist/solver/nld_solver.cpp +++ b/src/lib/netlist/solver/nld_solver.cpp @@ -95,13 +95,13 @@ NETLIB_UPDATE(solver) const std::size_t t_cnt = m_mat_solvers.size(); if (m_parallel()) { - omp_set_num_threads(3); + //omp_set_num_threads(3); //omp_set_dynamic(0); #pragma omp parallel { #pragma omp for for (int i = 0; i < t_cnt; i++) - if (m_mat_solvers[i]->has_timestep_devices()) + if (m_mat_solvers[i]->has_timestep_devices() || force_solve) { // Ignore return value ATTR_UNUSED const netlist_time ts = m_mat_solvers[i]->solve(); @@ -110,7 +110,7 @@ NETLIB_UPDATE(solver) } else for (int i = 0; i < t_cnt; i++) - if (m_mat_solvers[i]->has_timestep_devices()) + if (m_mat_solvers[i]->has_timestep_devices() || force_solve) { // Ignore return value ATTR_UNUSED const netlist_time ts = m_mat_solvers[i]->solve(); |
