什么是mmcqd进程?


13

我有一个Raspberry Pi,它无头运行Raspbian Wheezy,并且卸载了所有与图形相关的软件。

我正在运行bitcoind,这主要是在消耗大部分资源。通常,当我通过检查进程top,我可以看到,只有bitcoind使用资源的显著量,与sshdtop在第二和第三位左右。

由于某种原因,当前,一个名为的新过程开始达到资源使用高峰mmcqd/0。它经常在峰值中使用多达55%的CPU功率,否则保持在5%左右的恒定值。

这个过程是做什么的?

我已经读到这可能是SD卡速度慢引起的,但是我测试了读写速度,并且两者的速度都> 15MB / s(我有32GB的10级SD卡)。


完全不合时宜,在树莓上运行比特币挖矿甚至无法覆盖您花费在安装它上的时间。
lenik

我在其上运行bitcoind的事实仅仅是表明它执行I / O任务的上下文。此外,我不将其用于采矿。这个问题可能无法解决的唯一原因是因为mmcqd它不是特定于Pi的进程,而是通常存在于Linux中。
史蒂文·罗斯

3
我的评论不是主题,不是您的问题。
lenik

刚刚经过测试-问题是比特币吞噬了所有RAM,然后开始交换。RaspberryPI需要另一个1GB RAM:-/

Answers:


10

mmcqd是内核线程,负责管理SD卡上排队的I / O操作。该进程的CPU使用率高表明您有磁盘I / O瓶颈。

实际的顺序读/写速度对于SD卡而言并不总是有意义的,对于操作系统而言,随机访问更为典型。如果您知道bitcoind经常将非关键数据写入磁盘,请考虑使用tmpfs来存储数据。然后,使用cron作业,可以定期将tmpfs中的数据同步到磁盘。

您还可以尝试使用USB HDD,该USB HDD在(随机)写访问权限下应表现更好。


tmpfs在SD卡上使用而不是直接访问SD卡有什么意义?
史蒂文·罗斯

2
tmpfs驻留在RAM中。如果一个进程不断更改文件的微小部分,则值得定期保存这些更改。基本上,您是以数据安全为代价进行性能交换。
Lekensteyn

0

我在嵌入式Linux系统上也遇到了同样的问题,因此Raspberry Pi并非完全正确,但相差不远。

就我而言,问题很简单,就是磁盘已满,并且有一个试图写入日志的进程。我相信重复的写入失败导致mmcqd重试了几次,并且可能使线程处于等待状态。

删除一些日志文件后,一切都很好。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.