2017-05-23 3 views
1

Je cours Windriver Linux sur un matériel basé sur MIPS (octeon). Linux s'exécute sur 16 cœurs et nous avons koftirqd/0 à ksoftirq/15 en cours d'exécution. J'observe le comportement suivant d'équilibrage de charge sur le trafic entrant élevé (comme ping flood):Comportement de ksoftirqd sur le trafic réseau élevé

Tout d'abord, kostfirqd/0 prend toute la charge jusqu'à ce qu'il atteigne environ 96-97% de CPU. Une fois que cpu0 atteint 96-97% de l'utilisation, koftirqd/1 commence à prendre charge et% de CPU pour cpu1 commence à augmenter. Plus le trafic est pompé, cpu 1 atteint 96 -97% et cpu2 commence à prendre charge. Et cela continue jusqu'à ce que ksoftirqd/15 prenne 96-97% à mesure que le trafic entrant augmente.

Est-ce un comportement normal? Pourriez-vous s'il vous plaît laissez-moi savoir si c'est le comportement linux par défaut ou une amélioration possible effectuée par Windriver.

Merci beaucoup,

Vasudev

Répondre

0

pilote Ethernet Cavium Mips a la logique d'envoyer processeur inter interruption à d'autres noyaux pour prendre la charge étant donné les conditions. Lorsque jamais le backlog franchit certaines limites, l'IPI est envoyé à d'autres cœurs. Et le gestionnaire de l'IPI à son tour n'est rien d'autre que la logique d'interrogation NAPI.

D'où le comportement.