백그라운드 작업을 중지하거나 벤치마크 모드를 만드는 방법을 찾고 있습니다.

백그라운드 작업을 중지하거나 벤치마크 모드를 만드는 방법을 찾고 있습니다.

저는 Ubuntu 20.04를 사용하고 있으며 일부 CFD 코드의 성능 최적화 작업을 진행 중입니다. 일부 수정이 유익한지 여부에 대한 빠른 피드백을 위해 코드 타이밍을 정할 때 백그라운드 프로세스가 시작되기 때문에 실행 간 차이가 꽤 큰 경우가 많습니다.

코드는 사용 가능한 모든 스레드를 사용하기 때문에 하나의 스레드가 백그라운드 작업으로 인해 부담을 느끼면 다른 모든 스레드가 대기하게 됩니다.

이제 제 질문은 백그라운드/필수적이지 않은 작업을 일시적으로 중단하여 시스템을 일종의 벤치마크 모드에 두는 빠르고 쉬운 방법이 있는지 여부입니다. Bash 스크립트, 패키지, 내장 옵션 모두 환영합니다.

답변1

방법 중 하나는 시스템을 다중 사용자 대상으로 전환하는 것입니다(즉, 그래픽 세션이 없음을 의미). 실행 중인 프로세스를 약 50개로 줄입니다.

sudo systemctl isolate multi-user.target

또는 단일 사용자로 전환할 수도 있습니다(약 10개의 프로세스가 실행됩니다).

sudo systemctl isolate runlevel1.target
# Enter
su -l your-user-name

그런 다음 이 런레벨에서 애플리케이션을 실행하세요.


벤치마크가 완료되면 다음을 통해 그래픽 세션으로 다시 전환합니다.

sudo systemctl isolate graphical.target

관련 정보