English프랑스어스페인어

온웍스 파비콘

Stress-ng - 클라우드에서의 온라인

Ubuntu Online, Fedora Online, Windows 온라인 에뮬레이터 또는 MAC OS 온라인 에뮬레이터를 통해 OnWorks 무료 호스팅 제공업체에서 Stress-ng를 실행하세요.

Ubuntu Online, Fedora Online, Windows 온라인 에뮬레이터 또는 MAC OS 온라인 에뮬레이터와 같은 여러 무료 온라인 워크스테이션 중 하나를 사용하여 OnWorks 무료 호스팅 제공업체에서 실행할 수 있는 스트레스-ng 명령입니다.

프로그램:

이름


Stress-ng - 컴퓨터 시스템을 로드하고 스트레스를 주는 도구

개요


스트레스 [OPTION [ARG]] ...

기술


Stress-ng는 다양한 선택 가능한 방식으로 컴퓨터 시스템의 스트레스 테스트를 수행합니다. 디자인되었습니다
컴퓨터의 다양한 물리적 하위 시스템과 다양한 운영을 실행합니다.
시스템 커널 인터페이스. Stress-ng에는 광범위한 CPU별 스트레스 테스트도 있습니다.
부동 소수점, 정수, 비트 조작 및 제어 흐름을 실행합니다.

Stress-NG는 원래 기계를 열심히 작동시키고 하드웨어 문제를 발생시키도록 의도되었습니다.
열 오버런, 시스템이 작동하지 않을 때만 발생하는 운영 체제 버그 등
심하게 구타당하고 있습니다. 일부 테스트로 인해 시스템이 실행될 수 있으므로 스트레스-ng를 주의해서 사용하세요.
잘못 설계된 하드웨어에서는 과열이 발생하고 과도한 시스템 스래싱이 발생할 수도 있습니다.
멈추기가 어렵습니다.

Stress-ng는 테스트 처리 속도도 측정할 수 있습니다. 이것은 관찰하는 데 유용할 수 있습니다.
다양한 운영 체제 릴리스 또는 하드웨어 유형에 따른 성능 변화.
그러나 정확한 벤치마크 테스트 도구로 사용하려는 의도는 없었으므로 그렇게 하십시오.
이런 방식으로 사용하지 마십시오.

루트 권한으로 스트레스-ng를 실행하면 Linux 시스템의 메모리 부족 설정이 조정됩니다.
메모리가 부족한 상황에서 스트레스 요인을 죽일 수 없게 만들려면 이 방법을 신중하게 사용하세요. 와 함께
적절한 권한을 부여하면 Stress-ng를 통해 이온 클래스와 이온 수준을 다음과 같이 설정할 수 있습니다.
조정된 내용이므로 주의해서 사용해야 합니다.

스트레스 테스트 유형별로 호출할 프로세스 수를 지정할 수 있습니다. 지정
음수 또는 XNUMX 값은 다음에 정의된 대로 사용 가능한 프로세서 수를 선택합니다.
sysconf(_SC_NPROCESSORS_CONF).

옵션


일반 스트레스 제어 옵션 :

--공격적인
더 많은 파일, 캐시 및 메모리 공격적인 옵션을 사용할 수 있습니다. 이로 인해 테스트 속도가 느려질 수 있습니다.
지연 시간을 늘리고 보고 작업 수를 줄이며
스트레스 요인의 유형에 따라 사용되는 사용자 시간과 시스템 시간의 균형
익숙한.

-a N, --모두 N
각 스트레스 요인의 N 인스턴스를 시작합니다. N이 XNUMX보다 작으면 CPU 수는 다음과 같습니다.
온라인은 인스턴스 수에 사용됩니다. N이 XNUMX이면 CPU 수
시스템에서 사용됩니다.

-b N, --물러나 다 N
각 스트레스 작업자 프로세스 시작 사이에 N 마이크로초를 기다립니다. 이를 통해
시간이 지남에 따라 스트레스 테스트를 강화하는 것입니다.

--수업 name
실행할 스트레스 요인의 클래스를 지정합니다. 스트레스 요인은 다음 중 하나 이상으로 분류됩니다.
다음 클래스: CPU, CPU-Cache, 장치, IO, 인터럽트, 파일 시스템, 메모리,
네트워크, OS, 파이프, 스케줄러 및 VM. 일부 스트레스 요인은 단 하나의 클래스로 분류됩니다. 을 위한
예를 들어 'get' 스트레스 요인은 'os' 클래스에 있습니다. 다른 스트레스 요인은 다음과 같습니다.
하나 이상의 클래스, 예를 들어 'lsearch' 스트레스 요인이 'cpu'에 속합니다.
'cpu-cache' 및 'memory' 클래스는 이 세 가지를 모두 실행합니다. 선택
특정 클래스는 실행될 때만 해당 클래스에 속하는 모든 스트레스 요인을 실행합니다.
--순차 옵션을 사용합니다.

-N, -건조
옵션을 구문 분석하지만 스트레스 테스트를 실행하지 않습니다. 무작동.

-시간, --도움
도움말을 표시합니다.

--ignite-cpu
커널 제어를 변경하여 CPU를 최대화하십시오. 이를 위해서는 루트 권한이 필요합니다.
다양하게 바꾸다 / sys 인터페이스 제어. 현재 이는 Intel P-State에서만 작동합니다.
Linux에서 x86 시스템을 활성화했습니다.

--ionice-class 수업
ionice 클래스를 지정합니다(Linux에만 해당). 유휴 상태(기본값), 최선을 다할 수 있음,
실시간, RT.

--이온 수준 수평
이온 수준을 지정합니다(Linux에만 해당). 유휴의 경우 0이 유일한 옵션입니다. 을 위한
최선의 노력 또는 실시간 값은 0(가장 높은 우선순위)부터 7(가장 낮은 우선순위)까지입니다. 보다
이오니아(1) 자세한 내용은.

-케이, --이름 유지
기본적으로 Stress-ng는 스트레스 프로세스의 이름을 변경하려고 시도합니다.
기능에 따라; 이 옵션은 이를 비활성화하고 프로세스를 유지합니다.
이름은 상위 프로세스의 이름, 즉 스트레스-ng가 됩니다.

--로그 요약
기본적으로 Stress-ng는 프로그램 이름, 메시지 유형 및
프로세스 ID를 모든 출력의 접두어로 사용합니다. --log-brief 옵션은 메시지를 출력합니다
덜 장황한 출력을 생성하려면 이러한 필드가 없습니다.

--로그 파일 파일 이름
지정된 로그 파일에 메시지를 씁니다.

--최대화
기본 스트레스 요인 설정을 무시하고 대신 이를 최대값으로 설정합니다.
설정이 허용됩니다. 이러한 기본값은 항상 스트레스 요인에 따라 무시될 수 있습니다.
필요한 경우 설정 옵션.

--메트릭
스트레스 프로세스에 의해 수행된 총 보고 작업 수를 출력합니다. 메모
이는 성능이나 처리량에 대한 신뢰할 수 있는 지표가 아니며,
벤치마킹에 사용하도록 설계되었습니다. 측정항목은 단지 유용한 방법일 뿐입니다.
다양한 종류의 로드 하에서 시스템이 어떻게 작동하는지 관찰합니다.

다음 정보 열이 출력됩니다.

표제 설명
bogo ops는 실행 중 스트레스 요인의 반복 횟수입니다.
이는 전체 "작업"이 얼마나 되었는지를 나타내는 척도입니다.
보고 작업에서 달성되었습니다.
실시간(초) 평균 벽시계 지속 시간(초)
스트레스 요인. 이것은 모든 벽시계의 총 시간입니다.
특정 스트레스 요인의 사례를
실행되는 이러한 스트레스 요인의 수.
usr 시간(초) 모든 작업을 실행하는 데 소비된 총 사용자 시간(초)
스트레스 요인의 사례.
sys 시간(초) 모든 작업을 실행하는 데 소비된 총 시스템 시간(초)
스트레스 요인의 사례.
bogo ops/s(실시간) 벽시계 실행을 기준으로 한 초당 총 보고 작업 수
시간. 벽시계 시간은 명백한 실행을 반영합니다.
시간. 시스템에 프로세서가 많을수록 더 많은
작업 부하가 이들에 분산될 수 있으므로
벽시계 시간이 줄어들고 보고 작전 속도가 빨라집니다.
증가할 것입니다. 이것은 본질적으로 "명백한" 보고입니다.
시스템의 운영 속도.

bogo ops/s (usr+sys 시간) 누적 기준 초당 총 Bogo 작업
사용자 및 시스템 시간. 이것이 실제 보고 작전 비율입니다.
실제 시간을 고려한 시스템
모든 영역에서 스트레스 요인의 실행 시간
프로세서. 일반적으로 이것은 추가함에 따라 감소합니다.
캐시 경합으로 인해 더 많은 동시 스트레스 요인 발생
메모리, 실행 장치, 버스 및 I/O 장치.

--메트릭-요약
지표를 활성화하고 XNUMX이 아닌 지표만 출력합니다.

--최소화
기본 스트레스 요인 설정을 무시하고 대신 이를 최소로 설정합니다.
설정이 허용됩니다. 이러한 기본값은 항상 스트레스 요인에 따라 무시될 수 있습니다.
필요한 경우 설정 옵션.

--조언하지 마세요
버전 0.02.26부터 스트레스-ng가 자동으로 호출됩니다. 미치게 하다(2) 무작위 조언으로
각 mmap 및 munmap 앞에 옵션을 추가하여 vm 하위 시스템에 좀 더 스트레스를 줍니다.
--no-advise 옵션은 이 기본값을 끕니다.

--페이지 인
코어에 없는 할당된 페이지를 터치하여 다시 페이지로 들어가도록 합니다.
사용할 때 할당된 모든 페이지를 강제로 페이지 인하는 유용한 옵션입니다.
bigheap, mmap 및 vm 스트레스 요인. 다음과 같은 경우 성능이 심각하게 저하됩니다.
시스템의 메모리가 할당된 버퍼 크기보다 작습니다. 이는 다음을 사용합니다. 민코어(2)
코어에 있지 않아 페이지를 터치해야 하는 페이지를 확인합니다.
다시.

--병리적
시스템을 중단시키는 것으로 알려진 스트레스 요인을 활성화합니다. 일부 스트레스 요인은 빠르게
시스템이 종료되기 전에 신속하게 시스템을 중단시킬 수 있는 방식으로 리소스를 소비합니다.
커널은 OOM을 죽일 수 있습니다. 이러한 스트레스 요인은 기본적으로 활성화되어 있지 않습니다. 이 옵션은
활성화하지만 아마도 이 작업을 원하지 않을 것입니다. 당신은 경고를 받았습니다.

--성능 성능 이벤트를 사용하여 프로세서 및 시스템 활동을 측정합니다. Linux 전용 및 주의사항
emptor에 따르면 perf_event_open(2): "항상 결과를 다시 확인하세요! 다양한
일반화된 사건의 값이 잘못되었습니다."

-NS, --조용한
어떤 출력도 표시하지 않습니다.

-r N, --무작위의 N
N개의 무작위 스트레스 작업자를 시작합니다. N이 0이면 구성된 프로세서의 수
N에 사용됩니다.

--sched 스케줄러
명명된 스케줄러를 선택합니다(Linux에만 해당). 사용 가능한 스케줄러 목록을 보려면
사용: 스트레스-ng --sched

--sched-prio 프리 오
스케줄러 우선 순위 수준을 선택합니다(Linux에만 해당). 스케줄러가 그렇지 않은 경우
이를 지원하면 기본 우선순위 수준인 0이 선택됩니다.

--잇달아 일어나는 N
기본값인 60초 동안 모든 스트레스 요인을 하나씩 순차적으로 실행합니다. 그만큼
시작될 각 개별 스트레스 요인의 인스턴스 수는 N입니다. N이 더 작은 경우
XNUMX보다 큰 경우 온라인 CPU 수가 인스턴스 수로 사용됩니다. 만약에
N이 XNUMX이면 시스템의 CPU 수가 사용됩니다. --timeout 옵션을 사용하세요
각 스트레스 요인을 실행하는 기간을 지정합니다.

--syslog
syslog에 출력을 기록합니다(verbose -v 메시지 제외).

--임시 경로 통로
스트레스-ng 임시 디렉터리 및 임시 파일의 경로를 지정합니다. 기본값
path는 현재 작업 디렉터리입니다. 이 경로에는 읽기 및 쓰기 액세스 권한이 있어야 합니다.
스트레스-ng 스트레스 과정을 위해.

-t N, --시간 초과 N
N초 후에 스트레스 테스트를 중지합니다. 시간 단위를 지정할 수도 있습니다.
초, 분, 시간, 일 또는 연도에는 접미사 s, m, h, d 또는 y가 붙습니다.

--타이머-슬랙 N
프로세스당 타이머 여유 시간을 N나노초로 조정합니다(Linux에만 해당). 증가
타이머 여유 시간을 사용하면 커널이 일부 퍼지를 추가하여 타이머 이벤트를 통합할 수 있습니다.
타이머 만료 시간이 단축되므로 웨이크업이 줄어듭니다. 반대로 타이머를 줄이면
슬랙은 웨이크업을 증가시킵니다. 타이머 여유 시간의 값이 0이면 시스템이 설정됩니다.
기본값은 50,000나노초입니다.

--타임스
마지막에 모든 하위 프로세스의 누적 사용자 및 시스템 시간을 표시합니다.
스트레스 실행. 사용 가능한 CPU 시간의 활용률도
시스템의 온라인 CPU 수에서 계산됩니다.

--tz 머신의 사용 가능한 열 영역에서 온도를 수집합니다(Linux에만 해당).
일부 장치에는 하나 이상의 열 구역이 있을 수 있지만 다른 장치에는 열 구역이 없을 수도 있습니다.

-V, --말 수가 많은
모든 디버그, 경고 및 일반 정보 출력을 표시합니다.

--검증
테스트가 실행될 때 결과를 확인합니다. 모든 테스트에서 사용할 수 있는 것은 아닙니다. 이것은
테스트 실행에서 계산 또는 메모리 내용을 확인하고 보고합니다.
예상치 못한 오류가 발생하면 표준 오류가 발생합니다.

-V, --번역
버전을 표시합니다.

-NS, --들어오지 못하게 하다 명부
제외할 하나 이상의 스트레스 요인 목록을 지정합니다(즉, 실행하지 않음).
이는 실행할 많은 스트레스 요인을 선택할 때 특정 스트레스 요인을 제외하는 데 유용합니다.
--class 옵션, --순차적, --all 및 --random 옵션을 사용합니다. 예, 실행
CPU 클래스 스트레스 요인을 동시에 처리하고 Numa 및 검색 스트레스 요인을 제외합니다.

스트레스-ng --class CPU --all 1 -x numa,bsearch,hsearch,lsearch

-와이, --yaml 파일 이름
수집된 통계를 'filename'이라는 YAML 형식의 파일로 출력합니다.

스트레스 요인 구체적인 옵션 :

--유연 N
CPU 선호도를 빠르게 변경하는 N 작업자를 시작합니다(Linux에만 해당). 신속한 전환
CPU 선호도는 캐시 동작 불량의 원인이 될 수 있습니다.

--affinity-ops N
N번 보고 선호도 작업 후에 선호도 작업자를 중지합니다(Linux에만 해당).

--친화성-랜드
CPU 선호도를 기본값인 순차적이 아닌 무작위로 전환합니다.

--af-alg N
다양한 크기를 해싱하여 AF_ALG 소켓 도메인을 실행하는 N 작업자를 시작합니다.
SHA1, SHA224, SHA256, SHA384, SHA512, MD4, MD5, RMD128을 사용하는 무작위 메시지,
RMD160, RMD256, RMD320, WP256, WP384, WP512, TGR128, TGR160 및 TGR192 해시.
(리눅스만 해당).

--af-alg-ops N
N개의 AF_ALG 메시지가 해시된 후 af-alg 작업자를 중지합니다.

--aio N
여러 개의 작은 비동기 I/O 쓰기 및 읽기를 실행하는 N 작업자를 시작합니다.
POSIX aio 인터페이스를 사용하는 비교적 작은 임시 파일입니다. 이거 딱 맞을걸
파일 시스템 캐시를 발행하고 발행하는 데 많은 사용자 및 커널 시간을 소모합니다.
I/O 요청을 처리합니다. 기본적으로 각 작업자 프로세스는 16개의 동시 처리를 처리합니다.
I/O 요청.

