multithreading

스레드 이름: /proc/pid/comm은 항상 /proc/pid/status의 Name: 행 및 /proc/pid/stat의 두 번째 필드와 동일합니까?
multithreading

스레드 이름: /proc/pid/comm은 항상 /proc/pid/status의 Name: 행 및 /proc/pid/stat의 두 번째 필드와 동일합니까?

Linux 스레드 또는 포크된 프로세스는 ps파일 시스템 및/또는 해당 명령줄에 표시되는 이름을 변경할 수 있습니다 /proc. 이 패키지를 사용 하면 , , 및 의 두 번째 필드 python-setproctitle에도 동일한 변경이 발생하며 , 여기에는 전체 길이만 표시되고 변경된 이름의 처음 15자가 나머지 3개 위치에 표시됩니다./proc/pid/cmdline/proc/pid/commName:/proc/pid/status/proc/pid/statcmdline 멀티 스레드 프로세스를 보면 ruby...

Admin

코어 수와 더 높은 nice 값으로 프로세스를 실행하는 능력 사이에는 어떤 관계가 있습니까?
multithreading

코어 수와 더 높은 nice 값으로 프로세스를 실행하는 능력 사이에는 어떤 관계가 있습니까?

8개의 높은 우선 순위(nice=-20) OS 스레드(내가 가지고 있는 코어 수)로 CPU를 "플러딩"하면 명백한 이유로 작업이 "일시 중지"되지만 여전히 사용할 수 있습니다. "높은 우선순위 스레드"라고 말하는 것은 동일한 높은 우선순위 프로세스에 의해 생성된 스레드를 의미합니다. 그러나 64개의 스레드가 있으면 컴퓨터를 완전히 사용할 수 없게 됩니다. 최대 우선 순위 스레드와 코어 간 배포 사이의 관계는 무엇입니까? 주어진 좋은 값을 달성하기 위해 CPU를 완전히 플러딩하려면 얼마나 많은 스레드를...

Admin

Linux 다중 스레드 파일 검색
multithreading

Linux 다중 스레드 파일 검색

검색했지만 비슷한 것을 찾을 수 없었습니다. ext4 형식의 NVME 드라이브(예: SAMSUNG 980Pro)에 대용량 코드 베이스(AOSP 또는 Yocto)가 저장되어 있습니다. 이러한 코드 베이스는 수천 개의 하위 디렉터리에 있는 수십만 개의 파일로 구성되는 경우가 많습니다. 파일을 검색하기 위해 find를 사용할 때 일반적으로 다음을 수행합니다. find . -iname "filename.txt" 나는 파일을 조작하고 싶지 않고 단지 파일을 찾고 싶습니다. 나는 이것이 멀티스레딩이라고 생각하...

Admin

HDD의 논리 섹터 크기를 4Kn으로 설정하면 어떤 이점이 있습니까?
multithreading

HDD의 논리 섹터 크기를 4Kn으로 설정하면 어떤 이점이 있습니까?

최신 하드 드라이브는 "고급 형식"예를 들어 기본적으로 512/4096의 논리/물리 섹터 크기를 보고합니다. 기본적으로 대부분의 Linux 포맷 도구는 4096바이트의 블록 크기를 사용합니다(적어도 Debian/EXT4에서는 기본값입니다). 지금까지 저는 이것이 최적화라고 생각했습니다. Linux/EXT4는 논리 섹터 크기가 512K임에도 불구하고 4K 블록을 HDD로 전송하여 이를 최적으로 처리합니다. 그런데 오늘 나는 읽었다.이 최근 (2021) 게시물. 그 사람은 HDD의 논리 섹터 크기를 51...

Admin

하위 스레드가 상위 스레드의 cgroup에 자동으로 들어가는 것을 방지하는 방법이 있습니까?
multithreading

하위 스레드가 상위 스레드의 cgroup에 자동으로 들어가는 것을 방지하는 방법이 있습니까?

나는 내가 만든 Linux cgroup에 애플리케이션 스레드 중 일부를 명시적으로 작성합니다. cpu예를 들어 지금은 v1에 대해 이야기하지만 v2에 대한 방법을 알고 있다면 좋을 것입니다. 그러나 하위 스레드( pthread_create()상위 스레드의 호출로 생성되거나 cgroup에 명시적으로 기록되거나 상위 스레드 다음에 다시 작성된 스레드)도 직접 작성하지 않고도 cgroup에 나타나는 것을 볼 수 있습니다. 이는 애플리케이션에 나쁜 영향을 미칠 수 있습니다. 일부 스레드가 예기치 않게 cgr...

