互联网+大赛 - 龙蜥社区赛题(限制 CFS 调度的 CPU 并发度)|学习笔记

简介: 快速学习互联网+大赛 - 龙蜥社区赛题(限制 CFS 调度的 CPU 并发度)

开发者学堂课程【第八届大学生创新创业大赛阿里命题云龙蜥社区赛题解析互联网+大赛 - 龙蜥社区赛题(限制 CFS 调度的 CPU 并发度)】学习笔记,与课程紧密联系,让用户快速学习知识。  

课程地址:https://developer.aliyun.com/learning/course/1022/detail/15092


互联网+大赛 - 龙蜥社区赛题(限制CFS 调度的 CPU 并发度)

内容介绍

赛题背景

赛题介绍

一、赛题背景

赛题是关于 linux 调度器 cfs在 linux sect 调度器中。当任务被唤醒时,有优先使用空闲 cpu 的倾向设计的好处是可以更充分的使用 cpu 资源,避免没必要的排队等待提供更好的 cpu 性能。然而在实际的场景里面也发现一些弊端,就是当任务被允许使用的 cpu 资源有限时过高的并发度可能会引起访存效率的下降带来更多的 cpu 资源消耗。

所以取得折中给任务提供适当的 cpu 并发度能使任务在唤醒时尽快得到 cpu 资源运行。降低调度延迟又能避免并发度过高引起的访频效率下降问题

二、赛题介绍

接下来介绍赛题赛题的命名是限制 cfs 调度器的 cpu 并发度。希望大家在anolis os 基础上修改 cfs 的调度策略控制 cpu 的并发度。有三个要点,考虑如何限制 CFS 调度器的并发度,当任务并发度低于限制时希望鼓励任务使空闲的 cpu资源评估修改对 Linux 调度器的性能影响希望参与的同学提供设计方案包括如何平衡 cfs 并发度考虑哪些性能因素以及具体的控制算法完成内核开发并且进行演示通过本赛题可以学习到课本之外的业界的真实场景的内核和调度器的开发的经验还可以获得系统性建模的经验

相关文章
|
12天前
|
开发框架 并行计算 算法
揭秘Python并发神器:IO密集型与CPU密集型任务的异步革命,你竟还傻傻分不清?
揭秘Python并发神器:IO密集型与CPU密集型任务的异步革命,你竟还傻傻分不清?
29 4
|
1天前
|
开发框架 并行计算 .NET
脑洞大开!Python并发与异步编程的哲学思考:IO密集型与CPU密集型任务的智慧选择!
脑洞大开!Python并发与异步编程的哲学思考:IO密集型与CPU密集型任务的智慧选择!
7 1
|
14天前
|
算法 Java 程序员
解锁Python高效之道:并发与异步在IO与CPU密集型任务中的精准打击策略!
在数据驱动时代,高效处理大规模数据和高并发请求至关重要。Python凭借其优雅的语法和强大的库支持,成为开发者首选。本文将介绍Python中的并发与异步编程,涵盖并发与异步的基本概念、IO密集型任务的并发策略、CPU密集型任务的并发策略以及异步IO的应用。通过具体示例,展示如何使用`concurrent.futures`、`asyncio`和`multiprocessing`等库提升程序性能,帮助开发者构建高效、可扩展的应用程序。
31 0
|
2月前
|
算法 调度
处理机(CPU)调度
处理机(CPU)调度
34 1
|
3月前
|
并行计算 监控 数据处理
构建高效Python应用:并发与异步编程的实战秘籍,IO与CPU密集型任务一网打尽!
【7月更文挑战第16天】Python并发异步提升性能:使用`asyncio`处理IO密集型任务,如网络请求,借助事件循环实现非阻塞;`multiprocessing`模块用于CPU密集型任务,绕过GIL进行并行计算。通过任务类型识别、任务分割、避免共享状态、利用现代库和性能调优,实现高效编程。示例代码展示异步HTTP请求和多进程数据处理。
49 8
|
3月前
|
算法 Java 程序员
解锁Python高效之道:并发与异步在IO与CPU密集型任务中的精准打击策略!
【7月更文挑战第17天】在数据驱动时代,Python凭借其优雅语法和强大库支持成为并发处理大规模数据的首选。并发与异步编程是关键,包括多线程、多进程和异步IO。对于IO密集型任务,如网络请求,可使用`concurrent.futures`和`asyncio`;CPU密集型任务则推荐多进程,如`multiprocessing`;`asyncio`适用于混合任务,实现等待IO时执行CPU任务。通过这些工具,开发者能有效优化资源,提升系统性能。
78 4
|
3月前
|
分布式计算 并行计算 Java
Python并发风暴来袭!IO密集型与CPU密集型任务并发策略大比拼,你站哪队?
【7月更文挑战第17天】Python并发处理IO密集型(如网络请求)与CPU密集型(如数学计算)任务。IO密集型适合多线程和异步IO,如`ThreadPoolExecutor`进行网页下载;CPU密集型推荐多进程,如`multiprocessing`模块进行并行计算。选择取决于任务类型,理解任务特性是关键,以实现最佳效率。
51 4
|
3月前
|
开发框架 并行计算 .NET
脑洞大开!Python并发与异步编程的哲学思考:IO密集型与CPU密集型任务的智慧选择!
【7月更文挑战第18天】在Python中,异步编程(如`asyncio`)适合处理IO密集型任务,通过非阻塞操作提高响应性,例如使用`aiohttp`进行异步HTTP请求。而对于CPU密集型任务,由于GIL的存在,多进程(`multiprocessing`)能实现并行计算,如使用进程池进行大量计算。明智选择并发模型是性能优化的关键,体现了对任务特性和编程哲学的深刻理解。
32 2
|
3月前
|
开发框架 并行计算 算法
揭秘Python并发神器:IO密集型与CPU密集型任务的异步革命,你竟还傻傻分不清?
【7月更文挑战第18天】Python并发编程中,异步IO适合IO密集型任务,如异步HTTP请求,利用`asyncio`和`aiohttp`实现并发抓取,避免等待延迟。而对于CPU密集型任务,如并行计算斐波那契数列,多进程通过`multiprocessing`库能绕过GIL限制实现并行计算。选择正确的并发模型能显著提升性能。
76 2
|
3月前
|
开发框架 数据挖掘 .NET
显微镜下的Python并发:细说IO与CPU密集型任务的异步差异,助你精准施策!
【7月更文挑战第16天】在Python并发编程中,理解和区分IO密集型与CPU密集型任务至关重要。IO密集型任务(如网络请求)适合使用异步编程(如`asyncio`),以利用等待时间执行其他任务,提高效率。CPU密集型任务(如计算)则推荐使用多进程(如`multiprocessing`),绕过GIL限制,利用多核CPU。正确选择并发策略能优化应用性能。
45 2