--aio-ops N
N 보고 비동기 I/O 요청 후에 POSIX 비동기 I/O 작업자를 중지합니다.

--aio-요청 N
각 작업자가 발행해야 하는 POSIX 비동기 I/O 요청 수를 지정합니다.
기본값은 16입니다. 1부터 4096까지 허용됩니다.

--aiol N
다음을 사용하여 여러 개의 4K 무작위 비동기 I/O 쓰기를 실행하는 N 작업자를 시작합니다.
리눅스 AIO 시스템 호출 io_setup(2) io_제출(2) io_getevents(2)과하면
io_destroy(2). 기본적으로 각 작업자 프로세스는 16개의 동시 I/O를 처리합니다.
요청.

--aiol-ops N
N 보고 비동기 I/O 요청 후에 Linux 비동기 I/O 작업자를 중지합니다.

--aiol-요청 N
각 작업자가 발행해야 하는 Linux 비동기 I/O 요청 수를 지정합니다.
기본값은 16입니다. 1부터 4096까지 허용됩니다.

--의류 N
AppArmor 인터페이스의 다양한 부분을 실행하는 N 작업자를 시작합니다. 현재
이 특정 테스트를 실행하려면 루트 권한이 필요합니다. 이 테스트만 가능합니다.
AppArmor를 지원하는 Linux 시스템에서.

--apparmor-ops
N 보고 작업 후에 AppArmor 작업자를 중지합니다.

-B N, --큰힙 N
메모리를 재할당하여 힙을 늘리는 N 작업자를 시작합니다. 메모리가 부족할 경우
Linux의 킬러(OOM)가 작업자를 죽이거나 할당이 실패한 후 할당이 실패합니다.
프로세스가 다시 시작됩니다. 작업자에 대한 OOM 조정이 설정되어 있습니다.
OOM 킬러는 이 워커를 첫 번째 후보 프로세스로 취급합니다.
죽이다.

--bigheap-ops N
N 보고 할당 작업이 완료된 후 큰 힙 작업자를 중지합니다.

--큰힙 성장 N
반복당 힙을 늘릴 메모리 양을 지정합니다. 크기는 4K에서
64MB. 기본값은 64K입니다.

--바인드 마운트 N
사용자 네임스페이스 내에서 mount /를 /에 반복적으로 바인딩하는 N 작업자를 시작합니다. 이것은 할 수 있다
리소스를 빠르게 소모하여 메모리 부족 상황을 발생시킵니다. 이것을 사용하지 마십시오
기계를 걸 위험을 감수하고 싶지 않다면 스트레스 요인이 됩니다.

--바인드-마운트-ops N
N 바인드 마운트 보고 작업 후에 중지합니다.

--brk N
여러 항목을 사용하여 한 번에 한 페이지씩 데이터 세그먼트를 늘리는 N 작업자를 시작합니다.
BRK(2) 전화. 성공적으로 할당된 각 새 페이지를 터치하여 제대로 할당되었는지 확인합니다.
메모리에 상주합니다. 메모리 부족 상태가 발생하면 테스트가 재설정됩니다.
데이터 세그먼트를 시작하기 전 지점으로 이동하고 데이터 세그먼트를 반복합니다.
다시 크기를 조정합니다. 프로세스는 메모리 부족 설정을 조정하여
다른 프로세스보다 먼저 메모리 부족(OOM) 킬러에 의해 종료됩니다. 그렇다면
OOM 킬러에 의해 종료되면 모니터링에 의해 자동으로 다시 시작됩니다.
부모 프로세스.

--brk-ops N
N bogo brk 작업 후 brk 작업자를 중지합니다.

--brk-노터치
새로 할당된 각 데이터 세그먼트 페이지를 건드리지 마십시오. 이렇게 하면 기본값이 비활성화됩니다.
새로 할당된 각 페이지를 터치하므로 커널이 필연적으로
실제 물리적 메모리로 페이지를 백업합니다.

--b검색 N
다음을 사용하여 정렬된 32비트 정수 배열을 이진 검색하는 N 작업자를 시작합니다.
b검색(삼). 기본적으로 배열에는 3개의 요소가 있습니다. 이것은 유용한
메모리 및 프로세서 캐시에 대한 무작위 액세스를 실행하는 방법입니다.

--bsearch-ops N
N bogo bsearch 작업이 완료된 후 bsearch 작업자를 중지합니다.

--b검색 크기 N
bsearch할 배열의 크기(32비트 정수 수)를 지정합니다. 크기는 일 수 있습니다
1K에서 4M까지.

-C N, --은닉처 N
스래시에 대한 임의의 광범위한 메모리 읽기 및 쓰기를 수행하는 N 작업자를 시작합니다.
CPU 캐시. 코드는 CPU 캐시를 지능적으로 결정하지 않습니다.
구성이므로 히트-미스 읽기/쓰기를 생성하는 데 최적이 아닐 수 있습니다.
일부 프로세서에 대한 활동.

--캐시 펜스
각 저장 작업에서 쓰기 직렬화를 강제 실행합니다(x86에만 해당). 이것은 다음의 경우에는 작동하지 않습니다.
비 x86 아키텍처.

--캐시 플러시
각 저장 작업에서 강제로 캐시를 플러시합니다(x86에만 해당). x86이 아닌 경우에는 작동하지 않습니다.
아키텍처.

--캐시 수준 N
실행할 캐시 수준을 지정합니다(1=L1 캐시, 2=L2 캐시, 3=L3/LLC 캐시(
기본)). 캐시 계층 구조를 결정할 수 없는 경우 내장된 기본값이
대다.

--캐시 선호도 없음
다음과 같은 경우 프로세서 선호도를 변경하지 마십시오. --은닉처 유효합니다.

--캐시 작업 N
N bogo 캐시 스래시 작업 후에 캐시 스래시 작업자를 중지합니다.

--캐시-프리페치
프리페치를 지원하는 아키텍처의 다음 읽기 주소에서 읽기 프리페치를 강제합니다.

--캐시 방식 N
연습할 캐시 방법의 수를 지정합니다. 이를 통해 전체의 하위 집합을 허용합니다.
행사할 캐시 크기.

--캡 N
호출을 통해 프로세스별 기능을 읽는 N 작업자를 시작합니다. 캡겟(2) (리눅스
만).

--cap-ops N
N cap 보고 작업 후 중지합니다.

--chdir N
다음을 사용하여 8192 디렉터리 간에 디렉터리를 변경하는 N 작업자를 시작합니다. chdir(2).

--chdir-ops N
N chdir bogo 작업 후에 중지합니다.

--chmod N
다음을 통해 파일 모드 비트를 변경하는 N 작업자를 시작합니다. chmod를(2)과하면 fchmod(2) 에
같은 파일. N 값이 클수록 단일 파일에 대한 경합이 더 많아집니다.
스트레스 요인은 모드 비트의 모든 조합을 통해 작동합니다.

--chmod-ops N
N chmod bogo 작업 후에 중지합니다.

--시계 N
N명의 작업자가 시계와 POSIX 타이머를 작동하도록 시작합니다. 알려진 모든 시계 유형에 대해 이
운동할 것이다 clock_getres(2) clock_gettime(2)과하면 clock_nanosleep(2). 모든
알려진 타이머는 50000ns 타이머를 생성하고 만료될 때까지 이를 폴링합니다.
이 스트레스 요인은 빈번한 컨텍스트 전환을 유발합니다.

--시계 작동 N
N 보고 작업 후 시계 스트레스 작업자를 중지합니다.

--클론 N
복제본을 생성하는 N 작업자를 시작합니다( 복제(2) 시스템 호출). 이것은
즉시 죽고 잠시 기다리는 기본 8192 클론을 신속하게 생성하려고 시도합니다.
수확될 때까지 좀비 상태입니다. 최대 클론 수에 도달하면
(또는 허용되는 최대값에 도달하여 복제가 실패함) 가장 오래된 복제
스레드가 수확되고 선입 선출 방식으로 새 복제본이 생성됩니다.
그런 다음 반복했습니다. 각 클론에 대해 무작위 클론 플래그가 선택되어
다양한 복제 작업을 수행합니다. 복제 스트레스 요인은 Linux 전용 옵션입니다.

--clone-ops N
N 보고 복제 작업 후에 복제 스트레스 작업자를 중지합니다.

--클론-최대 N
N개의 클론 스레드를 생성해 보세요. 시스템에 따라 도달하지 못할 수도 있습니다.
한도는 N보다 작습니다.

--문맥 N
다음을 사용하는 세 개의 스레드를 실행하는 N 작업자를 시작합니다. 스왑컨텍스트(3) 구현
스레드 간 컨텍스트 전환. 이는 신속한 프로세스 컨텍스트 저장을 실행하고
복원은 레지스터와 메모리 저장 및 복원 속도에 따라 대역폭이 제한됩니다.

--컨텍스트 작업 N
N 보고 컨텍스트 전환 후에 N 컨텍스트 작업자를 중지합니다. 이 스트레스 요인에서는 1 bogo op
1000회의 swapcontext 호출과 동일합니다.

--복사 파일 N
Linux를 사용하여 파일을 복사하는 N개의 스트레스 요인을 시작합니다. copy_file_range(2) 시스템 호출.
2MB의 데이터 청크가 한 파일의 임의 위치에서 임의 위치로 복사됩니다.
대상 파일의 위치. 기본적으로 파일 크기는 256MB입니다. 데이터는
각 후에 파일 시스템에 동기화되었습니다. copy_file_range(2) 전화.

--복사 파일 작업 N
N copy_file_range() 호출 후에 중지합니다.

--복사 파일 바이트 N
복사 파일 크기, 기본값은 256MB입니다. 바이트 단위로 크기를 지정할 수 있습니다.
접미사 b, k, m 또는 g를 사용하는 KBytes, MBytes 및 GBytes입니다.

-c N, --cpu N
모든 작업을 순차적으로 수행하여 CPU를 작동시키는 N 작업자를 시작합니다.
다양한 CPU 스트레스 방법. 모든 CPU 스트레스 방법을 실행하는 대신,
--cpu-method 옵션을 사용하여 특정 CPU 스트레스 방법을 지정할 수 있습니다.

--cpu-ops N
N번 보고 작업 후에 CPU 스트레스 작업자를 중지합니다.

-l P, --cpu-부하 P
CPU 스트레스 작업자에 대해 P% 로딩으로 CPU를 로드합니다. 0은 사실상
절전(무부하)이고 100은 전체 로딩입니다. 로딩 루프가 계산으로 중단됩니다.
시간(로드%) 및 절전 시간(100% - 로드%)입니다. 정확도는 전체 부하에 따라 달라집니다.
프로세서와 스케줄러의 응답성 때문에 실제 로드는
원하는 하중과 다릅니다. 보고 CPU 작업 수는
일부 시스템은 CPU 주파수 스케일링을 사용하므로 로드에 따라 선형적으로 스케일링되지 않습니다.
따라서 부하가 높을수록 CPU 주파수가 증가하고 CPU 보고가 더 커집니다.
작업.

--cpu-로드-슬라이스 S
참고 - 이 옵션은 --cpu-load가 100% 미만인 경우에만 유용합니다. CPU 부하
여러 개의 사용 중 및 유휴 주기로 나뉩니다. 이 옵션을 사용하여
바쁜 시간 조각의 기간. S의 음수 값은 다음의 수를 지정합니다.
CPU를 유휴 상태로 만들기 전에 실행할 반복(예: -30은 CPU의 30회 반복 호출)
스트레스 루프). 0 값은 0.5~XNUMX초 사이에서 임의의 바쁜 시간을 선택합니다.
S의 양수 값은 유휴 상태가 되기 전에 실행할 시간(밀리초)을 지정합니다.
CPU(예: 100은 0.1초 동안 CPU를 사용 중으로 유지합니다). 작은 값 지정
S는 작은 시간 조각과 보다 원활한 일정 관리에 적합합니다. --cpu-load를 다음과 같이 설정
상대적으로 낮은 값과 --cpu-load-slice가 커지면 CPU가 다음과 같이 순환됩니다.
유휴 및 바쁜 주기를 길게 하고 다양한 CPU 주파수를 실행합니다. 열
CPU 범위도 순환되므로 이는 다음을 실행하는 좋은 메커니즘입니다.
스케줄러, 주파수 스케일링 및 수동/능동 열 냉각 메커니즘.

--cpu 방법 방법
CPU 스트레스 방법을 지정합니다. 기본적으로 모든 스트레스 방법이 실행됩니다.
그러나 필요한 경우 한 가지 방법만 사용하도록 지정할 수 있습니다.
사용 가능한 CPU 스트레스 방법은 다음과 같습니다.

방법 상품 설명
모두 아래의 모든 CPU 스트레스 방법을 반복합니다.
ackermann Ackermann 함수: A(3, 10)을 계산합니다. 여기서:
A(m, n) = n + 1(m = 0인 경우);
A(m - 1, 1) m > 0이고 n = 0이면;
m > 1이고 n > 1인 경우 A(m - 0, A(m, n - 0))
bitops는 bithack의 다양한 비트 연산, 즉 역방향 비트, 패리티를 수행합니다.
확인, 비트 수, 가장 가까운 2의 거듭제곱으로 반올림
callfunc는 8개의 인수 C 함수를 1024회 호출 깊이까지 재귀적으로 호출합니다.
긴장을 풀고
부동 소수점 복합 연산을 혼합하여 1000회 반복 cfloat
이중 부동 소수점 복합체 혼합의 cdouble 1000 반복
운영
clongdouble long double 부동 소수점 복합체 혼합의 1000회 반복
운영
상관 관계는 무작위 double의 16384 × 1024 상관 관계를 수행합니다.
crc16은 무작위 데이터에 대해 CCITT CRC1024의 16 라운드를 계산합니다.
32비트 1000진수 부동 소수점 혼합의 32회 반복
작업(GCC에만 해당)
64비트 1000진수 부동 소수점 혼합의 64회 반복
작업(GCC에만 해당)
128비트 1000진수 부동 소수점 혼합의 128회 반복
작업(GCC에만 해당)
디더 플로이드-스타인버그(Dither Floyd–Steinberg) 1024비트에서 768 × 8 무작위 이미지 디더링
1비트 깊이까지.
djb2a 128 라운드의 해시 DJB2a(xor를 사용하는 Dan Bernstein 해시
변형) 128~1바이트의 임의 문자열
이중 정밀도 부동 소수점 혼합의 이중 1000 반복
운영
오일러는 n = (1 + (1 ¼ n)) ↑ n을 사용하여 e를 계산합니다.
n = exp(log(n) ¼ 1.00002)에서 explog 반복
fibonacci는 0, 1, 1, 2, 5, 8...의 피보나치 수열을 계산합니다.
fft 4096 샘플 고속 푸리에 변환
부동 소수점 연산을 혼합하여 1000번 반복합니다.
fnv1a 128 라운드의 해시 FNV-1a(xor를 사용한 Fowler–Noll–Vo 해시
128~1바이트의 임의 문자열에 대한 곱셈 변형)
감마는 제한을 사용하여 오일러-마스케로니 상수 γ를 계산합니다.
고조파 급수(1 + 1/2 + 1/3 + 1/4 + 1/5)의 차이
... + 1/n) 및 자연 로그 ln(n)(n = 80000인 경우).
gcd는 정수의 GCD를 계산합니다.
회색은 이진수를 그레이 코드로 계산하고 그레이 코드를 이진수로 다시 계산합니다.
0부터 65535까지의 정수
hamming은 8,4개의 262144비트 데이터에 대해 Hamming H(4) 코드를 계산합니다. 이것
4비트 데이터를 8패리티 비트가 포함된 4비트 해밍 코드로 변환합니다.
데이터 비트 d1..d4의 경우 패리티 비트는 다음과 같이 계산됩니다.
p1 = d2 + d3 + d4
p2 = d1 + d3 + d4
p3 = d1 + d2 + d4
p4 = d1 + d2 + d3
하노이는 재귀 솔루션을 사용하여 하노이 스택의 21개 디스크 타워를 해결합니다.
float, double의 경우 쌍곡선 계산 sinh(θ) × cosh(θ) + sinh(2θ) + cosh(3θ)
그리고 θ = 0인 긴 이중 쌍곡선 사인 및 코사인 함수
2단계로 1500π로
idct 8 × 8 IDCT(역 이산 코사인 변환)
int8 1000비트 정수 연산 혼합의 8회 반복
int16 1000비트 정수 연산 혼합의 16회 반복
int32 1000비트 정수 연산 혼합의 32회 반복
int64 1000비트 정수 연산 혼합의 64회 반복

