问题标签 [nmi]

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 投票
4 回答
1717 浏览

c - 如何以编程方式禁用不可屏蔽中断?

我已经阅读过,为了根据英特尔的系统编程指南(第 3 卷第 9.9 章)暂时关闭分页,我应该在执行任何其他操作之前禁用中断。我可以很容易地用 cli 禁用可屏蔽中断,但是所有关于禁用 NMI 的手册都是

NMI 中断可以通过外部电路禁用。(软件必须保证在模式切换操作期间不会产生异常或中断。)

我在这个 OSDEV 页面上找到了看起来像用于禁用 NMI 的 C 代码,但我不太明白它应该是什么意思

感觉代码没有上下文,不知道函数 outb 和 inb 的作用是没有意义的。

0 投票
1 回答
287 浏览

linux-kernel - nmi 内核调用紧密循环

我有一个测试程序

我使用 perf record -t -e intel_pt// 来分析线程。我看到很多对nmi的调用,例如每隔几毫秒调用一次 2(?) 。有没有办法摆脱这种类型的中断?Centos 7,内核 3.10.0,kernel.watchdog = 0。

根据@Zulan 的评论进行编辑:gcc 版本:4.8.5。编译行:g++ -I//include/ -L//lib -lboost_system -lboost_thread test.cpp 处理器 Intel Platinum 8xxx/Gold 6xxx 系列。
perf 脚本输出片段:

另一个:

perf 脚本输出中 irq_return() 的 grep'g 显示每 20 毫秒 3 个 irq。

在 grub 中,isolcpus、nohz_full、rcu_nocbs 设置在特定的 cpus 上,并且 nmi_watchdog=0。使用taskset -c a.out 运行的测试程序。

0 投票
1 回答
147 浏览

r - 如何在 r 中为我的 GNgraph 提取成员向量?

我想使用 NMI 将我在社区检测中的算法与其他方法进行比较。所以我正在制作一些图表sample_sbm(),我用这些图表定义给我 10 个节点,并且在block.sizes=c(3,3,4)部分我定义有社区,第一个有 3 个成员,第二个有 3 个,第三个4名成员。现在我想要他们的成员向量。它应该是:1 1 1 2 2 2 3 3 3 3

最好的方法是什么?我正在考虑采用 3 个参数 c1、c2、c3,然后在 block.sizes() 中使用它们,所以我可以使用 for 循环来构建成员向量。但看起来有点脏.因为社区的数量应该是任意的。如果你给我一些更好的建议,我将不胜感激

0 投票
1 回答
127 浏览

scikit-learn - 算术和几何归一化互信息

算术和几何归一化互信息有什么区别,我有:

现在我想计算归一化的互信息:但它的行为有点奇怪

为什么?

0 投票
2 回答
2401 浏览

linux - NMI 看门狗消息,即。'关闭所有 CPU 上的硬锁定检测器'

当 NMI 看门狗被“禁用”时,它仍然很健谈。

有谁知道这些消息的文档在哪里?我想看看实际发生了什么。

例如,验证它已禁用:

然而,我们仍然在关机或开机时看到如下消息:

现在我知道这不是重置,而是别的东西,我希望得到记录在案的答案,而不是最好的猜测。

尝试浏览 kernel.org 和 debian.org,手册页没有成功,只有归档的 bugzilla 页面。

我们想知道这些消息的实际含义,而不是做出假设。有谁知道解码环在哪里?

0 投票
1 回答
306 浏览

matlab - 为什么 NMI 值小而聚类精度和 Rand 指数较高

我正在使用https://www.mathworks.com/matlabcentral/fileexchange/32197-clustering-results-measurement来评估我在 MATLAB 中的聚类准确性,它提供了准确性rand_index,性能与预期一样正常。但是,当我尝试使用NMI作为指标时,聚类性能极低,我使用的是源代码(https://www.mathworks.com/matlabcentral/fileexchange/29047-normalized-mutual-information)。

实际上我有两个 Nx1 向量作为输入,一个是实际标签,另一个是标签分配。我基本上检查了每个元素内部,我发现即使我有 82% 的 rand_index,NMI 也只有 0.3209。下面是带有 MATLAB 内置 K-Means的 Iris 数据集https://archive.ics.uci.edu/ml/datasets/iris的示例。

结果:

Auto ACC: 0.820000 Rand_Index: 0.701818 NMI: 0.320912

0 投票
0 回答
20 浏览

php - NMI 意外的 HTTP 响应:0

这是我第一次尝试使用在线支付网关。我正在尝试配置 NMI 商家 PHP SDK。我已经下载了 PHP SDK 文件,现在我正在测试它们。

有一个文件 ExampleTest.php。当我打开它时(使用我的终端 ID 和交易密钥)得到这个

这是我的代码(exampletest.php)

你们能帮帮我吗?这是我第一次尝试使用在线支付网关。谢谢

0 投票
0 回答
26 浏览

cluster-analysis - python - 如何在python中使用NMI评估指标合并获得的kmeans集群?

我通过在多维数组上应用 kmeans 获得了 3 个簇。现在我想根据归一化平均指数 (NMI) 合并相似的集群,最后得到 2 个集群。有人可以指导我如何使用 NMI 评估集群相似性吗?

0 投票
0 回答
81 浏览

linux-kernel - 如何确定linux内核中NMI的来源?

我正在使用 5.2 上游内核。问题是我已经注册了一个NMI_UNKNOWN永远不会被调用的 NMI 处理程序。我可以看到 NMI 计数/proc/interrupts大约每隔几秒钟就会增加一次。

我不太了解 NMI 是如何在 linux 内核中实现的,所以请填写。在这方面完全是菜鸟。我的理解是,我收到的 NMI(通过/proc/interrupts/计数确认)来自一些已知资源,因此我的NMI_UNKNOWN处理程序没有被调用。如果我的理解不正确,那么您能否解释一下为什么我的 NMI 处理程序没有被调用?

在我的案例中,我如何确认这些 NMI 来自哪里?任何界面procsysfs可以帮助我吗?

我的内核配置

编辑

我尝试了 NMI 跟踪器,可以反复看到以下日志,这表明可能是谁是源头以及谁在处理它:

0 投票
0 回答
202 浏览

linux-kernel - Vagrant Virtualbox VM 获得“内核:NMI 看门狗:BUG:软锁定 - CPU#1 卡住 23 秒”

我在 Windows PC 上使用 Vagrant 在 Virtualbox 中运行 CentOS VM。我已经这样做了 2 年没有问题(最初是 CentOS 6,然后是 CentOS 7),但在过去的几个月里,我注意到我的虚拟机开始频繁锁定。并在再次启动时输出这些类型的消息

重复了很多次。

我认为正在发生的事情是 NMI 看门狗正在等待中断,并且有一个设定的时间来接收,但是如果一个进程正在阻止事情并且它没有得到这个中断,它会假设出现问题并初始化内核恐慌, 把事情锁起来。

我遇到了增加或完全禁用 NMI 看门狗kernel.watchdog_thresh=30的选项。/etc/sysctl.conf我应该考虑尝试其中一种吗?看门狗是不是太急切了,还是我有一些潜在的问题?发生这种情况时,我的虚拟机上没有太多东西。