首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何限制每个用户可以使用的CPU核心的数量?

如何限制每个用户可以使用的CPU核心的数量?
EN

Ask Ubuntu用户
提问于 2019-01-09 13:50:41
回答 1查看 24.4K关注 0票数 27

我们有一台电脑,它的CPU有32个核心,它将被几个不同的用户用来运行程序。有没有办法限制每个用户在任何时候可以使用的核心数量,这样一个用户就不会垄断所有的CPU电源?

EN

回答 1

Ask Ubuntu用户

发布于 2019-01-09 14:05:01

虽然这个是可能的,它是复杂的,几乎肯定是一个不好的想法。如果目前只有一个用户在使用这台机器,那么限制他们使用N核是浪费资源。一个更好的方法是使用nice运行所有内容:

代码语言:javascript
复制
NAME
       nice - run a program with modified scheduling priority

SYNOPSIS
       nice [OPTION] [COMMAND [ARG]...]

DESCRIPTION
       Run  COMMAND  with an adjusted niceness, which affects process scheduling.  With
       no COMMAND, print the current niceness.  Niceness values range  from  -20  (most
       favorable to the process) to 19 (least favorable to the process).

这是一个很好的工具,可以确定进程的优先级。因此,如果只有一个用户在运行某项任务,他们将得到他们所需要的足够多的CPU时间,但是如果其他人启动了他们自己的(也是有缺陷的)作业,他们就会很好,互相分享。这样,如果您的用户都使用nice 10 command启动命令,那么没有人会占用资源(也没有人会让服务器崩溃)。

请注意,较高的好值意味着低优先级。这是一个衡量我们应该有多好,我们越好,我们分享的越多。

还请注意,这将无助于管理内存分配,它只会影响CPU调度。因此,如果多个用户启动多个内存密集型进程,您仍然会遇到问题。如果这是一个问题,您应该研究适当的排队系统,如扭矩

票数 20
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/1108293

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档