int128 1000비트 정수 연산 혼합의 128회 반복(GCC에만 해당)
int32float 1000비트 정수와 부동 소수점 혼합의 32회 반복
운영
int32double 1000비트 정수와 배정밀도 혼합의 32회 반복
부동 소수점 연산
int32longdouble 1000비트 정수와 long double 혼합의 32회 반복
정밀 부동 소수점 연산
int64float 1000비트 정수와 부동 소수점 혼합의 64회 반복
운영
int64double 1000비트 정수와 배정밀도 혼합의 64회 반복
부동 소수점 연산
int64longdouble 1000비트 정수와 long double 혼합의 64회 반복
정밀 부동 소수점 연산
int128float 1000비트 정수와 부동 소수점 혼합의 128회 반복
작업(GCC에만 해당)
int128double 1000비트 정수와 배정밀도 혼합의 128회 반복
부동 소수점 연산(GCC에만 해당)
int128longdouble 1000비트 정수와 long double 혼합의 128회 반복
정밀 부동 소수점 연산(GCC에만 해당)
int128decimal32 1000비트 정수와 128비트 32진수의 혼합을 XNUMX회 반복
부동 소수점 연산(GCC에만 해당)
int128decimal64 1000비트 정수와 128비트 64진수의 혼합을 XNUMX회 반복
부동 소수점 연산(GCC에만 해당)
int128decimal128 1000비트 정수와 128비트 128진수의 혼합을 XNUMX회 반복
부동 소수점 연산(GCC에만 해당)
jenkin Jenkin의 128..128바이트 무작위 데이터 1라운드에 대한 정수 해시
jmp 단순 최적화되지 않은 비교 >, <, == 및 jmp 분기
ln2 컴퓨팅 ln(2) 시리즈 기준:
1 - 1/2 + 1/3 - 1/4 + 1/5 - 1/6 ...
longDouble 긴 배정밀도 부동 소수점 혼합의 1000회 반복
운영
루프 간단한 빈 루프
이중 부동 소수점으로 구성된 128개의 128 × XNUMX 행렬의 Matrixprod 행렬 곱입니다. 테스트
64비트 x86 하드웨어에서는 이것이 좋은 조합을 제공한다는 것을 보여줍니다.
메모리, 캐시 및 부동 소수점 연산은 아마도
CPU를 뜨겁게 만드는 데 사용하는 가장 좋은 CPU 방법입니다.
nsqrt는 Newton-Raphson을 사용하여 긴 복식의 sqrt()를 계산합니다.
omega 효율적인 방법을 사용하여 Ωe↑Ω = 1로 정의된 오메가 상수를 계산합니다.
Ωn+1의 반복 = (1 + Ωn) / (1 + e↑Ωn)
Standford Bit의 다양한 방법을 사용하여 패리티 계산 패리티
장난꾸러기 해킹. 사용되는 방법은 다음과 같습니다: 순진한 방법, 순진한 방법
Brian Kernigan의 비트 계산 최적화 방식을 사용하면
곱셈 방식, 병렬 방식, 조회 테이블 방식(2
변형).
phi는 계열을 사용하여 황금비(Golden Ratio) 를 계산합니다.
pi는 Srinivasa Ramanujan 고속 수렴 알고리즘을 사용하여 π를 계산합니다.
pjw 128 라운드의 해시 pjw 함수 128~1바이트의 무작위
문자열
소수는 약간의 사용으로 1..1000000 범위의 모든 소수를 찾습니다.
최적화된 무차별 대입 순진한 재판 분할 검색
psi는 다음의 합을 사용하여 ψ(피보나치 역수)를 계산합니다.
피보나치 수의 역수
퀸은 전형적인 8퀸 문제의 모든 해를 계산합니다.
보드 크기 1..12
rand()의 16384 반복(여기서 rand는 MWC 의사 난수임)
숫자 생성기. MWC 랜덤 함수는 두 개의 16비트를 연결합니다.
캐리 곱셈 생성기:
x(n) = 36969 × x(n - 1) + 캐리,
y(n) = 18000 × y(n - 1) + 캐리 모드 2 ↑ 16

약 2 ↑ 60의 주기를 가집니다.
rand48 16384 반복 드랜드48(3)과하면 랜드48(3)
rgb는 RGB를 YUV로 변환한 다음 다시 RGB로 변환합니다(CCIR 601)
sdbm 128 라운드의 해시 sdbm(SDBM 데이터베이스 및 GNU awk에서 사용됨)
128~1바이트의 임의 문자열에 대해
체를 사용하여 1..10000000 범위의 소수를 찾습니다.
에라토스테네스
sqrt는 sqrt(rand())를 계산합니다. 여기서 rand는 MWC 의사 난수입니다.
발전기

trig는 float, double 및 double에 대해 sin(θ) × cos(θ) + sin(2θ) + cos(3θ)를 계산합니다.
0에서 θ = 2 ~ 1500π인 긴 이중 사인 및 코사인 함수
단계
Union C Union의 비트 필드 혼합에 대해 정수 연산을 수행합니다.
이는 컴파일러와 CPU가 정수를 얼마나 잘 수행할 수 있는지 연습합니다.
비트 필드를 로드하고 저장합니다.
zeta s = 2.0..10.0에 대해 Riemann Zeta 함수 ζ(s)를 계산합니다.

이러한 방법 중 일부는 다음에서 발견된 계산으로 CPU를 실행하려고 시도합니다.
일부 실제 사용 사례. 그러나 코드는 개별적으로 최적화되지 않았습니다.
아키텍처 기반이므로 수동으로 최적화된 코드에 비해 차선책일 수 있습니다.
일부 응용 프로그램. 그들은 다음에서 발견되는 일반적인 명령 혼합을 나타내려고 노력합니다.
이러한 사용 사례.

--cpu-온라인 N
무작위로 선택된 CPU를 오프라인과 온라인으로 전환하는 N 작업자를 시작합니다. 이 리눅스만
스트레스 요인이 이 작업을 수행하려면 루트 권한이 필요합니다.

--cpu-온라인-ops N
오프라인/온라인 작업 후 중지합니다.

--토굴 N
다음을 사용하여 16자의 임의 비밀번호를 암호화하는 N 작업자를 시작합니다. 토굴(3). 그만큼
비밀번호는 MD5, SHA-256 및 SHA-512 암호화 방법을 사용하여 암호화됩니다.

--crypt-ops N
N 보고 암호화 작업 후에 중지합니다.

--악마 N
각각 생성 후 즉시 종료되는 데몬을 생성하는 N 작업자를 시작합니다.
다른 데몬 등등. 이는 프로세스 테이블을 통해 효과적으로 작동합니다.
부모가 없고 init에 의해 대기되는 수명이 짧은 프로세스입니다. 이것
빠른 자식 수확을 수행하도록 init에 압력을 가합니다. 데몬 프로세스는 다음을 수행합니다.
일반적인 UNIX 데몬으로 전환하기 위한 일반적인 호출 혼합이므로 인위적으로 모방합니다.
데몬 시스템 스트레스가 매우 심합니다.

--데몬-ops N
N개의 데몬이 생성된 후 데몬 작업자를 중지합니다.

-D N, --덴트리 N
디렉터리 항목을 생성하고 제거하는 N 작업자를 시작합니다. 파일이 생성되어야합니다
시스템 메타데이터 활동. 디렉토리 항목 이름 뒤에는 회색 코드가 붙습니다.
네임스페이스의 해싱을 혼동하려고 인코딩된 숫자입니다.

--덴트리옵스 N
N 보고 덴트리 수술 후 덴트리 ​​스래시 작업자를 중지하세요.

--덴트리-오더 [ 앞으로 | | 보폭 | 닥치는대로의 ]
dentries의 연결 해제 순서를 지정합니다. 정방향, 역방향, 보폭 또는 무작위 중 하나일 수 있습니다.
기본적으로 dentries는 무작위 순서로 연결이 해제됩니다. 전달 주문의 연결이 해제됩니다.
처음부터 끝까지, 역순으로 하면 마지막에서 처음으로 연결이 해제됩니다.
order는 준 무작위 패턴으로 order를 우회하여 연결을 해제합니다.
무작위 순서는 순방향, 역방향 또는 보폭 순서 중 하나를 무작위로 선택합니다.

--치과 N
덴트리 스래싱 루프당 N개의 덴트리를 생성합니다. 기본값은 2048입니다.

--dir N
mkdir 및 rmdir을 사용하여 디렉터리를 생성하고 제거하는 N 작업자를 시작합니다.

--dir-ops N
N개의 보고 디렉터리 작업 후에 디렉터리 스래시 작업자를 중지합니다.

--dup N
수행하는 N명의 작업자를 시작하세요. 멍청이(2) 그리고 나서 가까운(2) /dev/zero에서의 작업. 그만큼
한 번에 열리는 최대 개수는 시스템에서 정의되므로 테스트는 이 값까지 실행됩니다.
최대 또는 65536개의 열린 파일 설명자(먼저 오는 것)

--dup-ops N
N보고 오픈 작업 후 Dup 스트레스 작업자를 중지하십시오.

--epoll N
다음을 사용하여 다양한 관련 소켓 스트레스 활동을 수행하는 N 작업자를 시작합니다.
epoll_wait(2) 새로운 연결을 모니터링하고 처리합니다. 여기에는 클라이언트/서버가 포함됩니다.
로컬에서 빠른 연결, 보내기/받기 및 연결 끊기를 수행하는 프로세스
주인. epoll을 사용하면 많은 수의 연결을 효율적으로 처리할 수 있습니다.
그러나 이로 인해 연결 테이블이 가득 차서 추가로 차단될 수 있습니다.
소켓 연결이 발생하므로 epoll bogo op 통계에 영향을 미칩니다. IPv4 및 IPv6의 경우
도메인의 경우 여러 서버가 여러 포트에 생성됩니다. epoll 스트레스 요인은 다음과 같습니다.
리눅스 전용.

--epoll-도메인 D
사용할 도메인을 지정합니다. 기본값은 unix(일명 로컬)입니다. 현재 IPv4, IPv6
및 유닉스가 지원됩니다.

--epoll-포트 P
소켓 포트 P에서 시작합니다. N epoll 작업자 프로세스의 경우 포트 P에서 (P * 4) - 1은
ipv4에는 ipv6 도메인이 사용되고 포트 P~P - 1은 unix 도메인에 사용됩니다.

--epoll-ops N
N 보고 작업 후 epoll 작업자를 중지합니다.

--eventfd N
8바이트 이벤트 메시지를 읽고 쓰는 N개의 상위 및 하위 작업자 프로세스를 시작합니다.
eventfd 메커니즘을 통해 둘 사이에 연결됩니다(Linux에만 해당).

--eventfd-ops N
N 보고 작업 후에 eventfd 작업자를 중지합니다.

--exec N
N 작업자를 시작하여 스트레스를 실행하는 하위 항목을 지속적으로 포크한 다음 종료합니다.
거의 즉시.

--exec-ops N
N bogo 작업 후 exec 스트레스 작업자를 중지합니다.

--exec-최대 P
스트레스-ng를 실행하는 P 하위 프로세스를 생성한 다음 종료될 때까지 기다립니다.
반복. 기본값은 1입니다. 값이 높을수록 임시 좀비가 많이 생성됩니다.
수확을 기다리는 프로세스. 잠재적으로 프로세스를 채울 수 있습니다
--exec-max 및 --exec에 높은 값을 사용하는 테이블입니다.

-F N, --fallocate N
N 작업자가 지속적으로 폴할당(파일 공간 사전 할당) 및 ftuncating을 시작합니다.
(파일 자르기) 임시 파일. 파일이 여유 공간보다 큰 경우,
fallocate는 이 스트레스 요인에 의해 무시되는 ENOSPC 오류를 생성합니다.

--fallocate-bytes N
할당된 파일 크기, 기본값은 1GB입니다. 단위로 크기를 지정할 수 있습니다.
접미사 b, k, m 또는 g를 사용하는 바이트, KBytes, MBytes 및 GBytes.

--fallocate-ops N
N 보고 fallocate 작업 후 fallocate 스트레스 작업자를 중지합니다.

--잘못 N
사소한 페이지 오류와 주요 페이지 오류를 생성하는 N 작업자를 시작합니다.

--오류 작업 N
N 보고 페이지 결함 작업 후에 페이지 결함 작업자를 중지합니다.

--fcntl N
수행하는 N명의 작업자를 시작하세요. fcntl(2) 다양한 명령으로 호출합니다. 운동한
(사용 가능한 경우) 명령은 F_DUPFD, F_DUPFD_CLOEXEC, F_GETFD, F_SETFD, F_GETFL,
F_SETFL, F_GETOWN, F_SETOWN, F_GETOWN_EX, F_SETOWN_EX, F_GETSIG 및 F_SETSIG.

--fcntl-ops N
N 보고 fcntl 작업 후에 fcntl 작업자를 중지합니다.

--fiemap N
각각 무작위로 변경되는 범위가 많은 파일을 생성하고 다음을 갖는 N 작업자를 시작합니다.
작업자당 4개의 하위 프로세스가 다음을 사용하여 범위 정보를 수집합니다.
FS_IOC_FIEMAP ioctls(2).

--fiemap-ops N
N fiemap bogo 작업 후에 중지합니다.

--fiemap-크기 N
fiemap'd 파일의 크기를 바이트 단위로 지정합니다. 크기를 단위로 지정할 수 있습니다.
접미사 b, k, m 또는 g를 사용하는 바이트, KBytes, MBytes 및 GBytes입니다. 더 큰 파일
더 많은 범위를 포함하므로 범위 정보를 수집할 때 더 많은 스트레스를 유발합니다.

--fifo N
64비트 정수를 전송하여 명명된 파이프를 실행하는 N 작업자를 시작합니다.

--fifo-ops N
N bogo 파이프 쓰기 작업 후에 fifo 작업자를 중지합니다.

--fifo-독자 N
각 작업자에 대해 간단한 방법을 사용하여 명명된 파이프를 읽는 N개의 fifo 판독기 작업자를 만듭니다.
읽기를 차단합니다.

--파일 이름 N
다양한 길이의 파일 이름을 사용하여 파일 생성을 실행하는 N 작업자를 시작합니다.
다양한 허용 파일 이름 문자를 포함합니다. 이것은 가능한지 확인하려고 노력할 것입니다
파일 시스템에서 허용하는 파일 이름 길이를 초과하고 다양한 파일 이름을 테스트했습니다.
1과 파일 시스템에서 허용하는 최대값 사이의 길이입니다.

--파일 이름-ops N
N 보고 파일 이름 테스트 후에 파일 이름 작업자를 중지합니다.

--파일 이름-opts 고르다
옵션 'opt'에 따라 파일 이름에 문자를 사용하십시오. 유효한 옵션은 다음과 같습니다.

선택권 상품 설명
기본 옵션을 조사하고 파일 시스템에서 유효한 허용 문자를 조사합니다.
파일 이름에 이것을 사용하십시오
posix는 Open Group 기본 사양에 지정된 대로 문자를 사용합니다.
이슈 7, POSIX.1-2008, 3.278 이식 가능한 파일 이름 문자 집합
ext는 ext2, ext3, ext4 파일 시스템에서 허용하는 문자를 사용합니다.
즉, NUL 및 /를 제외한 임의의 8비트 문자

--대군 N
단일 파일에 대해 N 작업자 잠금을 시작합니다.

--군집 작전 N
N보고 무리 작업 후 무리 스트레스 작업자를 중지하십시오.

-f N, --포크 N
즉시 종료되는 하위 항목을 지속적으로 포크하는 N 작업자를 시작합니다.

--포크 작업 N
N 보고 작업 후 포크 스트레스 작업자를 중지합니다.

--포크-최대 P
P개의 하위 프로세스를 생성한 다음 반복마다 종료될 때까지 기다립니다. 기본값
1입니다; 값이 높을수록 임시 좀비 프로세스가 많이 생성됩니다.
거두기를 기다리고 있습니다. high를 사용하여 잠재적으로 프로세스 테이블을 채울 수 있습니다.
--fork-max 및 --fork 값.

