2017-05-23 1 views
1

MIPS (octeon) 기반 하드웨어에서 Windriver Linux를 실행하고 있습니다. 리눅스는 16 코어에서 실행되며 koftirqd/0에서 ksoftirq/15까지 실행됩니다. 높은 수신 트래픽 (예 : ping flood)에서로드 균형 조정의 다음 동작을 관찰합니다.높은 네트워크 트래픽에서의 ksoftirqd 동작

먼저 kostfirqd/0은 CPU로드가 96-97 % 정도가 될 때까지 모든로드를 처리합니다. cpu0이 사용량의 96-97 %에 도달하면 koftirqd/1이로드를 시작하고 cpu1의 CPU %가 증가하기 시작합니다. 더 많은 트래픽이 펌핑되면 cpu 1은 96 -97 %에 도달하고 cpu2는로드를 시작합니다. 들어오는 트래픽이 증가함에 따라 ksoftirqd/15가 96-97 %를 차지할 때까지 계속됩니다.

이것은 예상되는 동작입니까? 기본 Linux 동작인지 아니면 Windriver에서 가능한 개선인지 여부를 알려주십시오.

고마워요,

Vasudev

답변

0

비움의 MIPS 이더넷 드라이버는 주어진 조건 하중을 다른 코어에 프로세서 간 인터럽트를 전송하기위한 로직을 갖는다. 백 로그가 특정 제한을 초과하면 IPI가 다른 코어로 전송됩니다. IPI의 핸들러는 NAPI 폴링 논리에 불과합니다.

따라서 문제가 발생합니다.

관련 문제