Abstract

Advances in network and storage technologies enable data centers to provide high-concurrency and low-latency processing responses. To meet user needs, a variety of low-latency technologies can be used to improve the overall concurrent response capability of the system on the premise of ensuring system stability. User mode thread pool is one of the techniques that can be used. In a multi-core processor system, the scheduling management of the user mode thread pool is much more complicated. At present, the scheduling management of the user mode thread pool mainly focuses on the resource utilization of the user mode thread pool itself and the scheduling management of many user-mode threads, such as dynamically adjusting the number and usage of user mode threads in the user mode thread pool according to the load of the system, and replacing the system thread scheduling with user mode thread scheduling, etc. The existing user mode thread scheduling methods do not distinguish the performance requirements of different data processing tasks, treat all user mode thread tasks in the same way, cannot reflect the performance requirements of different user mode thread tasks, and cannot provide more fine-grained user mode thread execution timing control; the existing user mode thread scheduling methods do not provide more effective scheduling control for the host thread, but instead use the thread scheduling mechanism of the operating system itself to control the execution of all kernel threads which is difficult to isolate the host thread and other kernel threads in the system; the existing user mode thread scheduling methods cannot give full play to the parallel execution advantages of the multi-core processor architecture, and it is difficult to implement unified resource allocation management among multiple user mode thread pools. This paper provides a two-level scheduling management method for user mode thread pools that effectively integrates the operating system scheduling mechanism and user mode thread scheduling mechanism, which can distinguish the needs of different data processing tasks and implement more targeted and fine-grained user mode threads scheduling and execution control, without affecting the scheduling mechanism of the operating system itself, realize the isolation of host threads and non-host threads, implement differentiated scheduling control. And it can realize unified resource allocation management of multi-user thread pools for multi-core processor architecture so that the overall performance of the system can be freely scaled with the change of data task processing requirements to provide a more efficient user mode thread pool management for high concurrency and low latency systems.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call