--fp-오류 N
부동 소수점 예외를 생성하는 N 작업자를 시작합니다. 계산이 수행됩니다.
FE_DIVBYZERO, FE_INEXACT, FE_INVALID, FE_OVERFLOW 및
FE_UNDERFLOW 예외. EDOM 및 ERANGE 오류도 확인됩니다.

--fp-오류-ops N
N 보고 부동 소수점 예외 후에 중지합니다.

--fstat N
N명의 작업자 fstat'ing 파일을 디렉토리에서 시작합니다(기본값은 / dev).

--fstat-ops N
N bogo fstat 작업 후에 fstat 스트레스 작업자를 중지합니다.

--fstat-dir 예배 규칙서
/dev의 기본값을 대체하려면 fstat에 디렉토리를 지정하십시오. 에 있는 모든 파일
디렉토리는 반복적으로 fstat'd됩니다.

--퓨텍스 N
futex 시스템 호출을 빠르게 실행하는 N 작업자를 시작합니다. 각 작업자는 두 개의
프로세스, futex 웨이터 및 futex 웨이커. 웨이터는 아주 작은 소리로 기다린다
시간 초과 및 빠른 폴링 futex 대기를 강조하는 시간 초과입니다. 이것은 리눅스이다
특정 스트레스 옵션.

--futex-ops N
N 보고 성공적인 futex 대기 작업 후에 futex 작업자를 중지합니다.

--가져 오기 N
모든 get*(2) 시스템 호출을 호출하는 N 작업자를 시작합니다.

--get-ops N
N bogo get 작업 후 작업자 가져오기를 중지합니다.

--getdent N
디렉터리를 반복적으로 읽는 N 작업자를 시작합니다. / proc, / dev /, / TMP, / sys and / 운영
getdents 및 getdents64 사용(Linux에만 해당)

--getdent-ops N
N bogo getdent bogo 작업 후에 getdent 작업자를 중지합니다.

--무작위로 얻다 N
다음을 사용하여 /dev/urandom 풀에서 8192개의 임의 바이트를 가져오는 N 작업자를 시작합니다.
무작위(2) 시스템 호출(Linux에만 해당).

--getrandom-ops N
N bogo get 작업 후 getrandom 작업자를 중지합니다.

--핸들 N
다음을 실행하는 N명의 작업자를 시작합니다. name_to_handle_at(2)과하면 open_by_handle_at(2)
시스템 호출. (리눅스에만 해당).

--처리 작업 N
N 핸들 보고 작업 후에 중지합니다.

-d N, --hdd N
N명의 작업자가 지속적으로 임시 파일을 쓰고, 읽고, 제거합니다.

--hdd-바이트 N
각 hdd 프로세스에 대해 N 바이트를 씁니다. 기본값은 1GB입니다. 크기를 지정할 수 있습니다.
접미사 b, k, m 또는 g를 사용하여 바이트, KBytes, MBytes 및 GBytes 단위로 표시됩니다.

--hdd-opts 명부
다양한 스트레스 테스트 옵션을 쉼표로 구분된 목록으로 지정합니다. 옵션은 다음과 같습니다
다음과 같습니다 :

선택권 상품 설명
I/O의 캐시 효과를 최소화하려고 직접 노력하십시오. 파일 I/O 쓰기는
사용자 공간 버퍼와 동기식에서 직접 수행됨
전송도 시도됩니다. 동기식 I/O를 보장하기 위해
동기화 옵션을 사용하세요.
dsync는 출력이 기본 하드웨어 및 파일로 전송되었는지 확인합니다.
메타데이터가 업데이트되었습니다(O_DSYNC 공개 플래그 사용). 이것은
각각에 해당 쓰다(2) 다음에 전화가옵니다.
fdatasync(2). fdatasync 옵션도 참조하세요.
fadv-dontneed는 커널에 가까운 시일 내에 데이터에 액세스하지 않을 것으로 예상하도록 조언합니다.
미래.
fadv-noreuse는 커널에 데이터가 한 번만 액세스될 것으로 예상하도록 조언합니다.
fadv-normal은 커널에 데이터에 대한 명시적인 액세스 패턴이 없다고 조언합니다.
이것이 기본 조언 가정입니다.
fadv-rnd는 커널에 데이터에 대한 무작위 액세스 패턴을 예상하도록 조언합니다.
fadv-seq는 커널에 데이터에 대한 순차적 액세스 패턴을 예상하도록 조언합니다.
fadv-willneed는 커널에 가까운 시일 내에 데이터에 액세스할 것으로 예상하도록 조언해야 합니다.
미래.

fsync는 출력에 쓸 때마다 수정된 모든 코어 내부 데이터를 플러시합니다.
명시적을 사용하는 장치 fsync(2) 전화.
fdatasync는 fsync와 유사하지만 수정된 메타데이터를 플러시하지 않습니다.
나중에 데이터 읽기를 올바르게 처리하려면 메타데이터가 필요합니다.
이는 명시적인 fdatasync(2) 전화.
iovec은 읽기/쓰기 대신 readv/writev 다중 버퍼 I/O를 사용합니다.
1개의 읽기/쓰기 작업 대신 버퍼가
16개 버퍼의 iovec.
noatime은 파일의 마지막 액세스 타임스탬프를 업데이트하지 않습니다. 이렇게 하면
메타데이터 쓰기.
동기화는 출력이 기본 하드웨어로 전송되었는지 확인합니다(사용
O_SYNC 오픈 플래그). 이는 각각과 동일합니다. 쓰다(2) 존재
다음으로 전화가 왔습니다. fsync(2). fsync 옵션도 참조하세요.
rd-rnd는 무작위로 데이터를 읽습니다. 기본적으로 작성된 데이터는 다시 읽혀지지 않습니다.
그러나 이 옵션을 사용하면 무작위로 다시 읽혀지게 됩니다.
rd-seq는 데이터를 순차적으로 읽습니다. 기본적으로 작성된 데이터는 다시 읽혀지지 않습니다.
그러나 이 옵션을 사용하면 강제로 순차적으로 다시 읽혀집니다.
syncfs는 파일 메타데이터 및 데이터의 버퍼링된 모든 수정 사항을
hdd 작업자 파일이 포함된 파일 시스템입니다.
utime은 메타데이터 쓰기를 증가시킬 수 있는 파일 타임스탬프를 강제로 업데이트합니다.
wr-rnd는 무작위로 데이터를 씁니다. wr-seq 옵션은 동시에 사용할 수 없습니다.
시간.
wr-seq 데이터를 순차적으로 씁니다. 쓰기 모드가 없는 경우 이것이 기본값입니다.
지정되었습니다.

이러한 옵션 중 일부는 상호 배타적입니다. 예를 들어, 하나만 있을 수 있습니다.
쓰기 또는 읽기 방법. 또한 fadvise 플래그는 상호 배타적일 수 있습니다. 예를 들어
fadv-willneed는 fadv-dontneed와 함께 사용할 수 없습니다.

--hdd-ops N
N 보고 작업 후 HDD 스트레스 작업자를 중지합니다.

--hdd-쓰기-크기 N
각 쓰기 크기를 바이트 단위로 지정합니다. 크기는 1바이트부터 4MB까지 가능합니다.

--힙 정렬 N
BSD 힙 정렬을 사용하여 32비트 정수를 정렬하는 N 작업자를 시작합니다.

--힙 정렬 작업 N
N 보고 힙 정렬 후에 힙 정렬 스트레스 작업자를 중지합니다.

--힙 정렬 크기 N
정렬할 32비트 정수 수를 지정합니다. 기본값은 262144(256 × 1024)입니다.

--hsearch N
다음을 사용하여 80% 전체 해시 테이블을 검색하는 N 작업자를 시작합니다. hsearch(3). 기본적으로,
해시 테이블에 8192개의 요소가 삽입되었습니다. 이는 유용한 방법입니다.
메모리 및 프로세서 캐시에 대한 액세스를 실행합니다.

--hsearch-ops N
N bogo hsearch 작업이 완료된 후 hsearch 작업자를 중지합니다.

--h검색 크기 N
해시 테이블에 삽입할 해시 항목 수를 지정합니다. 크기는 일 수 있습니다
1K에서 4M까지.

--icache N
명령어 캐시를 강제 실행하여 명령어 캐시에 스트레스를 주는 N 작업자를 시작합니다.
다시 로드합니다. 이는 명령 캐시 라인을 수정하여 달성됩니다.
내부에서 함수를 호출할 때 이를 다시 로드하는 프로세서입니다. 현재만
Intel x86 CPU에 대해 검증 및 활성화되었습니다.

--icache-ops N
N bogo icache 작업이 완료된 후 icache 작업자를 중지합니다.

--inotify N
생성/삭제 등 파일 시스템 활동을 수행하는 N 작업자를 시작합니다.
다양한 inotify 이벤트를 강조하기 위해 파일/디렉터리, 파일 이동 등
(리눅스만 해당).

--inotify-ops N
N inotify 보고 작업 이후 스트레스 작업자에게 inotify를 중지합니다.

-i N, --io N
N명의 작업자가 지속적으로 전화를 걸기 시작합니다. 동기화(2) 버퍼 캐시를 디스크에 커밋합니다. 이것
--hdd 옵션과 함께 사용할 수 있습니다.

--io-ops N
N 보고 작업 후 io 스트레스 작업자를 중지합니다.

--itimer N
시스템 간격 타이머를 실행하는 N 작업자를 시작합니다. 이는
SIGPROF 신호를 생성하는 ITIMER_PROF 타이머입니다. 기본 주파수는
itimer는 1MHz이지만 Linux 커널은 이를 XNUMXMHz 이상으로 설정하지 않습니다.
설정이 간단하므로 고주파 SIGPROF 신호는 일반적으로 불가능합니다. ㅏ
바쁜 루프가 켜집니다. getitimer(2) CPU를 소비하여 itimer를 감소시키는 호출
CPU 및 시스템 시간에 소요된 시간을 기준으로 합니다.

--itimer-ops N
N bogo itimer SIGPROF 신호 후에 itimer 스트레스 작업자를 중지합니다.

--타이머-주파수 F
FHz에서 타이머를 실행합니다. 범위는 1~1000000Hz입니다. 일반적으로 가장 높은 주파수는
초당 jiffy 틱 수로 제한되므로 1000Hz 이상으로 실행하는 것은
현실적으로 달성하기 어렵다.

--kcmp N
다음을 사용하는 N명의 작업자를 시작합니다. kcmp(2) 상위 프로세스와 하위 프로세스를 비교하여 결정합니다.
커널 리소스를 공유하는 경우(Linux에만 해당)

--kcmp-ops N
N 보고 kcmp 작업 후에 kcmp 작업자를 중지합니다.

--열쇠 N
다음을 사용하여 키를 생성하고 조작하는 N 작업자를 시작합니다. add_key(2)과하면 케틀(2). 처럼
사용자당 한도가 허용하는 만큼 많은 키가 생성되고 다음 keyctl이 생성됩니다.
KEYCTL_SET_TIMEOUT, KEYCTL_DESCRIBE,
KEYCTL_UPDATE, KEYCTL_READ, KEYCTL_CLEAR 및 KEYCTL_INVALIDATE.

--키 조작 N
N 보고 키 작업 후 주요 작업자를 중지합니다.

--죽임 N
SIG_IGN 신호 처리기에 SIGUSR1 종료 신호를 보내는 N 작업자를 시작합니다. 대부분의
프로세스 시간은 커널 공간에서 종료됩니다.

--kill-ops N
N bogo kill 작업 후 작업자 킬을 중지합니다.

--klog N
커널을 실행하는 N 작업자 시작 syslog(2) 시스템 호출. 이는 다음을 시도합니다.
다양한 크기의 읽기 버퍼로 커널 로그를 읽습니다. 리눅스 전용.

--klog-ops N
N개의 syslog 작업 후에 klog 작업자를 중지합니다.

--임차권 N
N명의 작업자가 다음을 통해 임대 잠금, 잠금 해제 및 해제를 시작합니다. fcntl(2) F_SETLEASE
작업. 상위 프로세스는 계속해서 파일 임대를 잠그거나 잠금 해제합니다.
사용자가 선택할 수 있는 수의 하위 프로세스가 비차단 열기로 파일을 엽니다.
상위에 SIGIO 임대 중단 알림을 생성합니다. 이 스트레스 요인은
F_SETLEASE, F_WRLCK 및 F_UNLCK 지원이 제공되는 경우에만 사용할 수 있습니다. fcntl(2).

--리스 작업 N
N 보고 작업 후 임대 근로자를 중지합니다.

--리스 차단기 N
임대 작업자당 N개의 임대 차단기 하위 프로세스를 시작합니다. 일반적으로 한 아이는
많은 SIGIO 임대 중단 알림 신호를 상위 항목에 강제로 적용하기에 충분합니다.
그러나 이 옵션을 사용하면 필요한 경우 더 많은 하위 프로세스를 지정할 수 있습니다.

--링크 N
N명의 작업자가 하드링크를 생성하고 제거하기 시작합니다.

--링크-작전 N
N 보고 작업 후 링크 스트레스 작업자를 중지합니다.

--lockbus N
무작위로 선택된 64바이트의 메모리를 빠르게 잠그고 늘리는 N 작업자를 시작합니다.
16MB mmap'd 영역에서(Intel x86 CPU만 해당) 이로 인해 캐시라인 누락이 발생합니다.
그리고 CPU의 정지.

--lockbus-ops N
N 보고 작업 후 잠금 버스 작업자를 중지합니다.

--lockf N
POSIX를 사용하여 파일의 영역을 무작위로 잠그고 잠금 해제하는 N 작업자를 시작합니다.
잠금(3) 잠금 메커니즘. 각 작업자는 64K 파일을 생성하고
1024를 보유하려고 시도하는 하위 프로세스와의 동시 잠금 최대 1024개
동시 잠금. 오래된 자물쇠는 선입선출 방식으로 잠금 해제됩니다.

--lockf-ops N
N 보고 lockf 작업 후에 lockf 작업자를 중지합니다.

--lockf-비블록
F_LOCK 차단을 사용하는 대신 잠금(3) 명령, 비차단 F_TLOCK 사용
잠금이 실패하면 명령을 내리고 다시 시도하세요. 이로 인해 추가 시스템 호출 오버헤드가 발생합니다.
lockf 작업자 수가 증가함에 따라 CPU 사용률도 증가해야 합니다.
잠금 경합.

--longjmp N
운동하는 N명의 근로자를 시작하세요 세트jmp(3) /롱제임프(3) longjmp에서 빠른 루핑을 통해
전화.

--longjmp-ops N
N bogo longjmp 작업 후 longjmp 스트레스 작업자를 중지합니다(1 bogo op는 1000입니다).
longjmp 호출).

--lsearch N
다음을 사용하여 정렬되지 않은 32비트 정수 배열을 선형 검색하는 N 작업자를 시작합니다.
l검색(삼). 기본적으로 배열에는 3개의 요소가 있습니다. 이것은 유용한
메모리 및 프로세서 캐시에 대한 순차적 액세스를 실행하는 방법입니다.

--lsearch-ops N
N bogo lsearch 작업이 완료된 후 lsearch 작업자를 중지합니다.

--l검색 크기 N
lsearch에 배열의 크기(32비트 정수 수)를 지정합니다. 크기는 일 수 있습니다
1K에서 4M까지.

--malloc N
N명의 작업자가 지속적으로 전화를 걸기 시작합니다. Malloc(3) Calloc(3) 리얼록(3)과하면 비어 있는(3).
기본적으로 최대 65536개의 할당이 언제든지 활성화될 수 있지만 이는
--malloc-max 옵션으로 변경되었습니다. 할당, 재할당 및 해제는
무작위로 선택됨; 시간 메모리의 50%는 할당입니다(malloc, calloc 또는
realloc) 및 시간 할당의 50%가 사용 가능합니다. 할당 크기도
--malloc-bytes 옵션으로 제어되는 최대 할당 크기를 사용하여 무작위로,
기본 크기는 64K입니다. 작업자가 종료되면 작업자가 다시 시작됩니다.
메모리(OOM) 킬러.

