본문 바로가기

5. IT 이야기/5.1.모바일

라즈베리파이 성능 측정.

그냥 심심해서 가지고 있던 라즈베리파이의 성능을 한번 측정해 보았습니다.


제가 가진 라즈베리파이는 초기모델이며,

LAN포트, USB2포트 가 달려있습니다.

RAM은 256M 입니다.


기본적으로 라즈베리안이 설치되어 있으며,

중간 단계의 오버클럭으로 설정한 상황입니다.

즉, cpu가 700Mhz -> 900Mhz로 변경된 상황입니다.


측정에 앞서 x86 과 얼마나 차이가 나는지 확인해 보기 위해

리눅스에서 사용할수 있는 밴치마크 프로그램을 찾아보니..

sysbench라는 프로그램을 알게되었고, 해당 프로그램을 이용하여 테스트 하였습니다.

참고로 sysbench 버전은 0.4.12 입니다.

apt-get을 통해 쉽게 설치가능합니다.


 $ sysbench --test=cpu --cpu-max-prime=10000 run

sysbench 0.4.12:  multi-threaded system evaluation benchmark


Running the test with following options:

Number of threads: 1


Doing CPU performance benchmark


Threads started!

Done.


Maximum prime number checked in CPU test: 10000



Test execution summary:

    total time:                          391.1192s

    total number of events:              10000

    total time taken by event execution: 391.0715

    per-request statistics:

         min:                                 38.64ms

         avg:                                 39.11ms

         max:                                 91.28ms

         approx.  95 percentile:              40.42ms


Threads fairness:

    events (avg/stddev):           10000.0000/0.00

    execution time (avg/stddev):   391.0715/0.00



결과입니다. 391초가 나왔네요.. 흑, 결과가 하도 안나와서 중간에 따운된줄 알았습니다.


비교를 위해 제가 가진 PC중 가장 느린 모델을 찾았습니다.

인텔 셀러론 1037U cpu를 가진 제품이 있어 테스트 해보았습니다



~$ sysbench --test=cpu --cpu-max-prime=10000 run

sysbench 0.4.12:  multi-threaded system evaluation benchmark


Running the test with following options:

Number of threads: 1


Doing CPU performance benchmark


Threads started!

Done.


Maximum prime number checked in CPU test: 10000



Test execution summary:

    total time:                          18.0547s

    total number of events:              10000

    total time taken by event execution: 18.0533

    per-request statistics:

         min:                                  1.80ms

         avg:                                  1.81ms

         max:                                  4.26ms

         approx.  95 percentile:               1.81ms


Threads fairness:

    events (avg/stddev):           10000.0000/0.00

    execution time (avg/stddev):   18.0533/0.00


~$ 

헉. 18초 나왔습니다... 

대략 20배 정도의 cpu 성능차이가 나는군요..ㅠㅠ


제가 테스트할수 있는 좀 좋은 성능을 가진 cpu가 인텔 제온 e3-1220  v2 가 달린 녀셕이 있어 한번 동일하게 테스트 하여 보았습니다.


# sysbench --test=cpu --cpu-max-prime=10000 run

sysbench 0.4.12:  multi-threaded system evaluation benchmark


Running the test with following options:

Number of threads: 1


Doing CPU performance benchmark


Threads started!

Done.


Maximum prime number checked in CPU test: 10000



Test execution summary:

    total time:                          10.4521s

    total number of events:              10000

    total time taken by event execution: 10.4513

    per-request statistics:

         min:                                  1.04ms

         avg:                                  1.05ms

         max:                                  2.08ms

         approx.  95 percentile:               1.05ms


Threads fairness:

    events (avg/stddev):           10000.0000/0.00

    execution time (avg/stddev):   10.4513/0.00


#

10.4초가 나왔군요.. 1037u보다 약 80% 차이가 나는군요..


http://www.cpubenchmark.net/ 에서의 cpu 성능은 아래와 같았습니다.


모델

점수 

 링크

1037U 

1737

http://www.cpubenchmark.net/cpu.php?cpu=Intel+Celeron+1037U+%40+1.80GHz 

 e3-1220 v2

6503 

http://www.cpubenchmark.net/cpu.php?cpu=Intel+Xeon+E3-1220+V2+%40+3.10GHz 


두모델간의 차이도 어마어마하군요.. 위의 sysbench는 단일 thread 옵션 테스트이므로 참고만 하시면 되겠습니다.


결론.

라즈베리파이는 싱글 코어 ARM v7 기반입니다.

즉, x86과 클럭차이는 얼마 안나는것 같아도 성능 차이는 어마어마 하네요.

cpu만 측정해 본결과가 이정도 이고, IO도 엄청나게 떨어집니다. (머 당연히 hdd,나 SSD의 속도와 SD카드의 속도차이도 무시못할 수준이니까요)


간단히 개인용 서버로 속도와 별 무관한 작업을 하는건 크게 문제가 없을듯하나, 다수의 사용자를 대상으로한 서버로 서비스하긴 좀 무리가 있지 않을까 하는 생각이 들더군요..

이걸 어디다 써야할지.. 고민좀 더 해봐야겠습니다.