MariaDB. Optimizing the distribution of tasks in a treadpool
- Student: Mikhaylenko Anton
- Mentor: Vladislav Vaintroub
The purpose of this project is to update algorithm of task distribution in a threadpool in MariadDB. Specifically, what algorithm to use for dynamic concurrency. This is the algorithm "hill-climbing", which is used in .NET ThreadPool.
class hill_climbing
- is the main class, that contains code for HillClimbing algorithm.
class hill_climbing_mgr
- class, that manipulates with HillClimbing params.
class complex
- class for working with complex numbers, used in HillClimbing algorithm.
void thread_pool_generic::maybe_wake_or_create_thread()
- function, that uses HillClimbing algorithm and trying to predict optimal concurrency level.
https://github.com/sapiest/server/commit/c534ab525369081706e23f860bbd6467bca880e6