IO 테스트 정리
Perf
Performance Counter for Linux
리눅스 시스템 성능을 프로파일링 하는 도구
특정 프로그램을 프로파일 하는것도 가능하며 어떤 함수가 얼마나 불리는지도 파악 가능
perf stat [명령어]
해당 명령어를 실행하여 몇번이나 어떤 이벤트를 발생시키는지 확인 가능
fio
리눅스판 CrystalDiskInfo 같은 느낌
설치 방법
최신버전은 gcc4.9 버전 이상을 요구한다..
근데 CentOS 7에서 이거 깔려면 너무 많은것을 깔아야 하기에 그냥 구버전 사용하는 것을 추천
wget http://brick.kernel.dk/snaps/fio-2.0.14.tar.gz
./configure
로 적절히 설정후
make install
인스톨
사용 방법
fio --name fio_test --direct=1 --rw=randread --bs=4k --size=1G --numjobs=16 --time_based --runtime=90 --group_reporting --norandommap
일단은 한방 명령어 ㅎ
--name fio_test
이번 테스트는 fio_test라고 하겠음
--name direct=1
Direct I/O로 진행 하겠음, 0이면 Buffered I/O로 진행
--rw=randread
랜덤 읽기 테스트로 하겠음, read / write / randread /randwrite 4가지 테스트 존재
--bs=4k
블록 크기는 4k로 하겠음
--size=1G
파일 하나 크기는 1G로 하겠음
--numjobs=16
파일을 16개 만들겠음
--runtime=90
90초동안 테스트 진행 하겠음
--group_reporting
하나의 그룹으로 결과 출력하겠음
--norandommap
이전에 수행한 I/O의 위치를 고려하지 않겠음.. 같은 곳을 읽을 수도 있다는 뜻인듯
Bonnie ++
HDD및 파일시스템의 성능 체크용 프로그램
사용 방법
bonnie++ -d /home -s 2048:1024 -n 100 -f -r 1024 -u root:root > BenchResult.txt
-d /home
/home에 테스트 파일을 생성하겠음
-s 2048:1024
생성 사이즈는 2048MB이며 chunk-size는 1024KB를 사용한다 보통 메모리 사용량의 2배로 설정
-n 100
100*1024 개의 파일을 생성한다
-f
character I/O 테스트 생략
-r 1024
메모리는 1024MB 사용
-u root:root
root권한을 사용함
dd
Disk Dump
블록 단위로 파일을 복사하거나 파일 변환을 할 수 있는 명령어
사용 방법
dd if=/dev/zero bs=1024 count=1000000 of=file_1GB
dd if=file_1GB of=/dev/null bs=1024
1024바이트 블록에 대한 순차 시스템 읽기/쓰기 성능 분석
위의 명령어가 1GB짜리 파일을 file_1GB라는 이름으로 생성하는 명령어
아래가 file_1GB 파일을 1024단위로 읽는것