Design and implementation of coroutine management environment

Bin Cai, Bingcheng Qiu, Jia Yao, J.W.C. Fu, Yunlan Xue, Xiaofei Liu, Ruilong Wu, Xu Zhang
{"title":"Design and implementation of coroutine management environment","authors":"Bin Cai, Bingcheng Qiu, Jia Yao, J.W.C. Fu, Yunlan Xue, Xiaofei Liu, Ruilong Wu, Xu Zhang","doi":"10.1117/12.2674720","DOIUrl":null,"url":null,"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.","PeriodicalId":286364,"journal":{"name":"Conference on Computer Graphics, Artificial Intelligence, and Data Processing","volume":null,"pages":null},"PeriodicalIF":0.0000,"publicationDate":"2023-05-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Conference on Computer Graphics, Artificial Intelligence, and Data Processing","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1117/12.2674720","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

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.
协程管理环境的设计与实现
网络和存储技术的进步使数据中心能够提供高并发性和低延迟的处理响应。为满足用户需求,可在保证系统稳定性的前提下,采用多种低时延技术,提高系统的整体并发响应能力。用户模式线程池是可以使用的技术之一。在多核处理器系统中,用户模式线程池的调度管理要复杂得多。目前,用户模式线程池的调度管理主要集中在用户模式线程池本身的资源利用和对众多用户模式线程的调度管理上,如根据系统负载动态调整用户模式线程池中用户模式线程的数量和使用情况,用用户模式线程调度代替系统线程调度等。现有的用户模式线程调度方法没有区分不同数据处理任务的性能要求,对所有用户模式线程任务一视同仁,不能反映不同用户模式线程任务的性能要求,不能提供更细粒度的用户模式线程执行时序控制;现有的用户模式线程调度方法没有为主机线程提供更有效的调度控制,而是利用操作系统本身的线程调度机制来控制所有内核线程的执行,难以隔离系统中的主机线程和其他内核线程;现有的用户模式线程调度方法不能充分发挥多核处理器架构的并行执行优势,难以在多个用户模式线程池之间实现统一的资源分配管理。本文提供了一种用户模式线程池的两级调度管理方法,有效集成了操作系统调度机制和用户模式线程调度机制,可以区分不同数据处理任务的需求,实现更有针对性和细粒度的用户模式线程调度和执行控制,同时不影响操作系统本身的调度机制,实现主机线程和非主机线程的隔离。实施差异化调度控制。实现多核处理器架构下多用户线程池的统一资源分配管理,使系统的整体性能可以随数据任务处理需求的变化而自由伸缩,为高并发、低延迟系统提供更高效的用户模式线程池管理。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信