--malloc-바이트 N
할당/재할당 크기당 최대값입니다. 할당은 1에서 무작위로 선택됩니다.
N 바이트로. 바이트, 킬로바이트, 메가바이트, GB 단위로 크기를 지정할 수 있습니다.
접미사 b, k, m 또는 g를 사용합니다. 할당 크기가 크면 메모리 할당자가 발생합니다.
사용 mmap(2) 다음을 사용하여 힙을 확장하는 대신 BRK(2).

--malloc-최대 N
허용되는 최대 활성 할당 수입니다. 할당은 무작위로 선택되며
할당 슬롯에 배치됩니다. 왜냐하면 할당과 할당 사이에 약 50%/50%가 분할되기 때문입니다.
해제하면 일반적으로 할당 슬롯의 절반이 동시에 사용됩니다.

--malloc-ops N
N malloc 보고 작업 후에 중지합니다. 하나의 보고 작업은 성공적인 작업과 관련이 있습니다.
Malloc(3) Calloc(3) 또는 리얼록(3).

--malloc-thresh N
malloc이 사용하는 임계값을 지정합니다. mmap(2) 대신 sbrk(2) 더 많이 할당하다
메모리. 이는 GNU C를 제공하는 시스템에서만 사용할 수 있습니다. 말롭트(3) 튜닝
기능.

--행렬 N
부동 소수점 값에 대해 다양한 행렬 연산을 수행하는 N 작업자를 시작합니다. 에 의해
기본적으로 모든 매트릭스 응력 방법을 하나씩 실행합니다. 하나는 수
--matrix-method 옵션을 사용하여 특정 매트릭스 스트레스 방법을 지정합니다.

--matrix-ops N
N 보고 작업 후에 매트릭스 스트레스 작업자를 중지합니다.

--매트릭스 방법 방법
매트릭스 응력 방법을 지정합니다. 사용 가능한 매트릭스 응력 방법은 다음과 같습니다.
다음과 같습니다 :

방법 상품 설명
모두 아래의 모든 매트릭스 응력 방법을 반복합니다.
두 개의 N × N 행렬을 추가합니다.
복사 하나의 N × N 행렬을 다른 행렬에 복사
div N × N 행렬을 스칼라로 나눕니다.
hadamard 두 개의 N × N 행렬의 Hadamard 곱
frobenius 두 N × N 행렬의 Frobenius 곱
두 N × N 행렬의 평균 산술 평균
N × N 행렬에 스칼라를 곱합니다.
두 개의 N × N 행렬의 곱
sub 다른 N × N 행렬에서 하나의 N × N 행렬을 뺍니다.
N × N 행렬 전치

--행렬 크기 N
행렬의 N × N 크기를 지정합니다. 값이 작을수록 부동 소수점이 발생합니다.
계산 처리량 경계 스트레스 요인. 여기서 값이 크면 캐시 및/또는
메모리 대역폭 제한 스트레스 요인.

--멤배리어 N
멤버리어 시스템 호출을 실행하는 N 작업자를 시작합니다(Linux에만 해당).

--멤배리어-ops N
N보고 멤브레인 작업 후 멤브레인 스트레스 작업자를 중지합니다.

--memcpy N
다음을 사용하여 공유 영역에서 버퍼로 2MB의 데이터를 복사하는 N 작업자를 시작합니다.
밈피(3) 그런 다음 버퍼의 데이터를 다음과 같이 이동합니다. 메모무브(3) 3가지 다른
정렬. 이렇게 하면 프로세서 캐시와 시스템 메모리가 실행됩니다.

--memcpy-ops N
N bogo memcpy 작업 후에 memcpy 스트레스 작업자를 중지합니다.

--memfd N
다음을 사용하여 256페이지의 1024개 할당을 생성하는 N 작업자를 시작합니다. memfd_create(2)과하면
잘라내다(2) 할당 및 mmap(2) 할당을 프로세스에 매핑
주소 공간. (리눅스에만 해당).

--memfd-ops N
N 이후에 중지 memfd 생성(2) 보고 작업.

--병합 정렬 N
BSD mergesort를 사용하여 32비트 정수를 정렬하는 N 작업자를 시작합니다.

--mergesort-ops N
N 보고 병합 정렬 후에 병합 정렬 스트레스 작업자를 중지합니다.

--mergesort-크기 N
정렬할 32비트 정수 수를 지정합니다. 기본값은 262144(256 × 1024)입니다.

--mincore N
한 번에 한 페이지씩 모든 메모리를 살펴보는 N 작업자를 시작합니다.
페이지가 매핑되고 또한 다음을 사용하여 메모리에 상주합니다. 민코어(2).

--mincore-ops N
N mincore 보고 작업 후에 중지합니다. 1000개의 Mincore 보고 작업은 XNUMX과 동일합니다.
민코어(2) 전화.

--mincore-random
페이지를 순차적으로 살펴보는 대신 무작위로 페이지를 선택하세요. 선택
주소를 한 자리씩 이동하여 반복하고 mincore로 확인합니다.
주소가 페이지 크기보다 작거나 같을 때까지.

--mknod N
다음을 사용하여 fifo, 빈 파일 및 명명된 소켓을 생성하고 제거하는 N 작업자를 시작합니다.
mknod하고 링크를 해제하세요.

--mknod-ops N
N bogo mknod 작업 후에 디렉터리 스래시 작업자를 중지합니다.

--mlock N
다음을 사용하여 메모리 매핑된 페이지를 잠그고 잠금 해제하는 N 작업자를 시작합니다. 말록(2)
먼록(2) mlockall(2)과하면 먼록올(2). 이는 세 가지 매핑을 통해 달성됩니다.
인접한 페이지를 잠근 다음 두 번째 페이지를 잠가서 연속적이지 않은 페이지를 보장합니다.
페이지가 잠겨 있습니다. 그런 다음 최대 허용 mlock 또는
최대 262144개의 매핑이 이루어집니다. 다음으로, 향후의 모든 매핑은 잠금 처리되고
작업자가 262144페이지를 매핑하려고 시도하면 모든 페이지가 잠금 해제되고 페이지가 잠금 해제됩니다.
매핑되지 않았습니다.

--mlock-ops N
N mlock 보고 작업 후에 중지합니다.

--mmap N
N명의 작업자가 지속적으로 전화를 걸기 시작합니다. mmap(2) /문맵(2). 초기 매핑은
큰 청크(-mmap-bytes로 지정된 크기) 뒤에 의사 무작위 4K가 옵니다.
매핑 해제, 의사 랜덤 4K 매핑, 선형 4K 매핑 해제입니다. 메모
그렇지 않은 경우 시스템이 Linux 시스템에서 커널 OOM 킬러를 트립할 수 있습니다.
물리적 메모리가 충분하지 않고 스왑을 사용할 수 없습니다. MAP_POPULATE 옵션이 사용됩니다
이를 지원하는 시스템의 메모리에 페이지를 채웁니다. 기본적으로 익명
매핑이 사용되지만 --mmap-file 및 --mmap-async 옵션을 사용하면 다음을 수행할 수 있습니다.
원하는 경우 파일 기반 매핑을 수행합니다.

--mmap-ops N
N bogo 작업 후 mmap 스트레스 작업자를 중지합니다.

--mmap-비동기
파일 기반 메모리 매핑을 활성화하고 각 페이지에서 비동기식 동기화를 사용합니다.
--mmap 파일.

--mmap-바이트 N
mmap 스트레스 작업자당 N바이트를 할당합니다. 기본값은 256MB입니다. 다음을 지정할 수 있습니다.
접미사 b, k, m 또는 g를 사용하여 바이트, KBytes, MBytes 및 GBytes 단위의 크기입니다.

--mmap 파일
파일 기반 메모리 매핑을 활성화하고 기본적으로 각 메모리 매핑에서 동기식 동기화를 사용합니다.
페이지.

--mmap-mprotect
메모리의 각 페이지에 대한 보호 설정을 변경합니다. 페이지나 그룹이 표시될 때마다
페이지가 매핑되거나 다시 매핑되면 이 옵션은 페이지를 읽기 전용, 쓰기 전용으로 만듭니다.
전용, 실행 전용 및 읽기/쓰기가 가능합니다.

--mmapfork N
각각 32개의 하위 프로세스를 분기하는 N 작업자를 시작합니다.
시스템에 남아 있는 사용 가능한 메모리 중 일부를 할당합니다.
교환). 그런 다음 하위 프로세스는 할당이 필요할 것임을 암시합니다.
미치게 하다(2) 그런 다음 그것을 XNUMX으로 memset하고 더 이상 필요하지 않음을 암시합니다.
나가기 전에 미친 짓을 해라. 이로 인해 상당한 양의 VM 활동이 발생합니다.
캐시 미스가 발생하고 스왑이 최소화됩니다.

--mmapfork-ops N
N mmapfork 보고 작업 후에 중지합니다.

--mmapmany N
허용되는 최대 프로세스당 메모리 생성을 시도하는 N 작업자를 시작합니다.
매핑. 이는 3개의 인접한 페이지를 매핑한 다음 매핑을 해제하여 달성됩니다.
따라서 중간 페이지는 매핑을 두 개로 분할합니다. 그런 다음 이것이 끝날 때까지 반복됩니다.
허용되는 최대 매핑 수 또는 최대 262144개의 매핑이 만들어집니다.

--mmapmany-ops N
N mmapmany 보고 작업 후에 중지합니다.

--mremap N
N명의 작업자가 지속적으로 전화를 걸기 시작합니다. mmap(2) mremap(2)과하면 문맵(2). 처음의
익명 매핑은 큰 청크(--mremap-bytes로 지정된 크기)이며,
페이지 크기까지 다시 매핑하여 반복적으로 크기를 절반으로 줄인 다음
원래 크기로 백업하세요. 이 작업자는 Linux에서만 사용할 수 있습니다.

--mremap-ops N
N 보고 작업 후 mremap 스트레스 작업자를 중지합니다.

--mremap-바이트 N
처음에는 다시 매핑 스트레스 작업자당 N바이트를 할당하며 기본값은 256MB입니다. 하나는 수
접미사 b를 사용하여 크기를 바이트, KBytes, MBytes 및 GBytes 단위로 지정합니다.
k, m 또는 g.

--msg N
지속적으로 메시지를 보내고 받는 N개의 발신자 및 수신자 프로세스를 시작합니다.
System V 메시지 IPC를 사용합니다.

--msg-ops N
N bogo 메시지 전송 작업이 완료된 후 중지됩니다.

--mq N 지속적으로 메시지를 보내고 받는 N개의 발신자 및 수신자 프로세스를 시작합니다.
POSIX 메시지 대기열을 사용합니다. (리눅스에만 해당).

--mq-ops N
N bogo POSIX 메시지 전송 작업이 완료된 후 중지됩니다.

--mq-크기 N
POSIX 메시지 큐의 크기를 지정합니다. 기본 크기는 메시지 10개이며 대부분의 Linux에서는
시스템에서는 일반 사용자에게 허용되는 최대 크기입니다. 주어진 크기가
허용된 메시지 대기열 크기보다 크면 경고가 발행되고
대신 최대 허용 크기가 사용됩니다.

--멋진 N
사용 가능한 Nice 수준을 실행하는 N CPU 소비 작업자를 시작합니다. 각
반복은 모든 Nice 레벨을 실행하는 하위 프로세스를 분기합니다.
레벨당 0.1초 동안 바쁜 루프를 실행한 후 종료됩니다.

--좋은 작전 N
N nice bogo nice 루프 이후에 중지하세요.

--없는 N
N 작업자가 /dev/null에 쓰기를 시작합니다.

--null-ops N
N /dev/null bogo 쓰기 작업 후에 null 스트레스 작업자를 중지합니다.

--누마 N
스트레스 요인과 4MB 메모리 매핑 버퍼를 마이그레이션하는 N 작업자를 시작합니다.
사용 가능한 NUMA 노드. 이는 다음을 사용합니다. 마이그레이션_페이지(2) 스트레스 요인을 이동시키고
M바인드(2)과하면 move_pages(2) 매핑된 버퍼의 페이지를 이동합니다. 각 이동 후,
캐시 누락을 초래하는 버스를 통한 활동을 강제하기 위해 버퍼가 기록됩니다.
이 테스트는 NUMA가 활성화되어 있고 NUMA 노드가 1개 이상인 하드웨어에서만 실행됩니다.

--numa-ops N
N bogo NUMA 작업 후 NUMA 스트레스 작업자를 중지합니다.

--oom-파이프 N
허용되는 만큼의 파이프를 생성하고 확장을 연습하는 N 작업자를 시작하고
가장 큰 파이프 크기에서 페이지 크기까지 파이프를 축소합니다. 데이터가 기록됩니다
파이프에 넣고 다시 읽어 파이프 버퍼를 채웁니다. --aggressive를 사용하면
모드를 활성화하면 파이프가 축소될 때 데이터를 읽을 수 없어 커널이
OOM은 공격적으로 프로세스를 진행합니다. 이 스트레스 요인의 인스턴스를 많이 실행하면
많은 대규모 파이프 버퍼 할당으로 인해 커널에서 OOM으로 프로세스가 진행됩니다.

--oom-pipe-ops N
N 보고 파이프 확장/축소 작업 후에 중지합니다.

-o N, --열려있는 N
수행하는 N명의 작업자를 시작하세요. 열 수(2) 그리고 나서 가까운(2) /dev/zero에서의 작업. 그만큼
한 번에 열리는 최대 개수는 시스템에서 정의되므로 테스트는 이 값까지 실행됩니다.
최대 또는 65536개의 열린 파일 설명자(먼저 오는 것)

--개방 작전 N
N보고 개방 작업 후 개방형 스트레스 근로자를 중지하십시오.

--성격 N
성격을 설정하고 사용 가능한 모든 것을 얻으려고 시도하는 N 작업자를 시작하십시오.
성격 유형(프로세스 실행 도메인 유형)을 통해 성격(2) 시스템
부르다. (리눅스에만 해당).

--성격 작전 N
N보고 성격 작업 후 성격 스트레스 작업자를 중지하세요.

-p N, --파이프 N
파이프 I/O를 실행하기 위해 대규모 파이프 쓰기 및 읽기를 수행하는 N 작업자를 시작합니다.
이는 메모리 쓰기 및 읽기뿐만 아니라 컨텍스트 전환도 실행합니다. 각 작업자
리더(reader)와 라이터(writer)라는 두 가지 프로세스가 있습니다.

--파이프 작업 N
N 보고 파이프 쓰기 작업 후에 파이프 스트레스 작업자를 중지합니다.

--파이프 데이터 크기 N
파이프에 대한 각 쓰기의 크기를 바이트 단위로 지정합니다(범위: 4바이트 ~ 4096).
바이트). 작은 데이터 크기를 설정하면 더 많은 쓰기가 버퍼링됩니다.
파이프를 사용하여 파이프 작성기와 파이프 간의 컨텍스트 전환 속도를 줄입니다.
독자 프로세스. 기본 크기는 페이지 크기입니다.

--파이프 크기 N
파이프 크기를 바이트 단위로 지정합니다(F_SETPIPE_SZ를 지원하는 시스템의 경우).
fcntl() 명령). 파이프 크기를 작게 설정하면 파이프가 채워져 막힐 수 있습니다.
더 자주 발생하므로 파이프 작성기 간의 컨텍스트 전환 속도가 증가합니다.
파이프 리더 프로세스. 기본 크기는 512바이트입니다.

-P N, --투표 N
다음을 통해 제로 타임아웃 폴링을 수행하는 N 작업자를 시작합니다. 투표(2) 고르다(2)과하면
(3) 전화. 이는 아무것도 하지 않고 시스템과 사용자 시간을 낭비합니다.

--poll-ops N
N 보고 여론 조사 작업 후 여론 조사 스트레스 작업자를 중지합니다.

--procfs N
파일을 읽는 N 작업자를 시작합니다. / proc 다음에서 파일을 재귀적으로 읽습니다.
/proc/self (리눅스만 해당).

--procfs-ops N
N bogo 읽기 작업 후에 procfs 읽기를 중지합니다. 참고로 항목수는
커널마다 다를 수 있으므로 이 bogo ops 측정 항목은 아마도 매우 오해의 소지가 있을 것입니다.

