Linux에서 스왑이 발생할 때 CPU 사용량이 100%까지 올라가야 합니까?

Linux에서 스왑이 발생할 때 CPU 사용량이 100%까지 올라가야 합니까?

저는 다음 커널을 사용하여 Linux에서 데모 시스템을 실행하고 있었습니다.

2.6.32-400.1.1.el5uek #1 SMP 월 6월 25일 20:25:08 EDT 2012 x86_64 x86_64 x86_64 GNU/Linux

그리고 스왑이 발생하자마자 시스템의 CPU 사용량은 거의 100% 사용 중으로 올라가며 그 중 약 90%는 sys CPU 사용량입니다. Linux 페이지 데몬이 시작되어 메모리가 부족할 때만(또는 여유 메모리가 0.5G 미만일 때) 스왑하기 위해 메모리 청크를 쓰기 시작하여 sys CPU 사용량이 많이 발생하기 때문에 예상되는 일이라고 들었습니다. "swappiness"는 시스템에서 60입니다.

Linux에서 스왑이 발생하면 CPU 사용량이 100%가 되는 것이 예상되는 동작입니까?

위와 같은 질문을 받은 이유는 다음 Linux 커널을 사용하는 다른 시스템으로 데모를 마이그레이션할 때 위의 동작이 변경되었기 때문입니다.

2.6.39-400.128.14.el5uek #1 SMP 5월 10일 토요일 00:06:52 PDT 2014 x86_64 x86_64 x86_64 GNU/Linux

내가 발견한 마이그레이션된 시스템에서 vm 매개변수의 유일한 차이점은 min_free_kbytes 매개변수가 마이그레이션된 시스템에서는 524288로 변경되고 사전 마이그레이션된 시스템에서는 51200으로 변경되었다는 것입니다.

마이그레이션된 시스템에서는 사용 가능한 메모리가 1.5G 미만에 도달하면 스왑이 발생하고 CPU 사용량이 30%에서 40% 정도 약간 증가하며 짧은 기간 동안만 애플리케이션 성능이 불규칙해졌습니다. 스왑이 발생하기 전과 같이 모든 것이 정상으로 돌아갑니다.

스왑이 발생할 때 CPU 사용량이 최대 100%까지 올라가지 않을 정도로 마이그레이션된 시스템이 다르게 동작하는 이유는 무엇입니까?

매우 중요한 데모 시스템이며 위의 두 가지 질문에 대한 설명이 매우 유용할 것입니다. 어떤 아이디어라도 대단히 감사하겠습니다.

관련 정보