サーバ選定のためのパフォーマンス検証作業記録 | きのあ将棋
これはサーバ選定のためのパフォーマンス検証作業記録を、
公開のために、htmlファイルにいい加減に簡単にまとめた資料です。
親切な資料ではないけれど「コンピュータ将棋・囲碁関係者がわかればそれでおk」という精神でまとめてます。
パフォーマンス検証作業記録.txt
---------------------------------------------------- クラウドサーバの調査 ---------------------------------------------------- 2012/01/14 検証 2012/01/15 検証結果を保存 2012/02/15 公開するため、一部整形 ---------------------------------------------------- ローカルテスト用マシン 2012/01/14 ---------------------------------------------------- Intel(R) Xeon(TM) CPU 1700MHz time ./huka val=41760 val=44636 val=48510 val=44572 val=41760 val=50632 val=48510 val=47656 val=45936 val=49556 real 1m6.133s user 1m6.130s sys 0m0.000s time ./huka val=41760 val=44636 val=48510 val=44572 val=41760 val=50632 val=48510 val=47656 val=45936 val=49556 real 1m6.126s user 1m6.130s sys 0m0.000s time ./huka val=41760 val=44636 val=48510 val=44572 val=41760 val=50632 val=48510 val=47656 val=45936 val=49556 real 1m6.125s user 1m6.120s sys 0m0.000s ---------------------------------------------------- さくらクラウドマシン 2012/01/14 ---------------------------------------------------- time ./huka val=41760 val=44636 val=48510 val=44572 val=41760 val=50632 val=48510 val=47656 val=45936 val=49556 real 0m11.994s user 0m11.981s sys 0m0.004s time ./huka val=41760 val=44636 val=48510 val=44572 val=41760 val=50632 val=48510 val=47656 val=45936 val=49556 real 0m11.940s user 0m11.936s sys 0m0.002s time ./huka val=41760 val=44636 val=48510 val=44572 val=41760 val=50632 val=48510 val=47656 val=45936 val=49556 real 0m11.984s user 0m11.979s sys 0m0.002s ---------------------------------------------------- さくらクラウドマシン (リコンパイル 2012/01/14 ---------------------------------------------------- //大幅に遅くなっているのは、コンパイラのせい?? time ./huka val=41760 val=44636 val=48510 val=44572 val=41760 val=50632 val=48510 val=47656 val=45936 val=49556 real 0m15.187s user 0m15.180s sys 0m0.003s time ./huka val=41760 val=44636 val=48510 val=44572 val=41760 val=50632 val=48510 val=47656 val=45936 val=49556 real 0m15.120s user 0m15.110s sys 0m0.005s time ./huka val=41760 val=44636 val=48510 val=44572 val=41760 val=50632 val=48510 val=47656 val=45936 val=49556 real 0m15.147s user 0m15.142s sys 0m0.002s ---------------------------------------------------- Niftyクラウドマシン 2012/01/14 ---------------------------------------------------- //いまのところ最速 time ./huka val=41760 val=44636 val=48510 val=44572 val=41760 val=50632 val=48510 val=47656 val=45936 val=49556 real 0m11.227s user 0m11.006s sys 0m0.006s time ./huka val=41760 val=44636 val=48510 val=44572 val=41760 val=50632 val=48510 val=47656 val=45936 val=49556 real 0m11.009s user 0m11.005s sys 0m0.005s time ./huka val=41760 val=44636 val=48510 val=44572 val=41760 val=50632 val=48510 val=47656 val=45936 val=49556 real 0m11.008s user 0m11.007s sys 0m0.001s ---------------------------------------------------- Niftyクラウドマシン (リコンパイル 2012/01/14 ---------------------------------------------------- //いまのところ最速 time ./huka val=41760 val=44636 val=48510 val=44572 val=41760 val=50632 val=48510 val=47656 val=45936 val=49556 real 0m11.015s user 0m11.015s sys 0m0.003s time ./huka val=41760 val=44636 val=48510 val=44572 val=41760 val=50632 val=48510 val=47656 val=45936 val=49556 real 0m11.068s user 0m11.066s sys 0m0.004s time ./huka val=41760 val=44636 val=48510 val=44572 val=41760 val=50632 val=48510 val=47656 val=45936 val=49556 real 0m11.013s user 0m11.010s sys 0m0.006s ---------------------------------------------------- CPI CloudCore VPSマシン 2012/02/01 ---------------------------------------------------- time ./huka val=41760 val=44636 val=48510 val=44572 val=41760 val=50632 val=48510 val=47656 val=45936 val=49556 real 0m14.903s user 0m14.892s sys 0m0.001s time ./huka val=41760 val=44636 val=48510 val=44572 val=41760 val=50632 val=48510 val=47656 val=45936 val=49556 real 0m14.891s user 0m14.874s sys 0m0.008s time ./huka val=41760 val=44636 val=48510 val=44572 val=41760 val=50632 val=48510 val=47656 val=45936 val=49556 real 0m14.885s user 0m14.866s sys 0m0.010s ---------------------------------------------------- CPI CloudCore VPSマシン (リコンパイル 2012/02/01 ---------------------------------------------------- yum update yum install gcc* yum install make time ./huka val=41760 val=44636 val=48510 val=44572 val=41760 val=50632 val=48510 val=47656 val=45936 val=49556 real 0m14.908s user 0m14.895s sys 0m0.005s time ./huka val=41760 val=44636 val=48510 val=44572 val=41760 val=50632 val=48510 val=47656 val=45936 val=49556 real 0m14.891s user 0m14.880s sys 0m0.008s time ./huka val=41760 val=44636 val=48510 val=44572 val=41760 val=50632 val=48510 val=47656 val=45936 val=49556 real 0m14.877s user 0m14.868s sys 0m0.005s ---------------------------------------------------- さくらのVPS 4G(4コア) 2012/02/02 ---------------------------------------------------- time ./huka val=41760 val=44636 val=48510 val=44572 val=41760 val=50632 val=48510 val=47656 val=45936 val=49556 real 0m16.825s user 0m16.819s sys 0m0.002s time ./huka val=41760 val=44636 val=48510 val=44572 val=41760 val=50632 val=48510 val=47656 val=45936 val=49556 real 0m17.359s user 0m17.340s sys 0m0.010s time ./huka val=41760 val=44636 val=48510 val=44572 val=41760 val=50632 val=48510 val=47656 val=45936 val=49556 real 0m16.485s user 0m16.474s sys 0m0.005s ---------------------------------------------------- さくらのVPS 4G(4コア) (リコンパイル 2012/02/02 ---------------------------------------------------- yum update yum install gcc* yum install make time ./huka val=41760 val=44636 val=48510 val=44572 val=41760 val=50632 val=48510 val=47656 val=45936 val=49556 real 0m16.490s user 0m16.478s sys 0m0.008s time ./huka val=41760 val=44636 val=48510 val=44572 val=41760 val=50632 val=48510 val=47656 val=45936 val=49556 real 0m15.920s user 0m15.916s sys 0m0.001s time ./huka val=41760 val=44636 val=48510 val=44572 val=41760 val=50632 val=48510 val=47656 val=45936 val=49556 real 0m16.282s user 0m16.275s sys 0m0.004s ---------------------------------------------------- さくらのVPS 4G(4コア) (リコンパイル、4並列実行 2012/02/02 ---------------------------------------------------- ./heiretu4.sh time ./huka | cat >log1.txt & time ./huka | cat >log2.txt & time ./huka | cat >log3.txt & time ./huka | cat >log4.txt & ./heiretu4.sh real 0m15.969s user 0m15.963s sys 0m0.006s real 0m16.140s user 0m16.127s sys 0m0.009s real 0m16.792s user 0m16.784s sys 0m0.002s real 0m16.879s user 0m16.845s sys 0m0.003s ./heiretu4.sh real 0m16.047s user 0m16.034s sys 0m0.009s real 0m16.062s user 0m16.052s sys 0m0.004s real 0m16.737s user 0m16.732s sys 0m0.003s real 0m16.817s user 0m16.814s sys 0m0.000s ./heiretu4.sh real 0m15.993s user 0m15.982s sys 0m0.003s real 0m16.274s user 0m16.270s sys 0m0.003s real 0m16.678s user 0m16.670s sys 0m0.003s real 0m16.922s user 0m16.907s sys 0m0.008s ---------------------------------------------------- さくらのVPS 4G(4コア) (リコンパイル、8並列実行 2012/02/02 ---------------------------------------------------- ./heiretu8.sh time ./huka | cat >log1.txt & time ./huka | cat >log2.txt & time ./huka | cat >log3.txt & time ./huka | cat >log4.txt & time ./huka | cat >log5.txt & time ./huka | cat >log6.txt & time ./huka | cat >log7.txt & time ./huka | cat >log8.txt & ./heiretu8.sh real 0m31.632s user 0m16.023s sys 0m0.001s real 0m31.900s user 0m15.989s sys 0m0.001s real 0m32.630s user 0m16.697s sys 0m0.002s real 0m32.859s user 0m16.526s sys 0m0.003s real 0m32.665s user 0m16.671s sys 0m0.003s real 0m32.882s user 0m16.578s sys 0m0.010s real 0m32.980s user 0m16.606s sys 0m0.014s real 0m33.013s user 0m16.589s sys 0m0.004s ./heiretu8.sh real 0m32.084s user 0m16.078s sys 0m0.001s real 0m32.169s user 0m16.083s sys 0m0.004s real 0m32.186s user 0m16.142s sys 0m0.012s real 0m32.298s user 0m16.136s sys 0m0.005s real 0m32.792s user 0m16.667s sys 0m0.004s real 0m32.821s user 0m16.633s sys 0m0.000s real 0m32.846s user 0m16.832s sys 0m0.005s real 0m32.951s user 0m16.777s sys 0m0.003s ./heiretu8.sh real 0m31.604s user 0m15.896s sys 0m0.003s real 0m31.744s user 0m15.884s sys 0m0.002s real 0m32.393s user 0m16.191s sys 0m0.042s real 0m32.502s user 0m16.195s sys 0m0.040s real 0m32.624s user 0m16.775s sys 0m0.003s real 0m32.726s user 0m16.818s sys 0m0.003s real 0m32.982s user 0m16.756s sys 0m0.000s real 0m33.092s user 0m16.783s sys 0m0.002s
huka.c
負荷検証に使った、いい加減気味なプログラムソース。
以下だけ、気を使った。
・小数点以下を使ってないコード。
・検証環境準備に失敗したことがわかるように、printfで計算値を定期的に出力した。
#include#include #include void main() { int i, q, val; val = 0; for( i = 0; i < 10; i++ ) { val += i; for( q = 0; q < 200000000; q++ ) { val++; val += (val*val +1)%10000; val--; } printf( "val=%d\n", val ); } }
makefile
コンパイルしたときのメイクファイル。
いつも使うmakefileの設定を転用。
CC=gcc CPPFLAGS= CFLAGS=-O2 -fomit-frame-pointer -finline-functions -Wall -lstdc++ #CFLAGS=-Wall -pg LIBS= -O2 -fomit-frame-pointer -finline-functions -lstdc++ #LIBS= -pg INCLUDES= OBJS= huka.o all : huka huka : $(OBJS) $(CC) $(LIBS) -o $@ $? rm -f $(OBJS) $(OBJS) : .c.o : $(CC) $(CPPFLAGS) $(CFLAGS) -c $< clean : rm -f $(OBJS)
備忘録メモ.txt
それぞれのサーバでリコンパイル前の huka実行バイナリは、
ローカルテスト用マシン(Linux Ubuntu バージョン秘密 -server-i386)にて、 2012/01/14に作成した。
コンパイルするときに、-lstdc++のワーニングを出していることがあった。
makefileの -lstdc++は、とってコンパイルするべきだったかもしれない。
さくらクラウドはコストパフォーマンスが高いけど、データ破損の重要な不具合が発生していた。安定するまで、しばらく様子見。
参考 http://blog.cles.jp/item/4688
niftyクラウドは、比較的早めにクラウドサービスを提供して高機能だし、安定動作に安心感があり性能が高いが、値段がかなり高い。
CPIのサービスは、よさげだけど、発展途上なかんじ。
2012/02/15 :作成 Qinoa ...備忘録としてメモ
資料の履歴
2012/02/15 :作成、編集(作業メモを公開のためにまとめた。)
2015/07/31 :サイト全般のデザイン調整を受けた微修正。