![htop에 빨간색이 많이 있습니다. 이는 충돌하는 작업이 있다는 뜻인가요?](https://linux55.com/image/128044/htop%EC%97%90%20%EB%B9%A8%EA%B0%84%EC%83%89%EC%9D%B4%20%EB%A7%8E%EC%9D%B4%20%EC%9E%88%EC%8A%B5%EB%8B%88%EB%8B%A4.%20%EC%9D%B4%EB%8A%94%20%EC%B6%A9%EB%8F%8C%ED%95%98%EB%8A%94%20%EC%9E%91%EC%97%85%EC%9D%B4%20%EC%9E%88%EB%8B%A4%EB%8A%94%20%EB%9C%BB%EC%9D%B8%EA%B0%80%EC%9A%94%3F.png)
빨간색은 "커널 프로세스"를 의미한다고 읽었습니다. 이는 작은 데몬이 CPU를 사용할 수 있는 작업을 규제한다는 의미입니까? 그리고 더 나아가 초과 구독 시스템의 거래 비용은 무엇입니까?
저는 대규모 지오프로세싱 작업을 실행 중이며 두 개의 스크립트가 동시에 병렬로 실행되고 있습니다.
첫 번째 스크립트는 96개 코어 모두에서 실제 처리를 수행합니다. 거의 모든 메모리 사용량을 담당합니다.
두 번째 스크립트는 curl
첫 번째 프로세스에서 사용할 데이터를 다운로드하는 데 사용되며 병렬로 실행됩니다. n_cores * 3
다운받을 파일이 나올때까지만 다운받으라고 썼어요 . 제약 조건이 충족되지 않으면 1분 정도 기다렸다가 다시 확인합니다. 따라서 대부분의 경우 실행되지 않습니다. 또는 오히려 Sys.sleep()
실행 중 입니다 R
.
다운로드 프로세스 중에 더 적은 수의 코어를 사용해 보았습니다. 이렇게 하면 처리 스크립트를 따라잡을 수 없습니다(S3에서 DLing 중입니다).
핵심요약: htop
붉은기를 줄일 수 있다면 프로세스가 더 빨리 진행되나요? 코어보다 프로세스가 많기 때문에 빨간색입니까?
답변1
빨간색은 커널에서 소요된 시간을 나타내며 일반적으로 시스템 호출을 처리하는 프로세스를 나타냅니다. 여기에는 I/O에 소요된 시간이 포함됩니다. 그렇게 하려고 해도 소용없어줄이다시간 낭비가 아니기 때문에 시간을 줄이는 것이 중요합니다. 커널이 유용한 작업을 수행하는 데 소비하는 시간입니다(스래싱을 하지 않는 한 컨텍스트 스위치 수 등을 확인하세요).
다운로드 프로세스 중에 더 적은 수의 코어를 사용해 보았습니다. 이렇게 하면 처리 스크립트를 따라잡을 수 없습니다(S3에서 DLing 중입니다).
현재 설정이 처리에 필요한 I/O 제공과 처리 자체 사이에서 균등하게 균형을 이루고 있음을 보여주는 것은 꽤 좋은 결과입니다. 실행 중인 프로세스가 너무 많다고 의심되는 경우그건지터를 통해 낭비가 발생하는 경우 지오프로세싱 작업 수를 줄여 전체 처리량이 증가하는지 확인할 수 있습니다. 일반적인 벤치마킹 팁이 적용됩니다. 조정해야 할 사항을 식별하고, 결과의 가능한 변화와 그 의미를 식별하고, 한 번에 하나씩 조정한 다음 모든 것을 측정합니다.