Qu'est-ce que le processus mmcqd?

13

J'ai un Raspberry Pi exécutant Raspbian Wheezy sans tête avec tous les logiciels liés aux graphiques désinstallés.

J'ai bitcoind en cours d'exécution, qui consomme principalement la plupart des ressources. Habituellement, lorsque je vérifie les processus via top, je peux voir que bitcoindn'utilise qu'une quantité importante de ressources, avec sshdet topsur la deuxième et la troisième place.

Pour une raison quelconque, actuellement, un nouveau processus commence à culminer dans l'utilisation des ressources, appelé mmcqd/0. Il utilise souvent jusqu'à 55% de la puissance du processeur dans les pics et reste à une constante d'environ 5% dans le cas contraire.

Que fait ce processus?

J'ai lu que cela peut être dû à une carte SD lente, mais j'ai testé mes vitesses de lecture / écriture et j'ai obtenu> 15 Mo / s pour les deux (j'ai obtenu une carte SD de classe 10 de 32 Go).

Steven Roose
la source
totalement hors sujet, l'exécution de l'extraction de bitcoin sur la framboise ne couvrirait même pas votre temps passé à l'installer.
lenik
Le fait que j'exécute bitcoind dessus n'est qu'un contexte pour indiquer qu'il effectue des tâches d'E / S. D'ailleurs, je ne l'utilise pas pour l'exploitation minière. La seule raison pour laquelle cette question pourrait être hors sujet serait parce que ce mmcqdn'est pas un processus spécifique à Pi, mais existe pour Linux en général.
Steven Roose
3
mon commentaire était hors sujet, pas votre question.
lenik
vient d'être testé - le problème est que bitcoind mange toute la RAM puis commence à échanger. Encore 1 Go de RAM nécessaire pour RaspberryPI: - /

Réponses:

10

mmcqdest un thread du noyau, responsable de la gestion des opérations d'E / S en file d'attente sur la carte SD. Une utilisation élevée du processeur de ce processus indique que vous avez un goulot d'étranglement d'E / S disque.

La vitesse de lecture / écriture séquentielle réelle n'est pas toujours significative pour les cartes SD, l'accès aléatoire est plus typique pour un système d'exploitation. Si vous savez que l' bitcoindécriture fréquente de données non critiques sur le disque, envisagez d'utiliser tmpfspour le stockage des données. Ensuite, à l'aide d'une tâche cron, vous pouvez synchroniser périodiquement les données de tmpfs sur le disque.

Vous pouvez également expérimenter l'utilisation d'un disque dur USB, qui devrait mieux fonctionner avec un accès en écriture (aléatoire).

Lekensteyn
la source
Quel est l'intérêt d'utiliser tmpfssur la carte SD au lieu d'accéder directement à la carte SD?
Steven Roose
2
tmpfsréside dans la RAM. Si un processus modifie constamment de minuscules parties d'un fichier, il peut être utile d'enregistrer ces modifications régulièrement. Fondamentalement, vous échangez la sécurité des données contre des performances.
Lekensteyn
0

J'ai eu le même problème sur un système Linux embarqué, donc pas exactement un Raspberry Pi mais pas trop loin.

Dans mon cas, le problème était simplement que le disque était plein et qu'un processus tentait d'écrire des journaux. Je crois que les échecs d'écriture répétés ont provoqué plusieurs tentatives de mmcqd et peut-être de garder un thread en attente.

Après avoir supprimé certains fichiers journaux, tout allait bien.

Marco
la source