aboutsummaryrefslogtreecommitdiffstats
path: root/native/src/blocking
Commit message (Collapse)AuthorAge
* Implement LP-based OMIP blocking analysisBjoern Brandenburg2013-07-12
|
* Precision fix: user deliberate rounding in LP result conversionBjoern Brandenburg2013-02-12
| | | | | | | Use proper rounding when converting blocking terms to avoid rounding issues. This could cause some (very rare) off-by-one bugs when incorrectly truncating an objective result very close to the next largest integer.
* Add LP-based blocking analysis for FMLP+Bjoern Brandenburg2013-02-12
|
* Add LP-based blocking analysis for MPCPBjoern Brandenburg2013-02-12
|
* Add generic LP support for shared-memory protocolsBjoern Brandenburg2013-02-12
|
* Disable creation of new variables after creation of the objective functionBjoern Brandenburg2013-02-12
| | | | This can reveal bugs in constraints that accidentally include Ti.
* Add GLPK IntegrationBjoern Brandenburg2013-02-12
| | | | | Add a bridge to the GLPK library. Availability is auto-discovered by the build system. Most of the code is solver-agnostic.
* Add support for tracking total LP generation / solving costBjoern Brandenburg2013-02-12
| | | | | | Interestingly, this shows that generating huge LPs is not necessarily any faster than creating and solving many small LPs. Further investigation required.
* Add compile-time support for merged LPsBjoern Brandenburg2013-02-12
| | | | | | | | This patch introduces the capability to generate one huge LP for an entire task set, instead of generating many smaller LPs (one for each task). It's not clear yet that this is actually any faster.
* Add DPCP and DFLP linear program generationBjoern Brandenburg2013-02-12
| | | | | These files implement the generation and evaluation of linear programs that bound maximum s-aware pi-blocking under the DPCP and the DFLP.
* Extract hash map hack from rw-task-fair.cppBjoern Brandenburg2013-02-12
| | | | | | | | Hashmaps will be needed by the LP code. Additionally, add definitions for hash maps with uint64_t keys. This is only relevant for legacy C++ libs as used on Mac OS X. On Linux, we use the newer C++ '11 STL implementation.
* MPCP: accurately track per-processor priority ceilingsBjoern Brandenburg2013-02-12
| | | | | | | | The priority ceilings under the MPCP are defined in a way such that one processor has a slightly lower ceiling. This doesn't really affect the outcome much, but this patch changes the analysis to be exactly as defined for the sake of accuracy.
* MPCP: export gcs response-time boundsBjoern Brandenburg2013-02-12
| | | | | | This will be used by the new LP-based MPCP analysis. Also, report local blocking to Python and add a clarifying comment.
* MPCP: report local and remote blocking even if >response_timeBjoern Brandenburg2013-02-12
| | | | | | To make response times monotonically increasing, it is beneficial to have some estimate even if the response_time assumption has been violated.
* MPCP: we must consider gcs' with equal priority ceilingsBjoern Brandenburg2013-02-12
| | | | gcs' with equal priority ceiling cannot be preempted.
* Move get_priority_ceilings() from DPCP to common codeBjoern Brandenburg2013-02-12
| | | | | The LP-based analysis of the DPCP can reuse this, so make it available globally.
* C++: move spinlock bounds to corresponding implementationsBjoern Brandenburg2012-05-17
| | | | Part of refactoring sharedres.cpp.
* C++: Properly consider priority ceilings in DPCP boundBjoern Brandenburg2012-05-17
| | | | The bound should not reflect requests executed by agents that can be preempted.
* C++: move shared RW locking defs into own fileBjoern Brandenburg2012-05-17
| | | | Part of refactoring sharedres.cpp.
* C++: Break out the task-fair RW locks codeBjoern Brandenburg2012-05-16
| | | | Part of refactoring sharedres.cpp.
* C++: Break out the phase-fair RW locks codeBjoern Brandenburg2012-05-16
| | | | Part of refactoring sharedres.cpp.
* C++: Break out the C-OMLP-KX codeBjoern Brandenburg2012-05-16
| | | | Part of refactoring sharedres.cpp.
* C++: Break out the C-OMLP code into own fileBjoern Brandenburg2012-05-16
| | | | Part of refactoring sharedres.cpp.
* C++: Break out the P-OMLP code into own fileBjoern Brandenburg2012-05-16
| | | | Part of refactoring sharedres.cpp.
* C++: Break out the G-OMLP and G-FMLP code into own fileBjoern Brandenburg2012-05-16
| | | | Part of refactoring sharedres.cpp.
* C++: Break out the FMLP+ code into own fileBjoern Brandenburg2012-05-16
| | | | Part of refactoring sharedres.cpp.
* Move MPPC++: Break out the MPCP code into own fileBjoern Brandenburg2012-05-16
| | | | Part of refactoring sharedres.cpp.
* C++: Break out the DPCP code into own fileBjoern Brandenburg2012-05-16
Part of refactoring sharedres.cpp.