--pthread N
여러 pthread를 반복적으로 생성하고 종료하는 N 작업자를 시작합니다(
기본값은 작업자당 pthread 1024개입니다. 각 반복에서 새로 생성된 각각의 pthread
작업자가 모든 pthread를 생성할 때까지 기다렸다가 모두 종료됩니다.
함께.

--pthread-ops N
N bogo pthread 생성 작업 후에 pthread 작업자를 중지합니다.

--pthread-최대 N
작업자당 N개의 pthread를 생성합니다. pthread 수를 곱한 경우
작업자 수가 허용된 pthread의 소프트 제한보다 큰 경우
최대값이 허용되는 최대값으로 다시 조정됩니다.

--ptrace N
다음을 사용하여 하위 프로세스의 시스템 호출을 분기하고 추적하는 N 작업자를 시작합니다.
ptrace(2).

--ptrace-ops N
N bogo 시스템 호출이 추적된 후 ptracer 작업자를 중지합니다.

-NS, --qsort N
qsort를 사용하여 32비트 정수를 정렬하는 N 작업자를 시작합니다.

--qsort-ops N
N bogo qsorts 후에 qsort 스트레스 작업자를 중지합니다.

--qsort-크기 N
정렬할 32비트 정수 수를 지정합니다. 기본값은 262144(256 × 1024)입니다.

--몫 N
Q_GETQUOTA, Q_GETFMT, Q_GETINFO, Q_GETSTATS를 실행하는 N 작업자를 시작하고
Q_SYNC 할당량(2) 사용 가능한 모든 마운트된 블록 기반 파일 시스템에 대한 명령.

--할당량 작업 N
N bogo quotactl 작업 후 할당량 스트레스 작업자를 중지합니다.

--rdrand N
Intel 하드웨어 난수 생성기를 읽는 N 작업자를 시작합니다(Intel
Ivybridge 프로세서 이상).

--rdrand-ops N
N 보고 rdrand 작업 후 rdrand 스트레스 작업자를 중지합니다(1 보고 작업 = 2048 무작위
비트를 성공적으로 읽었습니다).

--미리 읽기 N
512바이트 읽기/쓰기 I/O 작업을 무작위로 찾아 수행하는 N 작업자를 시작합니다.
미리 읽기 기능이 있는 파일에. 기본 파일 크기는 1GB입니다. 미리 읽기와 읽기는 다음과 같습니다.
16개의 미리 읽기와 16개의 읽기로 일괄 처리됩니다.

--미리 읽기-바이트 N
미리 읽기 파일의 크기를 설정합니다. 기본값은 1GB입니다. 크기를 지정할 수 있습니다.
접미사 b, k, m 또는 g를 사용하는 바이트, KBytes, MBytes 및 GBytes 단위.

--미리 읽기 작업 N
N 보고 읽기 작업 후에 미리 읽기 스트레스 작업자를 중지합니다.

--다시 매핑 N
512페이지를 매핑하는 N 작업자를 시작하고 더 이상 사용되지 않는
시스템 호출 remap_file_pages(2). 여러 페이지 재정렬이 실행됩니다: 앞으로,
역방향, 무작위 및 여러 페이지를 1페이지로 구성합니다.

--remap-ops N
N번 리매핑 보고 작업 후에 중지합니다.

-R N, --이름 바꾸기 N
각각 파일을 생성한 다음 반복적으로 이름을 바꾸는 N개의 작업자를 시작합니다.

--이름 바꾸기 작업 N
N 보고 이름 바꾸기 작업 후에 스트레스 작업자 이름 바꾸기를 중지합니다.

--rlimit N
CPU 및 파일 크기 리소스 제한을 초과하는 N 작업자를 시작하여 SIGXCPU를 생성합니다.
및 SIGXFSZ 신호.

--rlimit-ops N
N bogo 리소스 제한 SIGXCPU 및 SIGXFSZ 신호가 포착된 후 중지합니다.

--seccomp N
보안 컴퓨팅 시스템 호출 필터링을 실행하는 N 작업자를 시작합니다. 각 작업자
/dev/null에 짧은 메시지를 쓴 다음 종료하는 하위 프로세스를 생성합니다. 2%
의 하위 프로세스에 쓰기 시스템 호출을 허용하지 않는 seccomp 필터가 있습니다.
따라서 SIGSYS를 사용하는 seccomp에 의해 종료됩니다. 이 스트레스 요인은
아이가 죽을 때마다 많은 감사 로그 메시지를 생성합니다.

--seccomp-ops N
N seccomp 필터 테스트 후에 seccomp 스트레스 작업자를 중지합니다.

--찾다. 목표물 탐색 N
512바이트 읽기/쓰기 I/O 작업을 무작위로 찾아 수행하는 N 작업자를 시작합니다.
파일에. 기본 파일 크기는 16GB입니다.

--탐색 작업 N
N 보고 탐색 작업 후 스트레스 작업자 탐색을 중지합니다.

--탐색-펀치
무작위로 위치한 8K 구멍을 파일에 펀치하여 더 많은 범위를 강제로 생성합니다.
까다로운 탐색 스트레스 요인(Linux에만 해당)

--탐색 크기 N
파일 크기를 바이트 단위로 지정합니다. 파일 크기가 작아서 I/O가 발생할 수 있습니다.
캐시로 인해 CPU 로드가 증가합니다. 파일 크기가 크면 더 많은 I/O 작업이 필요합니다.
드라이브에 더 많은 대기 시간과 더 많은 I/O가 발생합니다. 크기를 지정할 수 있습니다.
접미사 b, k, m 또는 g를 사용하는 바이트, KBytes, MBytes 및 GBytes 단위.

--sem N
POSIX 세마포 대기 및 사후 작업을 수행하는 N 작업자를 시작합니다. 기본적으로,
작업자당 부모와 4명의 자녀가 시작되어
신호기. 이는 빠른 세마포어 작업을 강조하고 빠른 컨텍스트를 생성합니다.
전환.

--sem-ops N
N 보고 세마포 작업 후에 세마포 스트레스 작업자를 중지합니다.

--sem-procs N
세마포어에 대한 경합을 제공하기 위해 작업자당 N명의 하위 작업자를 시작합니다.
기본값은 4이고 최대 64개가 허용됩니다.

--sem-sysv N
System V 세마포 대기 및 사후 작업을 수행하는 N 작업자를 시작합니다. 에 의해
기본적으로 경합을 제공하기 위해 작업자당 부모와 4명의 자식이 시작됩니다.
세마포어에. 이는 빠른 세마포어 작업을 강조하고 빠른 신호를 생성합니다.
컨텍스트 전환.

--sem-sysv-ops N
N 보고 System V 세마포 작업 후 세마포 스트레스 작업자를 중지합니다.

--sem-sysv-procs N
System V 세마포에 대한 경합을 제공하기 위해 작업자당 N 개의 하위 프로세스를 시작합니다.
기본값은 4이고 최대 64개가 허용됩니다.

--sendfile N
/dev/null에 빈 파일을 보내는 N 작업자를 시작합니다. 이 작업은 거의
커널에서 항상. 기본 전송 파일 크기는 4MB입니다. 센드파일
옵션은 Linux에만 해당됩니다.

--sendfile-ops N
N개의 sendfile 보고 작업 후에 sendfile 작업자를 중지합니다.

--sendfile-크기 S
각 sendfile 호출로 복사할 크기를 지정합니다. 기본 크기는 4MB입니다. 하나
접미사를 사용하여 크기를 바이트, KBytes, MBytes 및 GBytes 단위로 지정할 수 있습니다.
b, k, m 또는 g.

--shm N
POSIX 공유를 사용하여 공유 메모리 객체를 열고 할당하는 N 작업자를 시작합니다.
메모리 인터페이스. 기본적으로 테스트에서는 32개의 항목을 반복적으로 생성하고 삭제합니다.
각각의 크기는 8MB인 공유 메모리 객체입니다.

--shm-ops N
N POSIX 공유 메모리 생성 및 삭제 bogo 작업이 완료된 후 중지됩니다.

--shm-바이트 N
생성할 POSIX 공유 메모리 개체의 크기를 지정합니다. 지정할 수 있습니다.
접미사 b, k, m 또는를 사용하여 바이트, KBytes, MBytes 및 GBytes 단위의 크기
g.

--shm-objs N
생성할 공유 메모리 개체 수를 지정합니다.

--shm-sysv N
System V 공유 메모리를 사용하여 공유 메모리를 할당하는 N 작업자를 시작합니다.
상호 작용. 기본적으로 테스트에서는 8개의 공유 메모리를 반복적으로 생성하고 파괴합니다.
각 세그먼트의 크기는 8MB입니다.

--shm-sysv-ops N
N개의 공유 메모리 생성 및 삭제 보고 작업이 완료된 후 중지됩니다.

--shm-sysv-바이트 N
생성할 공유 메모리 세그먼트의 크기를 지정합니다. 다음을 지정할 수 있습니다.
접미사 b, k, m 또는 g를 사용하여 바이트, KBytes, MBytes 및 GBytes 단위의 크기입니다.

--shm-sysv-세그 N
생성할 공유 메모리 세그먼트 수를 지정합니다.

--sigfd N
SIGRT 신호를 생성하고 하위 항목의 읽기로 처리되는 N 작업자를 시작합니다.
파일 설명자를 사용하여 프로세스 설정 신호(2). (리눅스에만 해당). 이것은
모든 CPU가 완전히 로드되면 과도한 컨텍스트 스위치 로드가 생성됩니다.

--sigfd-ops
N bogo SIGUSR1 신호가 전송된 후 sigfd 작업자를 중지합니다.

--signpe N
제로 SIGFPE 결함으로 빠르게 분할을 일으키는 N 작업자를 시작합니다.

--sigfpe-ops N
N 보고 SIGFPE 오류 후 sigfpe 스트레스 작업자를 중지합니다.

--서명 중 N
SIGUSR1 신호가 보류 중인지 확인하는 N 작업자를 시작합니다. 이 스트레스 요인 마스크
SIGUSR1은 SIGUSR1 신호를 생성하고 사용합니다. 보류(2) 신호가 맞는지 확인하기 위해
보류 중. 그런 다음 신호의 마스크를 해제하고 신호가 더 이상 보류되지 않는지 확인합니다.

--서명 보류 작업 N
N 보고 보류/보류 중인 수표에 서명한 후 스트레스 작업자 서명을 중지합니다.

--sigsegv N
분할 오류를 신속하게 생성하고 포착하는 N 작업자를 시작합니다.

--sigsegv-ops N
N 보고 분할 오류 후 sigsegv 스트레스 작업자를 중지합니다.

--sig일시 중지 N
SIGUSR4을 기다리는 1개의 하위 프로세스에서 각각 생성되는 N 작업자를 시작합니다.
다음을 사용하여 부모로부터 신호를 받습니다. 시그중단(2). 부모는 SIGUSR1 신호를 다음에게 보냅니다.
각 어린이는 빠르게 연속적으로. 각 sigsuspension 웨이크업은 하나의 보고로 계산됩니다.
작동.

--sigsuspens-ops N
N bogo sigstop 웨이크업 후 sigsuspens 스트레스 작업자를 중지합니다.

--sigq N
다음을 사용하여 SIGUSR1 신호를 빠르게 보내는 N 작업자를 시작합니다. 시그큐(3) 아이에게
신호를 기다리는 프로세스 시그웨이트인포(2).

--sigq-ops N
N bogo 신호 전송 작업 후에 sigq 스트레스 작업자를 중지합니다.

--잠 N
각각 여러 절전 모드를 수행하는 여러 스레드에서 생성되는 N 작업자를 시작합니다.
범위는 1us ~ 0.1s입니다. 이렇게 하면 여러 컨텍스트 스위치와 타이머가 생성됩니다.
인터럽트.

--수면 작전 N
N번의 sleep 보고 작업 후에 중지합니다.

--수면 최대 P
작업자당 P개의 스레드를 시작합니다. 기본값은 1024이고 허용되는 최대값은 30000입니다.

-S N, --양말 N
다양한 소켓 스트레스 활동을 수행하는 N 작업자를 시작합니다. 여기에는 한 쌍이 포함됩니다.
빠른 연결, 전송 및 수신을 수행하는 클라이언트/서버 프로세스
로컬 호스트에서 연결이 끊어집니다.

--양말 도메인 D
사용할 도메인을 지정합니다. 기본값은 ipv4입니다. 현재 ipv4, ipv6 및 unix는
지원.

--양말 노드레이
이렇게 하면 TCP Nagle 알고리즘이 비활성화되므로 데이터 세그먼트는 항상 다음과 같이 전송됩니다.
가능한. 이는 데이터가 전송되기 전에 버퍼링되는 것을 방지합니다.
결과적으로 네트워크 활용도가 낮아지고 네트워크 간의 컨텍스트 전환이 많아집니다.
발신자와 수신자.

--양말 포트 P
소켓 포트 P에서 시작합니다. N 소켓 작업자 프로세스의 경우 포트 P - P - 1이 사용됩니다.

--양말 작전 N
N 보고 작업 후 소켓 스트레스 작업자를 중지합니다.

--양말 옵션 [ 보내다 | 보내다 | sendmmsg ]
기본적으로 메시지는 다음을 사용하여 전송됩니다. 보내다(2). 이 옵션을 사용하면 다음을 지정할 수 있습니다.
보내는 방법을 사용하여 보내다(2) 보내다(2) 또는 sendmmsg(2). sendmmsg는 다음과 같습니다.
이 시스템 호출을 지원하는 Linux 시스템에서만 사용할 수 있습니다.

--sockfd N
다음을 사용하여 UNIX 도메인 소켓을 통해 파일 설명자를 전달하는 N 작업자를 시작합니다.
CMSG(3) 보조 데이터 메커니즘. 각 작업자에 대해 클라이언트/서버 프로세스 쌍
생성되면 서버는 /dev/null에서 가능한 한 많은 파일 설명자를 열고
CMSG 데이터에서 이를 읽는 클라이언트에 소켓을 통해 전달하고
즉시 파일을 닫습니다.

--sockfd-ops N
N bogo 작업 후 sockfd 스트레스 작업자를 중지합니다.

--양말 쌍 N
소켓 쌍 I/O 읽기/쓰기를 수행하는 N 작업자를 시작합니다. 여기에는 한 쌍의
무작위 크기의 소켓 I/O 작업을 수행하는 클라이언트/서버 프로세스입니다.

--sockpair-ops N
N 보고 작업 후에 소켓 쌍 스트레스 작업자를 중지합니다.

--알 N
N 작업자가 다음을 사용하여 지속적으로 자식을 생성합니다. posix_spawn(3) 스트레스를 실행하는 것
그런 다음 거의 즉시 종료됩니다.

--spawn-ops N
N 보고가 생성된 후 스트레스 작업자 생성을 중지합니다.

--접착 N
데이터를 복사하지 않고 파이프를 통해 /dev/zero에서 /dev/null로 이동합니다.
커널 주소 공간과 사용자 주소 공간 접착(2). 이것만 가능해요
Linux 용.

--splice-ops N
N 보고 접속 작업 후에 중지합니다.

--스플라이스 바이트 N
스플라이스 호출당 N바이트를 전송하며 기본값은 64K입니다. 크기를 지정할 수 있습니다.
접미사 b, k, m 또는 g를 사용하는 바이트, KBytes, MBytes 및 GBytes 단위.

--스택 N
다음을 사용하여 신속하게 스택 오버플로를 발생시키고 포착하는 N 작업자를 시작합니다. 할당(3).

--스택이 가득 참
기본 작업은 각 스택 할당에서 가장 낮은 페이지를 터치하는 것입니다. 이것
옵션은 새 스택 할당을 XNUMX으로 채워 모든 페이지에 적용됩니다.
물리적 페이지를 강제로 할당하므로 더욱 공격적입니다.

--스택 작업 N
N 보고 스택이 오버플로된 후 스택 스트레스 작업자를 중지합니다.

--str N
임의의 문자열에 대해 다양한 libc 문자열 기능을 실행하는 N 작업자를 시작합니다.

--str-방법 strfunc
강조할 특정 libc 문자열 함수를 선택합니다. 사용 가능한 문자열 함수
스트레스는 다음과 같습니다: all, index, rindex, strcasecmp, strcat, strchr, strcoll, strcmp,
strcpy, strlen, strncasecmp, strncat, strncmp, strrchr 및 strxfrm. 보다 (3)
이러한 문자열 함수에 대한 자세한 내용은 'all' 방법이 기본값입니다.
모든 문자열 메서드를 실행합니다.

--str-ops N
N 보고 문자열 작업 후에 중지합니다.

--개울 N
STREAM을 기반으로 느슨하게 메모리 대역폭 스트레스 요인을 운동하는 N 작업자를 시작합니다.
"고성능 컴퓨터의 지속 가능한 메모리 대역폭" 벤치마킹 도구
존 D. 맥칼핀(John D. McCalpin) 박사 이 스트레스 요인은 최소 4배의 버퍼를 할당합니다.
CPU L2 캐시의 크기를 조정하고 다음 라운드를 지속적으로 수행합니다.
배정밀도 부동 소수점 숫자의 큰 배열에 대한 계산:

조작 상품 설명
c[i] = a[i] 복사
스케일 b[i] = 스칼라 * c[i]
c[i] = a[i] + b[i] 추가
트라이어드 a[i] = b[i] + (c[i] * 스칼라)

이는 STREAM 벤치마크 코드의 변형을 대략적으로 기반으로 하므로, 하지 마십시오.
스트레스를 받으려고 의도한 대로 이를 바탕으로 결과를 제출하세요.
메모리 및 컴퓨팅, STREAM용으로 의도되지 않음 정확한 조정 또는 비조정
뭐든지 벤치마킹합니다. 원하는 경우 공식 STREAM 벤치마킹 도구를 사용하세요.
정확하고 표준화된 STREAM 벤치마크.

--stream-ops N
N 스트림 보고 작업 후 중지합니다. 여기서 보고 작업은 한 번의 복사 라운드입니다.
확장, 추가 및 트라이어드 작업.

--stream-l3-크기 N
CPU 레벨 3 캐시 크기를 바이트 단위로 지정합니다. 단위로 크기를 지정할 수 있습니다.
접미사 b, k, m 또는 g를 사용하는 바이트, KBytes, MBytes 및 GBytes. L3 캐시인 경우
크기가 제공되지 않으면 Stress-ng는 캐시 크기를 확인하려고 시도합니다.
실패하면 크기가 기본적으로 4MB로 설정됩니다.

-s N, --스위치 N
컨텍스트 전환을 강제하기 위해 파이프를 통해 자식에게 메시지를 보내는 N 작업자를 시작합니다.

--스위치 작동 N
N 보고 작업 후에 컨텍스트 전환 작업자를 중지합니다.

--symlink N
N 작업자를 시작하여 심볼릭 링크를 생성하고 제거합니다.

--symlink-ops N
N 보고 작업 후 심볼릭 링크 스트레스 작업자를 중지합니다.

--동기화 파일 N
다음을 사용하여 파일 전체에서 다양한 데이터 동기화를 수행하는 N 작업자를 시작합니다.
sync_file_range(2). 처음부터 끝까지 세 가지 동기화 혼합이 수행됩니다.
파일의 끝부터 시작까지, 그리고 무작위로 혼합됩니다. 무작위 선택
SYNC_FILE_RANGE_WAIT_BEFORE를 포함하여 유효한 동기화 유형이 사용됩니다.
SYNC_FILE_RANGE_WRITE 및 SYNC_FILE_RANGE_WAIT_AFTER 플래그 비트.

--동기화 파일 작업 N
N 보고 동기화 작업 후에 동기화 파일 작업자를 중지합니다.

--동기화-파일-바이트 N
동기화할 파일의 크기를 지정합니다. 단위로 크기를 지정할 수 있습니다.
접미사 b, k, m 또는 g를 사용하는 바이트, KBytes, MBytes 및 GBytes.

--sysinfo N
지속적으로 시스템을 읽고 특정 정보를 처리하는 N 작업자를 시작합니다.
이는 다음을 사용하여 프로세스 사용자 및 시스템 시간을 읽습니다. 시대(2) 시스템 호출. 을 위한
Linux 시스템에서는 다음을 사용하여 전체 시스템 통계도 읽습니다. sysinfo가(2) 시스템
다음을 사용하여 마운트된 모든 파일 시스템에 대한 호출 및 파일 시스템 통계도 제공합니다.
통계(2).

--sysinfo-ops N
N 보고 작업 후에 sysinfo 작업자를 중지합니다.

--sysfs N
파일을 재귀적으로 읽는 N 작업자를 시작합니다. / sys (리눅스에만 해당). 이로 인해 다음이 발생할 수 있습니다.
커널 로그에 메시지를 내보내는 특정 커널 드라이버입니다.

--sys-ops N
N bogo 읽기 작업 후에 sysfs 읽기를 중지합니다. 참고로 항목수는
커널마다 다를 수 있으므로 이 bogo ops 측정 항목은 아마도 매우 오해의 소지가 있을 것입니다.

--티 N
파이프를 통해 작성자 프로세스에서 리더 프로세스로 데이터를 이동하고 /dev/null로 데이터를 이동합니다.
커널 주소 공간과 사용자 주소 공간 사이를 복사하지 않고
(2). 이는 Linux에서만 사용할 수 있습니다.

--티옵스 N
N 보고 티 작업 후 중지합니다.

-T N, --시간제 노동자 N
1MHz의 기본 속도로 타이머 이벤트를 생성하는 N 작업자를 시작합니다(Linux에만 해당). 이것
수천 개의 타이머 클럭 인터럽트를 생성할 수 있습니다. 각 타이머 이벤트가 포착됩니다.
신호 처리기에 의해 보고 타이머 작업으로 계산됩니다.

--타이머-ops N
N개의 보고 타이머 이벤트 후에 타이머 스트레스 작업자를 중지합니다(Linux에만 해당).

--타이머-주파수 F
FHz에서 타이머를 실행합니다. 범위는 1~1000000000Hz(Linux에만 해당)입니다. 선택하여
적절한 주파수 스트레스는 수십만 개의 인터럽트를 생성할 수 있습니다.
초당.

--타이머 랜드
타이머 주파수 +/- 12.5% ​​랜덤 지터를 기준으로 타이머 주파수를 선택합니다.
이것은 스케줄링을 만들기 위해 타이머 간격에 더 많은 가변성을 강제하려고 시도합니다.
덜 예측 가능합니다.

--timerfd N
1MHz의 기본 속도로 timerfd 이벤트를 생성하는 N 작업자를 시작합니다(Linux에만 해당).
이로 인해 수천 개의 타이머 시계 이벤트가 생성될 수 있습니다. 타이머 이벤트가 대기 중입니다.
타이머 파일 설명자에서 다음을 사용하여 고르다(2) 그런 다음 읽고 보고로 계산합니다.
타이머프드 op.

--timerfd-ops N
N 보고 timerfd 이벤트 후에 timerfd 스트레스 작업자를 중지합니다(Linux에만 해당).

--timerfd-주파수 F
FHz에서 타이머를 실행합니다. 범위는 1~1000000000Hz(Linux에만 해당)입니다. 선택하여
적절한 주파수 스트레스는 수십만 개의 인터럽트를 생성할 수 있습니다.
초당.

--timerfd-rand
타이머 주파수 +/- 12.5% ​​무작위를 기준으로 타이머 주파수를 선택합니다.
지터. 이는 타이머 간격에 더 많은 가변성을 적용하여
일정이 덜 예측 가능합니다.

--tsc N
루프 반복당 TSC(Time Stamp Counter)를 256회 읽는 N 작업자를 시작합니다.
(보고 작업). Intel x86 플랫폼에서만 사용할 수 있습니다.

--tsc-ops N
N 보고 작업이 완료된 후 tsc 작업자를 중지합니다.

--t검색 N
이진 트리에서 32비트 정수를 삽입, 검색 및 삭제하는 N 작업자를 시작합니다.
사용 검색(3) 찾기(3)과하면 삭제(삼). 기본적으로 3개의 무작위가 있습니다.
트리에 사용되는 정수. 이는 랜덤 액세스를 실행하는 데 유용한 방법입니다.
메모리 및 프로세서 캐시.

--tsearch-ops N
N개의 보고 트리 작업이 완료된 후 tsearch 작업자를 중지합니다.

--t검색 크기 N
tsearch에 배열의 크기(32비트 정수 수)를 지정합니다. 크기는 일 수 있습니다
1K에서 4M까지.

--udp N
UDP를 사용하여 데이터를 전송하는 N개의 작업자를 시작합니다. 여기에는 클라이언트/서버 쌍이 포함됩니다.
로컬에서 빠른 연결, 송수신 및 연결 끊기를 수행하는 프로세스
숙주.

--udp-도메인 D
사용할 도메인을 지정합니다. 기본값은 ipv4입니다. 현재 ipv4, ipv6 및 unix는
지원.

--udp-라이트
UDP-Lite(RFC 3828) 프로토콜을 사용합니다(ipv4 및 ipv4 도메인에만 해당).

--udp-ops N
N 보고 작업 후 UDP 스트레스 작업자를 중지합니다.

--udp-포트 P
포트 P에서 시작합니다. N udp 작업자 프로세스의 경우 포트 P에서 P - 1이 사용됩니다. 기본적으로,
포트 7000 이상이 사용됩니다.

--udp-플러드 N
임의의 포트에 대한 UDP 패킷으로 호스트를 플러딩하려고 시도하는 N 작업자를 시작합니다.
패킷의 IP 주소는 현재 스푸핑되지 않았습니다. 이 기능은 다음에서만 사용할 수 있습니다.
AF_PACKET을 지원하는 시스템.

--udp-플러드-도메인 D
사용할 도메인을 지정합니다. 기본값은 ipv4입니다. 현재 ipv4와 ipv6은
지원.

--udp-홍수 작전 N
N bogo 작업 후 udp-flood 스트레스 작업자를 중지합니다.

--공유 해제 N
각각 32개의 하위 프로세스를 분기하는 N 작업자를 시작합니다.
공유 해제(2) 프로세스 실행 컨텍스트의 일부를 분리하여 시스템 호출.
(리눅스만 해당).

--unshare-ops N
N 보고 공유 해제 작업 후에 중지합니다.

-u N, --무작위 N
/dev/urandom을 읽는 N 작업자를 시작합니다(Linux에만 해당). 그러면 커널이 무작위로 로드됩니다.
번호 소스.

--urandom-ops N
N urandom bogo 읽기 작업 후 urandom 스트레스 작업자를 중지합니다(Linux에만 해당).

--userfaultfd N
익명으로 매핑된 소규모 네트워크에서 쓰기 페이지 오류를 생성하는 N 작업자를 시작합니다.
메모리 영역을 통해 사용자 공간 오류 처리를 사용하여 이러한 오류를 처리합니다.
userfaultfd 메커니즘. 이로 인해 대량의 주요 페이지 오류가 발생하고
또한 페이지 폴트를 처리하는 동안 컨텍스트 전환도 수행됩니다. (리눅스에만 해당).

--userfaultfd-ops N
N 페이지 오류 후 userfaultfd 스트레스 작업자를 중지합니다.

--userfaultfd-바이트 N
페이지 폴트에 대한 userfaultfd 작업자당 mmap N 바이트, 기본값은 16MB입니다.
접미사 b를 사용하여 크기를 바이트, KBytes, MBytes 및 GBytes 단위로 지정합니다.
k, m 또는 g.

--유타임 N
파일 타임스탬프를 업데이트하는 N 작업자를 시작합니다. 이는 기본적으로 CPU에 바인딩되어 있습니다.
시스템은 메타데이터 변경 사항을 주기적으로만 플러시하므로 사용됩니다.

--utime-ops N
N utime 보고 작업 후 utime 스트레스 작업자를 중지합니다.

--utime-fsync
각 파일의 타임스탬프 업데이트에 대한 메타데이터 변경 사항을 강제로 디스크에 플러시합니다. 이것
강제로 테스트가 I/O 바인딩이 되고 더티 메타데이터 쓰기가 많이 발생하게 됩니다.

--vecmath N
다양한 부호 없는 정수 수학 연산을 수행하는 N 작업자를 시작합니다.
128비트 벡터. 벡터 수학 연산의 혼합은 다음에서 수행됩니다.
벡터: 16 × 8비트, 8 × 16비트, 4 × 32비트, 2 × 64비트. 생성된 측정항목
이 조합은 프로세서 아키텍처와 벡터 수학 최적화에 따라 달라집니다.
컴파일러에 의해 생성됩니다.

--vecmath-ops N
N 보고 벡터 정수 수학 연산 후에 중지합니다.

--vfork N
즉시 종료되는 하위 항목을 지속적으로 vfork하는 N 작업자를 시작합니다.

--vfork-ops N
N 보고 작업 후 vfork 스트레스 작업자를 중지합니다.

--vfork-최대 P
P 프로세스를 생성한 다음 반복마다 종료될 때까지 기다립니다. 기본값은
단지 1; 값이 높을수록 대기 중인 임시 좀비 프로세스가 많이 생성됩니다.
수확할 수 있습니다. 잠재적으로 높은 값을 사용하여 프로세스 테이블을 채울 수 있습니다.
--vfork-max 및 --vfork의 경우.

-m N, --vm N
N명의 작업자가 지속적으로 전화를 걸기 시작합니다. mmap(2) /문맵(2) 할당된 항목에 쓰기
메모리. 이로 인해 시스템이 Linux에서 커널 OOM 킬러를 작동시킬 수 있습니다.
물리적 메모리가 충분하지 않고 스왑을 사용할 수 없는 경우 시스템.

--vm-바이트 N
mmap vm 작업자당 N바이트, 기본값은 256MB입니다. 크기를 단위로 지정할 수 있습니다.
접미사 b, k, m 또는 g를 사용하는 바이트, KBytes, MBytes 및 GBytes입니다.

--vm-스트라이드 N
버전 0.03.02부터 더 이상 사용되지 않습니다.

--vm-ops N
N 보고 작업 후에 VM 작업자를 중지합니다.

--vm-항 N
메모리 매핑을 해제하기 전에 N초 동안 절전 모드로 전환하세요. 기본값은 0초입니다. XNUMX을 지정
무한 대기를 하게 됩니다.

--vm-유지
계속해서 메모리를 매핑 해제하고 매핑하지 말고 계속해서 메모리에 다시 쓰세요.

--vm-잠김
mmap MAP_LOCKED를 사용하여 매핑된 영역의 페이지를 메모리에 잠급니다(Linux 이후
2.5.37). 이는 다음에 설명된 메모리 잠금과 유사합니다. 말록(2).

--vm-방법 m
VM 스트레스 방법을 지정합니다. 기본적으로 모든 스트레스 방법이 실행됩니다.
그러나 필요한 경우 한 가지 방법만 사용하도록 지정할 수 있습니다. 각
VM 작업자 중 3개 단계가 있습니다.

1. 초기화되었습니다. 익명으로 메모리 매핑된 영역은 알려진 패턴으로 설정됩니다.

2. 운동했습니다. 메모리는 알려진 예측 가능한 방식으로 수정됩니다. 일부 VM 작업자가 변경됩니다.
메모리를 순차적으로 사용하는 경우 일부는 작거나 큰 보폭을 사용하여 메모리를 따라갑니다.

3. 확인했습니다. 수정된 메모리가 예상과 일치하는지 확인합니다.
결과.

이름에 'prime'이 포함된 vm 메소드는 가장 큰 소수의 보폭을 가집니다.
2^64보다 작으므로 철저하게 기억을 탐색하고 모든 것을 터치할 수 있습니다.
각 위치 옆에 있는 메모리 셀을 건드리지 않고 수행하면서 한 번만 위치를 지정합니다.
다른. 이 전략은 캐시 및 페이지 비지역성을 실행합니다.

실행되는 메모리는 가상으로 매핑되므로
특정 물리적 순서로 페이지 주소를 터치합니다. 이런 노동자들은 해서는 안 된다
모든 시스템의 메모리가 올바르게 작동하는지 테스트하는 데 사용하거나 도구를 사용하십시오.
대신 memtest86과 같은 것입니다.

vm 스트레스 방법은 다음을 찾을 수 있는 방식으로 메모리를 사용하기 위한 것입니다.
메모리 문제를 해결하고 열 오류를 강제로 시도합니다.

사용 가능한 VM 스트레스 방법은 다음과 같습니다.

방법 상품 설명
모두 아래 나열된 모든 vm 스트레스 방법을 반복합니다.
순차적으로 메모리를 8번 뒤집습니다. 매번 그냥
메모리의 XNUMX비트가 반전되었습니다(반전). 이는 효과적으로
8번의 패스로 각 바이트를 반전시킵니다.
galpat-0 질주하는 패턴이 0입니다. 이것은 모든 비트를 XNUMX으로 설정하고 뒤집습니다.
1비트 중 4096을 1로 만듭니다. 그런 다음 1이 있는지 확인합니다.
이웃이나 다른 사람들에 의해 0으로 내려갑니다.
이웃이 1로 당겨졌습니다.
galpat-1 질주하는 패턴입니다. 이것은 모든 비트를 1로 설정하고 뒤집습니다.
1비트 중 4096을 0로 만듭니다. 그런 다음 0이 있는지 확인합니다.
이웃 또는 이웃에 의해 1로 당겨집니다.
0으로 끌어내렸습니다.
grey 순차적인 그레이 코드로 메모리를 채웁니다(이들만
인접한 바이트 사이에서 한 번에 1비트씩 변경) 그런 다음
올바르게 설정되었는지 확인하십시오.
incdec는 메모리를 통해 순차적으로 두 번 작동합니다. 첫 번째 패스는 다음과 같습니다.
각 바이트를 특정 값만큼 증가시키고 두 번째
pass는 각 바이트를 원래 시작 값으로 감소시킵니다.
호출할 때마다 증가/감소 값이 변경됩니다.
스트레스 요인.
inc-nybble은 메모리를 설정된 값으로 초기화합니다(각각 변경됨).
스트레스 요인 호출) 그런 다음 순차적으로 작동합니다.
각 바이트를 통해 하위 4비트를 1씩 증가시키고
상위 4비트는 15입니다.
rand-set은 64비트 청크 설정에서 메모리를 통해 순차적으로 작동합니다.
청크의 바이트를 동일한 8비트 임의 값으로 변환합니다. 그만큼
각 청크에서 임의의 값이 변경됩니다. 값을 확인하세요.
변경되지 않았습니다.
rand-sum은 순차적으로 모든 메모리를 임의의 값으로 설정한 다음
변경된 비트 수를 합산합니다.
원래 설정된 값.
read64는 bogo당 32 x 64비트 읽기를 사용하여 메모리를 순차적으로 읽습니다.
고리. 각 루프는 하나의 보고 작업과 동일합니다. 이것
원시 메모리 읽기를 실행합니다.
또는 무작위 패턴으로 메모리를 채운 다음 순차적으로
64비트 메모리를 XNUMX비트 오른쪽으로 회전한 다음,
최종 로드/회전/저장된 값.
임의의 패턴으로 64바이트 청크로 채우기 메모리를 교환합니다. 그 다음에
각 64개 청크를 무작위로 선택한 청크로 교체합니다. 마지막으로,
스왑을 되돌려 청크를 원래 위치로 되돌립니다.
배치하고 데이터가 올바른지 확인하십시오. 이 운동
인접 및 무작위 메모리 로드/저장.
move-inv는 한 번에 64비트의 메모리를 순차적으로 채웁니다.
임의의 값을 입력한 다음 메모리가 설정되어 있는지 확인하세요.
바르게. 다음으로 각 64비트 패턴을 순차적으로 반전시킵니다.
메모리가 예상대로 설정되었는지 다시 확인하세요.