Admin

Linux는 스레드를 P 코어 또는 E 코어에 고정하는 방법을 제공합니까?
multithreading

Linux는 스레드를 P 코어 또는 E 코어에 고정하는 방법을 제공합니까?

Intel 제품군의 12세대 이상 칩(및 내가 아는 한 ARM 칩)에는 클럭 속도가 다른 다양한 클래스의 코어가 있습니다. P 코어는 성능을 향상시키고 클럭 속도를 높입니다. E 코어는 에너지 효율성을 향상시키고 클럭 속도를 줄입니다. 이는 주파수를 제한할 수 있는 칩이라고 제가 이해하는 것과는 다르지만, 코어 전반에 걸쳐 동일합니다. 스레드를 P 코어 또는 E 코어 클래스에 바인딩하는 방법이 있습니까? ...

Admin

프로세스 내 및 프로세스 간 컨텍스트 전환 빈도
multithreading

프로세스 내 및 프로세스 간 컨텍스트 전환 빈도

내가 읽고 있는 책(2013년)에 따르면 Linux 커널에서는 프로세스 내 전환이 프로세스 간 전환보다 훨씬 저렴하다고 나와 있습니다. 동일한 CPU에서 동일한 프로세스의 두 스레드 간에 전환하면 시간이 절약되기 때문입니다. 페이지 테이블 전환 비용. 따라서 동일한 프로세스의 두 스레드/작업 간 전환은 관련되지 않은 작업 간 전환보다 저렴합니다. Linux 커널은 성능 향상을 위해 프로세스 내 전환 가능성을 높이기 위해 어떤 방식으로든(프로세스 선호도 외에) 시도합니까? 그렇지 않다면 이런 일이 얼마...

Admin

통계수집
multithreading

통계수집

저는 CPU 코어에서 실행되는 스레드가 있는 간단한 프로그램을 작성했습니다. 약간 공격적으로 회전하며 CPU 코어를 100% 사용합니다. top+ 로 이것을 볼 수 있습니다 1. N분 후에 다음 사항을 알고 싶습니다. 커널은 실행 중인 스레드를 몇 번이나 선점(중단)합니까? ...

Admin

sigtimedwait는 errno를 ETIMEDOUT, timeout=0으로 설정합니다.
multithreading

sigtimedwait는 errno를 ETIMEDOUT, timeout=0으로 설정합니다.

cpp 다중 스레드 프로그램에서는 sigwait모든 스레드가 생성되고 프로그램이 초기화된 후 주 함수 끝에 Linux 구현 복사본을 사용합니다. sigset_t mask; struct sigaction sa; signal(SIGPIPE, SIG_IGN); sigemptyset(&mask); sigaddset(&mask, SIGINT); sa.sa_flags = SA_SIGINFO | SA_NODEFER; sa.sa_sigaction = h...

Admin

CPU 사용량이 높을수록 작업 속도가 느려지는 이유는 무엇입니까?
multithreading

CPU 사용량이 높을수록 작업 속도가 느려지는 이유는 무엇입니까?

나는 사용하고있다속삭임.cpp일부 사운드 파일을 복사합니다. 이는 CPU 집약적인 프로세스이므로 최적의 설정을 찾으려고 노력하여 스레드 설정(-t)으로 몇 가지 테스트를 수행했지만 결과는 매우 혼란스러웠습니다. 내가 실행한 명령은 다음과 같습니다. date; time ./main -t [number of threads] -m ggml-model.bin -f 5min-16kHz.wav; date 저는 6개 코어(+ 6개 하이퍼스레딩 코어)를 갖춘 Intel i7이 탑재된 Macbook Pro에서 이것...

Admin

라운드 로빈 스케줄링 및 컨텍스트 전환은 내부적으로 어떻게 작동합니까?
multithreading

라운드 로빈 스케줄링 및 컨텍스트 전환은 내부적으로 어떻게 작동합니까?

