问题标签 [nice]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
140 浏览

javascript - 有什么方法可以“很好地”执行我的 JavaScript 吗?

我想在浏览器窗口中运行一些计算,但我不希望它减慢客户端计算机的用户交互速度,尤其是对于单核机器。有什么方法可以调整我执行 JavaScript 的良好级别,以便它在不影响机器响应能力的情况下尽可能快地执行?

0 投票
1 回答
15026 浏览

linux-kernel - Linux 系统上的 niceness 和优先进程

我正在寻找一种通过命令行修改进程优先级的方法。我找到了内置(bash)nicerenice允许修改进程的好坏的命令,但不是内核计算的实际优先级。

是否有允许设置优先级的命令?(或者我在友善和优先之间感到困惑?)

0 投票
1 回答
1844 浏览

c - 操纵线程的好值

我写了一个简单的程序来实现 master/worker 方案,其中 master 是主线程,worker 是由它创建的。

主线程向共享缓冲区写入内容,工作线程读取该共享缓冲区,对共享缓冲区的写入和读取由读/写锁组织。

不幸的是,这种方案肯定会导致主线程饿死,因为一次写入必须等待多次读取才能完成。一种可能的解决方案是增加主线程的优先级,因此如果它想写一些东西,它将立即访问共享缓冲区。

根据类似问题的一篇很棒的帖子,我发现可能SCHED_OTHER不允许在策略下操纵线程的优先级,可以改变的nice只是值。

我写了一个程序,让工作线程的优先级低于主线程,但它似乎无法正常工作。

我有两个问题:

  1. 如何设置工作线程的好值以避免主线程饥饿。
  2. 如果不可能,那么如何将调度策略更改为允许更改优先级的策略。

编辑:我设法使用其他策略运行程序,例如SCHED_FIFO,我所要做的就是以超级用户身份运行程序

0 投票
3 回答
8473 浏览

c - unix 中 nice 和 setpriority 的区别

我正在尝试在 C 中实现 unix 的“nice”命令的不同风格。我已经看到了 nice() 系统调用和 setpriority() 调用的定义。nice() 调用仅增加/减少进程的优先级。如果我想将进程的优先级设置为特定值,我不能使用 nice() 调用吗?基本上,除了如何修改优先级之外, nice() 和 setpriority() 之间有什么区别吗?

0 投票
2 回答
17343 浏览

linux - nice() 是用来改变线程优先级还是进程优先级?

手册页nice说“nice() 将 inc 添加到调用进程的 nice 值中。那么,我们可以使用它来更改由创建的线程的 nice 值pthread_create吗?

编辑:似乎我们可以为每个线程设置好的值。

我编写了一个应用程序,为不同的线程设置了不同的 nice 值,并观察到“更好”的线程已经以较低的优先级调度。检查输出,我发现字符串“高优先级......”的输出频率更高。

0 投票
1 回答
222 浏览

linux - Linux IOnice 会影响 /dev/ 节点吗?

我已经为 Linux 编写了虚拟输入驱动程序,以及通过 /dev 节点与它们通信的服务器。现在,其中之一是虚拟鼠标,信号服务器接收到的内容尽快到达驱动程序以使鼠标感觉流畅是非常重要的。

出于这个原因,我将服务器进程的 ionice 设置为 1(仍然没有优先于重要的 linux 守护进程):

但我不确定它是否值得。差异,即使有,也不明显。在 I/O 优先级方面是否考虑 /dev/ 中的字符特殊文件,尽管没有授予对实际磁盘的访问权限?

0 投票
1 回答
2361 浏览

linux - 如何给用户离子级别的权限?

要更改硬限制,我可以修改 /etc/security/limits.conf

但是我怎么能为ionice做同样的事情

我收到错误

0 投票
5 回答
5847 浏览

linux - Process niceness (priority) 设置对 Linux 没有影响

我写了一个测试程序,它只包含一个无限循环,里面有一些计算,并且不执行 I/O 操作。我尝试启动程序的两个实例,一个具有高 niceness 值,另一个具有低 niceness 值:

taskset 命令确保两个程序在同一个内核上执行。与我的预期相反,top 报告说这两个程序都获得了大约 50% 的计算时间。这是为什么?nice 命令甚至有效果吗?

0 投票
2 回答
379 浏览

linux - 压缩 Web Root:为什么不能很好地减少 CPU 负载?

上述命令在我们的实时 CentOS 服务器上运行,就好像该nice命令不存在一样。大约 60 秒后,我可以看到使用该命令zip时它位于“顶部” 。top服务器开始翻倒,我不得不让命令崩溃。

0 投票
1 回答
375 浏览

python - 长时间运行的 CPU 密集型 python 脚本被调度程序发送到睡眠状态

我编写了一个 CPU 密集型数据处理脚本。它已经运行了几天,但是现在(感谢发送到控制台的跟踪消息),我可以看到它没有工作(实际上,过去 10 个小时左右都没有工作。

当我运行时top,我注意到进程要么处于睡眠状态(S),要么处于不可中断的睡眠状态(D)。这是在浪费很多时间。

我曾经sudo renice -10 PID更改过进程的nice值,运行了一会儿后,我注意到进程又重新进入睡眠状态。

我的问题:

  1. 我可以做些什么来强制脚本运行直到它完成(如果这意味着机器在脚本结束之前无法使用?

  2. 有没有yield我可以在 Python 中使用的命令,它允许我定期将控制权传递给其他进程/线程,以阻止调度程序试图让我的脚本进入睡眠状态?

我在 Ubuntu 10.0.4 上使用 python 2.7.x