23번의 반복을 통한 모듈로-x 채우기 메모리. 각 반복은 하나씩 시작됩니다.
메모리 및 단계의 시작 부분에서 더 많은 바이트
23바이트 스트라이드로 진행됩니다. 각 스트라이드에서 첫 번째 바이트는 다음과 같습니다.
무작위 패턴으로 설정되고 다른 모든 바이트는
역. 그런 다음 첫 번째 바이트에 다음이 포함되어 있는지 확인합니다.
예상되는 무작위 패턴. 이는 캐시 저장/읽기를 실행합니다.
이웃 셀이 서로 영향을 미치는지 확인하는 것뿐만 아니라
다른.
prime-0은 매우 큰 메모리를 단계별로 실행하여 8번 반복합니다.
모든 바이트에서 한 번에 한 비트씩 삭제되는 주요한 진전입니다.
그런 다음 모든 비트가 XNUMX으로 설정되어 있는지 확인하십시오.
prime-1은 매우 큰 메모리를 단계별로 실행하여 8번 반복합니다.
모든 바이트에서 한 번에 비트 단위로 최고의 진보를 설정합니다.
그런 다음 모든 비트가 XNUMX로 설정되어 있는지 확인하십시오.
prime-gray-0 매우 큰 프라임 스트라이드로 메모리를 통한 첫 번째 단계
모든 바이트에서 비트(그레이 코드 기준)만 삭제합니다.
다음으로 이를 반복하되 나머지 7비트를 지웁니다. 그런 다음 확인하십시오.
모든 비트가 XNUMX으로 설정되어 있는지 확인하세요.
prime-gray-1 매우 큰 프라임 스트라이드로 메모리를 통한 첫 번째 단계
모든 바이트의 비트(그레이 코드 기준)에만 설정합니다.
다음으로 이를 반복하되 나머지 7비트를 설정합니다. 그런 다음 확인하십시오.
모든 비트가 XNUMX로 설정되어 있는지 확인하세요.
rowhammer는 rowhammer 메모리를 사용하여 메모리 손상을 강제로 시도합니다.
스트레스 요인. 이는 메모리에서 두 개의 32비트 정수를 가져오고
두 주소에 대해 여러 번 캐시 플러시를 강제합니다.
이는 일부 하드웨어에서 비트 반전을 강제하는 것으로 알려져 있습니다.
특히 낮은 빈도의 메모리 새로 고침 주기에서는 더욱 그렇습니다.
메모리의 각 바이트에 대해 walk-0d, 각 데이터 라인을 살펴봅니다.
그것들을 낮게 설정하고 (다른 것들은 높게 설정됨) 확인하십시오.
쓰여진 가치가 예상대로라는 것입니다. 이것은 어떤 것이 있는지 확인합니다.
데이터 라인이 막혔습니다.
메모리의 각 바이트에 대해 walk-1d, 각 데이터 라인을 살펴봅니다.
그것들을 높게 설정하고(다른 것들은 낮게 설정함) 확인하십시오.
쓰여진 가치가 예상대로라는 것입니다. 이것은 어떤 것이 있는지 확인합니다.
데이터 라인이 막혔습니다.
지정된 메모리 매핑에서 walk-0a는 다음 범위를 통해 작업합니다.
주소 라인을 통해 특별히 선택된 주소
주소 줄이 낮게 붙어 있는지 확인하십시오. 이것이 가장 잘 작동합니다
그러나 물리적 메모리 주소 지정을 사용하면 이러한 작업을 수행할 수 있습니다.
가상 주소에도 가치가 있습니다.
지정된 메모리 매핑에서 walk-1a는 다음 범위를 통해 작업합니다.
주소 라인을 통해 특별히 선택된 주소
주소 줄이 높게 붙어 있는지 확인하세요. 이것이 가장 잘 작동합니다
그러나 물리적 메모리 주소 지정을 사용하면 이러한 작업을 수행할 수 있습니다.
가상 주소에도 가치가 있습니다.
write64는 보고당 32 x 64비트 쓰기를 사용하여 순차적으로 메모리를 씁니다.
고리. 각 루프는 하나의 보고 작업과 동일합니다. 이것
원시 메모리 쓰기를 실행합니다. 메모리 쓰기는
각 테스트 반복이 끝날 때 확인되지 않았습니다.
XNUMX-XNUMX 모든 메모리 비트를 XNUMX으로 설정한 다음 비트가 있는지 확인합니다.
제로가 아닙니다. 다음으로 모든 메모리 비트를 XNUMX로 설정하고 다음을 확인합니다.
어떤 비트도 하나가 아닙니다.