라운드 로빈 스케줄링을 사용하여 커널은 다양한 프로세스/작업에 시간 조각을 제공합니다. 타이머가 시간 초과되면 커널이 타이머를 초기화하고 현재 작업이 중단된 다음 커널이 제어권을 갖게 되는 것 같습니다. 커널은 새로운 작업을 예약하기 위해 타이머 시간 초과 인터럽트를 사용해야 한다는 것을 어떻게 알 수 있습니까? 스케줄러뿐만 아니라 다양한 목적으로 서로 다른 타이머를 사용한다면 어떻게 될까요? 다양한 인터럽트 서비스 루틴은 모두 어디로 가나요? 미리 감사드립니다. ...

Admin

Linux의 스레드 스택은 프로세스의 메모리 매핑된 세그먼트에서 나오나요?
multithreading

Linux의 스레드 스택은 프로세스의 메모리 매핑된 세그먼트에서 나오나요?

저는 현재 리눅스를 배우고 있습니다. 나는 스레드가 Linux에서 가벼운 프로세스라는 것을 알고 있습니다. 하지만 스레드 스택 공간이 어디서 나오는지 알고 싶습니다. 스레드의 스택은 비공개입니다. 이는 프로세스 스택과 독립적입니다. 내 검색에 따르면 어떤 사람들은 스레드 스택 이 mmap(). 스택과 힙 사이에 위치합니다. 따라서 스레드 스택은 프로세스의 메모리 매핑된 세그먼트에서 나옵니다. 그렇죠?mmap()heap ...

Admin

암호화 및 우수한 압축 알고리즘을 갖춘 멀티 스레드 Linux 백업 도구를 찾고 있습니다.
multithreading

암호화 및 우수한 압축 알고리즘을 갖춘 멀티 스레드 Linux 백업 도구를 찾고 있습니다.

백업 전략을 업그레이드하기 위해 Linux 백업 도구를 찾고 있습니다. 현재 저는 Linux 서버(Ubuntu 20.04)에서 매일 전체 백업을 수행하고 있습니다. 저는 가상화 시스템에 대한 의존성을 피하기 위해(Linux 및 LAMP&Co 도구를 사용하여 모든 유형의 서버에서 재부팅할 수 있도록) VM 내부에서 직접 데이터를 백업하고 다른 사이트(VMware vSphere 수준이 아닌)로 보내는 것을 선호합니다. 우리는 백만 개가 넘는 파일(csv, json, xlsx)과 거의 1To의 데이...

Admin

Mutex+CV를 기반으로 하지 않는 POSIX 세마포어 구현이 있습니까?
multithreading

Mutex+CV를 기반으로 하지 않는 POSIX 세마포어 구현이 있습니까?

FreeBSD 커널의 세마포어가 Mutex+CV만큼 효율적이지 않다는 것을 읽었습니다.이 매뉴얼 페이지. POSIX 세마포어의 커널 및 시스템 호출 구현을 확인했습니다.원천 암호그리고 Mutex+CV 위에 구현되었는지 확인합니다. 아마도나의 오해실시간 동기화 프리미티브인 POSIX 세마포어는 매우 효율적입니다. 그러나 이것을 읽고 본 후에는 그것이 얼마나 효율적인지 잘 모르겠습니다. 게다가 책도 읽고 있어요동시 프로그래밍: 알고리즘, 원리 및 기본 사항. 이제 아직 첫 번째 부분을 다 읽지 못했지만 ...

Admin

이 작업은 프로세서 1개를 사용하면 15분, 프로세서 2개를 사용하면 20분이 소요됩니다.
multithreading

이 작업은 프로세서 1개를 사용하면 15분, 프로세서 2개를 사용하면 20분이 소요됩니다.

Debian 12 VM(VirtualBox)의 NTFS 파티션 루트에서 실행하는 명령입니다. $ (find . -type f -exec cat {} \;) | pv | wc -c 모든 파일을 읽을 수 있는지 확인하려고합니다. 이는 Windows에서 디스크 오류를 생성하는 것으로 보이는 손상된 Windows 10 파일 시스템이므로 Linux가 이 파일 시스템을 어떻게 처리하는지 확인하기 위해 이 테스트를 수행하고 싶었습니다. 15분만에 끝났습니다. 그런 다음 가상 머신에 프로세서가 하나만 있다는 것을 ...

Admin