Cgroup – 从CPU资源隔离说起 (liwei.life)

【简介】

一个正在运行着服务的计算机系统,跟我们高中上课的情景还是很相似的。如果把系统中的每个进程理解为一个同学的话,那么班主任就是操作系统的核心(kernel),负责管理班里的同学。而cgroup,就是班主任控制学生行为的一种手段,所以,它起名叫control groups。

既然是一种控制手段,那么cgroup能控制什么呢?当然是资源啦!对于计算机来说,资源大概可以分成以下几个部分:

1、计算资源
2、内存资源
3、io资源
4、网络资源

这就是我们常说的内核四大子系统。当我们学习内核的时候,我们也基本上是围绕这四大子系统进行研究。
我们今天要讨论的,主要是cgroup是如何对系统中的CPU资源进行隔离和分配的。其他资源的控制,我们以后有空再说喽。

点击查看原文 >>

@技术头条 2017-02-05 14:42 / 0个评论
赞过的人: @技术头条 @IT技术博客大学习
要不要再学学下面的文章?
ShadowDOM 中样式隔离和继承 (innei.in)
在 Web 组件开发中,Shadow DOM 是实现样式隔离的利器,但它在样式继承方面却带来了一些独特的挑战。本文深入探讨了 Shadow DOM 的样式隔离与继承机制,帮助开发者更好地管理组件的样式和结构。如果你想提升 Web 开发中的组件化技巧,千万不要错过!
by @技术头条 2024-09-09 23:37 查看详情
CPU篇之软中断 (www.codedump.info)
软中断作为下半部机制的代表,是随着SMP(share memory processor)的出现应运而生的,它也是tasklet实现的基础(tasklet实际上只是在软中断的基础上添加了一定的机制)。软中断一般是“可延迟函数”的总称,有时候也包括了tasklet(请读者在遇到的时候根据上下文推断是否包含tasklet)。它的出现就是因为要满足上面所提出的上半部和下半部的区别,使得对时间不敏感的任务延后执行,而且可以在多个CPU上并行执行,使得总的系统效率可以更高。
by @技术头条 2024-03-21 23:03 查看详情
CPU 混合推理,非常见大模型量化方案:“二三五六” 位量化 (soulteary.com)
本篇文章聊聊网上聊的比较少的具体量化操作,非常见整型位数的量化,来自让各种开源模型能够在 CPU 环境、CPU & GPU 环境混合推理的技术方案:llama.cpp 。
by @技术头条 2023-12-26 22:06 查看详情
Kubernetes OOM和CPU节流 (jokerbai.com)
使用 Kubernetes 时,内存不足 (OOM) 错误和 CPU 节流是云应用程序中资源处理的主要难题。
这是为什么?
云应用程序中的 CPU 和内存要求变得越来越重要,因为它们与您的云成本直接相关。
通过 limits 和 requests ,您可以配置 pod 应如何分配内存和 CPU 资源,以防止资源匮乏并调整云成本。
如果节点没有足够的资源, Pod 可能会通过抢占或节点压力被驱当一个进程运行内存不足 (OOM) 时,它会被终止,因为它没有所需的资源。
如果 CPU 消耗高于实际限制,进程将开始节流。
但是,如何主动监控 Kubernetes Pod 到达 OOM 和 CPU 节流的距离有多近?
by @技术头条 2023-12-01 09:47 查看详情
聊聊Web网页中资源加载的优先级 (www.zhangxinxu.com)
通过调整或设置资源加载的优先级或者先后顺序,可以让页面重要的资源优先加载,让不重要的内容之后加载,以提高页面的访问体验。

通过文中的视频比较显示了 Google 机票页面,其中加载了使用和不使用“提取优先级”加载的 LCP 背景图片。将优先级设置为“高”后,LCP 时间从 2.6 秒缩短到 1.9 秒。
by @技术头条 2023-10-30 23:06 查看详情
构建能够使用 CPU 运行的 MetaAI LLaMA2 中文大模型 (soulteary.com)
本篇文章聊聊如何使用 GGML 机器学习张量库,构建让我们能够使用 CPU 来运行 Meta 新推出的 LLaMA2 大模型。
by @技术头条 2023-07-30 21:36 查看详情
每秒1百万的包传输,几乎不耗CPU的那种 (colobu.com)
这两年来我一直在做网络故障监控的工作,经常使用的一个手段就是发送一些探测包进行网络的探测,根据丢包和时延,再结合网络拓扑等手段分析现网网络故障。因为要监控的是度厂全部网络的质量状况,并且需要很高的精度去覆盖网络设备、板卡、端口以及他们之间映射等所有的路径,所以需要尽量发送高频的探测包去快准狠的感知到故障并发现。同时,和业务网络程序的不一样,业务程序一般是业务层代码,TCP的重传的机制,或者业务换个五元组重连一次,就会绕过网络中的故障,而网络监控也需要把这个链路中这些故障找出来,经常我会使用UDP或者TCP的握手包进行网络的探测,再不济使用ICMP协议进行网络的探测。
by @技术头条 2023-07-04 23:11 查看详情
Go CPU profiler 内幕 (colobu.com)
Go 是那种自带 profiler (分析器)的语言之一。它的运行时包含强大的自成一派的各种 profiler。其它语言,比如 Ruby、Python 和 Node.js, 它们也包含 profiler或者一些用来编写profiler的API,但是与Go的开箱即用的 profiler相比,它们提供的profiler功能有限。如果你想多了解Go提供的这些可观察工具的情况,我强烈推荐你阅读 Felix Geisendörfer的 The Busy Developer’s Guide to Go Profiling, Tracing and Observability。

作为一个好奇的工程师,我喜欢挖掘事物在底层上的工作方式,我一直想去学习Go CPU profiler底层·是怎么工作的。这篇文章就是此次探索的结果。每当我阅读Go运行时代码时,我总是学到到一些新东西,这次也不例外。
by @技术头条 2022-12-18 20:08 查看详情
提升资源利用率与保障服务质量,鱼与熊掌不可兼得? (tech.meituan.com)
美团Hulk调度系统团队在集群服务质量与资源利用率运营的长期落地实践中,基于业务实际场景,自主设计研发了集群负载自动调控系统(LAR)以及配套的运营体系,在提升集群整体资源利用率的同时保障了业务服务质量。本文介绍了LAR的设计理念、基本框架以及核心设计,并结合在线和混部场景应用展开思考,并展示了部分落地成果。希望能为从事相关工作的同学带来一些启发或者帮助。
by @技术头条 2022-09-13 23:27 查看详情
CPU是如何进行分支预测的? (mp.weixin.qq.com)
历史上CPU分支预测算法演进过程、实现细节、tradeoff和对应论文介绍。
by @张雅宸_zyc 2022-07-13 14:31 查看详情