--vm-채우기
메모리 매핑을 위한 (기본) 페이지 테이블을 채웁니다. 이로 인해 교환이 스트레스를 받을 수 있습니다.
MAP_POPULATE를 지원하는 시스템에서만 사용할 수 있습니다(Linux 2.5.46부터).

--vm-rw N
다음을 사용하여 부모/자식과 메모리를 전송하는 N 작업자를 시작합니다.
process_vm_writev(2)과하면 process_vm_readv(2). 이 기능은 다음에서만 지원됩니다.
리눅스. --verify 옵션이 활성화된 경우에만 메모리 전송이 확인됩니다.

--vm-rw-ops N
N번의 메모리 읽기/쓰기 후에 vm-rw 작업자를 중지합니다.

--vm-rw-바이트 N
vm-rw 작업자당 mmap N바이트, 기본값은 16MB입니다. 크기를 지정할 수 있습니다.
접미사 b, k, m 또는 g를 사용하는 바이트, KBytes, MBytes 및 GBytes 단위.

--vm-스플라이스 N
사이에 복사하지 않고 파이프를 통해 메모리에서 /dev/null로 데이터를 이동합니다.
커널 주소 공간과 사용자 주소 공간 vmsplice(2)과하면 접착(삼). 이것
Linux에서만 사용할 수 있습니다.

--vm-스플라이스-ops N
N bogo vm-splice 작업 후에 중지합니다.

--vm-스플라이스-바이트 N
vmsplice 호출당 N바이트를 전송하며 기본값은 64K입니다. 크기를 지정할 수 있습니다.
접미사 b, k, m 또는 g를 사용하는 바이트, KBytes, MBytes 및 GBytes 단위.

--기다리다 N
두 명의 자식을 생성하는 N 작업자를 시작합니다. 하나는 회전한다 중지(2) 루프,
다른 하나는 계속해서 멈추고 첫 번째를 계속합니다. 제어 프로세스가 대기 중입니다.
다음을 사용하여 SIGCONT 전달로 재개되는 첫 번째 하위 항목 기다리다(2)과하면
기다려(2).

--대기 작업 N
N 보고 대기 작업 후에 중지합니다.

--wcs N
다양한 libc 와이드 문자열 기능을 실행하는 N 작업자를 시작합니다.
임의의 문자열.

--wcs-방법 wcsfunc
강조할 특정 libc 와이드 문자열 함수를 선택합니다. 사용 가능한 문자열
강조할 기능은 다음과 같습니다: all, wcscasecmp, wcscat, wcschr, wcscoll, wcscmp, wcscpy,
wcslen, wcsncasecmp, wcsncat, wcsncmp, wcsrchr 및 wcsxfrm. '모두' 방법은 다음과 같습니다.
기본값이며 모든 문자열 메서드를 실행합니다.

--wcs-ops N
N 보고 와이드 문자열 작업 후에 중지합니다.

--xattr N
확장된 속성의 배치를 생성, 업데이트 및 삭제하는 N 작업자를 시작합니다.
파일.

--xattr-ops N
N 보고 확장 속성 작업 후에 중지합니다.

-y N, --생산하다 N
호출하는 N명의 작업자를 시작합니다. sched_yield(2). 이 스트레스 요인은 적어도 2
CPU 실행당 하위 프로세스 쉴드_수율(2) 직원 수에 관계없이
지정되므로 항상 빠른 컨텍스트 전환이 보장됩니다.

--수율 작전 N
N 이후 항복 스트레스 작업자 중지 sched_yield(2) 보고 작업.

--영 N
N 작업자가 /dev/zero를 읽기 시작합니다.

--제로옵스 N
N /dev/zero bogo 읽기 작업 후에 제로 스트레스 작업자를 중지합니다.

--zlib N
zlib를 사용하여 N 작업자의 임의 데이터 압축 및 압축 해제를 시작합니다. 각 작업자
두 개의 프로세스가 있습니다. 하나는 임의의 데이터를 압축하여 다른 프로세스로 파이프하는 것입니다.
데이터의 압축을 푸는 것입니다. 이 스트레스 요인은 CPU, 캐시 및 메모리를 행사합니다.

--zlib-ops N
N개의 보고 압축 작업 후에 중지합니다. 각 보고 압축 작업은
가장 높은 압축 수준에서 64K의 무작위 데이터를 압축합니다.

--좀비 N
좀비 프로세스를 생성하는 N 작업자를 시작합니다. 그러면 신속하게
즉시 종료되고 좀비 상태에서 대기하는 기본 8192개 하위 프로세스
거두어들일 때까지. 최대 프로세스 수에 도달하면(또는 포크됨)
허용되는 최대 하위 수에 도달했기 때문에 실패함)
아이가 수확되고 선입 선출 방식으로 새로운 프로세스가 생성됩니다.
그런 다음 반복했습니다.

--좀비 작전 N
N보고 좀비 작업 후 좀비 스트레스 작업자를 중지하십시오.

--좀비-최대 N
N개의 좀비 프로세스를 생성해 보세요. 시스템에 따라 도달하지 못할 수도 있습니다.
한도는 N보다 작습니다.

사용 예


스트레스-ng --cpu 4 --io 2 --vm 1 --vm-bytes 1G --timeout 60초

다음을 사용하여 60개의 CPU 스트레스 요인, 4개의 IO 스트레스 요인 및 2개의 VM 스트레스 요인으로 1초 동안 실행됩니다.
1GB의 가상 메모리.

스트레스-ng --cpu 8 --cpu-ops 800000

8개의 CPU 스트레스 요인을 실행하고 800000번의 보고 작업 후에 중지됩니다.

stress-ng --순차 2 --시간 초과 2m --메트릭

모든 스트레스 요인에 대해 2개의 동시 인스턴스를 하나씩 순차적으로 실행합니다.
2분 정도 소요되며 마지막에 성능 지표로 요약됩니다.

스트레스-ng --cpu 4 --cpu-방법 fft --cpu-ops 10000 --metrics-brief

4개의 FFT CPU 스트레스 요인을 실행하고 10000번의 보고 작업 후에 중지하고 요약을 생성합니다.
FFT 결과에만 해당됩니다.

스트레스-ng --cpu 0 --cpu-방법 모두 -t 1h

사용 가능한 모든 CPU를 통해 작동하는 모든 온라인 CPU에서 CPU 스트레스 요인을 실행합니다.
1시간 동안 스트레스 요인.

스트레스-ng --all 4 --timeout 5m

4분 동안 모든 스트레스 요인의 5개 인스턴스를 실행합니다.

스트레스-ng --random 64

사용 가능한 모든 스트레스 요인 중에서 무작위로 선택된 64개의 스트레스 요인을 실행합니다.

스트레스-ng --cpu 64 --cpu-방법 모두 --verify -t 10m --metrics-brief

서로 다른 모든 CPU 스트레스 요인의 64개 인스턴스를 실행하고
계산은 마지막에 보고 작업 요약과 함께 10분 동안 정확합니다.

스트레스-ng --순차 0 -t 10m

인스턴스 수를 사용하여 10분 동안 모든 스트레스 요인을 하나씩 실행합니다.
각 스트레스 요인은 온라인 CPU 수와 일치합니다.

스트레스-ng --순차 8 --class io -t 5m --times

io 클래스의 모든 스트레스 요인을 각각 5분 동안 하나씩 실행합니다.
동시에 실행되는 각 스트레스 요인의 인스턴스 및 전체 시간 활용도 표시
실행이 끝나면 통계가 표시됩니다.

스트레스-ng --모두 0 --최대화 --공격적

모든 스트레스 요인(CPU당 각 인스턴스 1개)을 동시에 실행하고
설정(메모리 크기, 파일 할당 등)을 선택하고 가장 많은 것을 선택합니다.
까다롭고 공격적인 옵션.

스트레스-ng --random 32 -x 숫자, HDD, 키

무작위로 선택된 32개의 스트레스 요인을 실행하고 Numa, HDD 및 키 스트레스 요인을 제외합니다.

stress-ng --순차 4 --class vm --exclude bigheap,brk,stack

큰힙을 제외하고 VM 스트레스 요인의 4개 인스턴스를 차례로 실행합니다.
brk 및 스택 스트레스 요인

EXIT 지위


Status 상품 설명
0 성공.
1 오류; 잘못된 사용자 옵션 또는 Stress-NG의 치명적인 리소스 문제
스트레스 요인 하네스(예: 메모리 부족).
2 하나 이상의 스트레스 요인이 실패했습니다.
3 리소스 부족으로 인해 하나 이상의 스트레스 요인을 초기화하지 못했습니다.
예: ENOMEM(메모리 없음) 및 ENOSPC(파일 시스템에 공간 없음).

onworks.net 서비스를 사용하여 온라인으로 Stress-NG를 사용하세요.


무료 서버 및 워크스테이션

Windows 및 Linux 앱 다운로드

Linux 명령

Ad