10もないかも、と思いながら項目を書き出してみたら10以上余裕であってキリがないので10で収めた。いやあ、あるなあ。 仕事柄よくベンチマークを実行したりしてて色々と思うところが溜まっていたところ、以下のような記事を見掛けたのでなんか書こうと思った。ところでこの記事はベンチマークを実行するための準備作業がループを回して2時間かかるところの待ち時間に書かれている。 sfujiwara.hatenablog.com ISUCONといえば多少縁があるコンテストで、文中でISUCON5のことについても言及されているので、それも含めて。 自分が業務でいじっているのは "Webアプリケーション" というとちょっと違うんじゃないのというものばかりだが、いやー、最近なんでもHTTPで外部APIを作るからベンチマークのコツとしては大体変わんなかったりするよね。 なおこの記事でベンチマークはどのようなものかとか
これはアカツキとディライトワークスが共同で主催している “FGOなど大規模ゲームの課題から学ぶゲームサーバ・インフラ勉強会” での LT 発表資料です。こちらの資料に軽く補足を入れながら話をしていきます。 時雨堂では FGO の検証に利用するための負荷試験ツールを提供しています。 先日、大きめのメンテナンスが無事終わり、ほっとしています。 さて、メンテが無事終わって、FGO の中の人から以下のようなありがたいメッセージをもらいました。 負荷試験ツールなくしては今回の改修はなしえなかったと思いますので本当にありがとうございました…。その負荷試験ツールがどんな仕組みで、どんなことを実現しているのかを書いていきます。時雨堂が負荷試験ツールで実現したことのみを書きます。 主に技術的な話というよりはこんなことやったよがほとんどです。 本番データを利用した負荷試験利用されている負荷試験ツールは、時雨堂
業務中にそこそこ大きなスキーマ変更をすることになり、実際パフォーマンスに変化があるかベンチマークを取る必要が出てきました。 jmeterとかでごりょごりょとかしないとなのかーとか思ったのですが、 今回はスキーマ変更のみなので、単純にDBのみの測定でよいので、なんかいいツールはないかと探したところ、 mysqlslapなるものがあるようなので試してみました 4.5.7 mysqlslap — Load Emulation Client mysqlslapはMySQLサーバのクライアント負荷をエミュレートし、各ステージのタイミングを報告する診断プログラムです。サーバにたいして複数のクライアントがアクセスしているかのように作動します。mysqlslapはMySQL 5.1.4.から提供されています。 さっそく試してみーる 使い方 mysqlがインストールされていれば標準でmysqlslapもイン
最近会社のエンジニアでも Rust を使っている方がいてモチベーションさらに上がってきました。 近くで話せる人がいるというのはいいですね。といっても大阪と東京で離れてはいますが。 で、本題ですが、 boom-rust というabライクなツールを書いてみました。 もともと Python実装のboom と Go実装 があり、Rustで実装したらでどれくらいパフォーマンス違うのかなというのを比較できるかなと思い書いてみた次第です。 モチベーション 今自分の中でRustについていろいろ調べたり知見ためているところで、 小さなツールとかからプロダクション環境に投入していきたいなと考えてるところです。 その知見ためる一環として実際のツールなりライブラリをいろいろ書いていこうというのがあり、 boom-rustもそういうモチベーションで書きました。 今そういったツールは主にGoで書いてたりするので、 特
ウソみたいな本当の話。Ruby でファミコンエミュレータを書いてみました。 気になる速度ですが、自分の環境では 20 fps ちょっと出ます。ファミコンは 60 fps なので、実速の 1/3 です。Ruby3x3 (Ruby 3 は Ruby 2 の 3 倍速い)という matz の宣言が実現すれば、実速が達成されることになりますね! 試してみたい人はこんなふうに実行してください。 $ gem install ffi $ git clone http://github.com/mame/optcarrot.git $ cd optcarrot $ bin/optcarrot examples/Lan_Master.nesSDL2 か SFML が適切にインストールされている必要があります。Debian/Ubuntu なら apt-get install libsdl2-dev で。 Ru
11. • MySQL 5.7.9 and MariaDB10.1.8 • File System • PCI-E SSD: xfs (discard,nobarrier) • SAS HDD: ext4 (nobarrier) • my.cnf • PCI-E SSDは以下を無効化 • innodb_flush_neighbors • innodb_read_ahead_threshold 12. • my.cnfその他 • innodb_io_capacity{,_max}は適宜環境に応 じて設定しています。 • innodb_log_file_size = 1G • innodb_log_file_in_group = 16 • innodb_buffer_pool_size = 40G • innodb_buffer_pool_instances = 20 13. • NUMA関連 •
速度重要なプログラムを書いていると、継続的にベンチマークを記録し、いつでも参照可能にしておくことは重要。だけど、そのためにExcelを起動するのは面倒だし、だいたい、ベンチマークを測定するためのコマンドを覚えていられないので、benchartというコマンドを作った。 やってくれることは、以下の3つです。 ベンチマーク結果を保存 ベンチマーク測定に使用したコマンドを保存し、再実行 ベンチマーク結果をグラフにして表示 以下、使用イメージ。 たとえば、qrintfのベンチマークを取ることを考えてみると、examples/ipv4addr.cをコンパイルして実行し、time(1)の値を記録したい。 $ bin/qrintf gcc -O2 examples/ipv4addr.c && time ./a.out 1234567890 result: 73.150.2.210 real 0m0.176
巷でlibjpeg-turboというやつが速いというのを聞いたので試してみる。 今回はaptで入れた以下のモジュールでベンチマークしてみた。いちおうサーバはさくらのVPSでOSはUbuntu 10.04 LTSです。 Image::Magick 6.5.7 Imager 0.72 GD 2.39 Image::Imlib2 2.02 ふつうにaptで入れる。 sudo aptitude install perlmagick libimager-perl libgd-gd2-perl libimage-imlib2-perl cpanm Image::Resizelibjpeg-turboを入れる。 wget http://downloads.sourceforge.net/project/libjpeg-turbo/1.0.0/libjpeg-turbo_1.0.0_amd64.deb s
RubyKaigi 2014、楽しかったし、学びがあって行って良かったなぁと思いました(小並感すぎる)。 淡々とメモしておくよ benchmark-ips ベンチマークの高機能版。ウォームアップとして何回か走らせてから実行したり、5秒とか100msで何回実行できるかとかを計測できるっぽい synvert フォーマッターらしい。Rubyのバージョンがあがってシンタックスを変更したほうがよかったりする場合に変更してくれる Railsバージョンもあるっぽいけど、このセッション聞いてなかったので詳しくはわからない(あとで調べる) peek-performance_bar View や SQL等でかかった時間を表示するプロファイラ rack-mini-profilerと似てる気がするけど、こっちも試してみたい stackprof Ruby 2.1で追加された rb_profile_frames を使
benchmark(message = "Benchmarking", options = {}, &block) Link Allows you to measure the execution time of a block in a template and records the result to the log. Wrap this block around expensive operations or possible bottlenecks to get a time reading for the operation. For example, let’s say you thought your file processing method was taking too long; you could wrap it in a benchmark block. <%
How much does your framework choice affect performance? The answer may surprise you. Authors’ Note: We’re using the word “framework” loosely to refer to platforms, micro-frameworks, and full-stack frameworks. We have our own personal favorites among these frameworks, but we’ve tried our best to give each a fair shot. Show me the winners! We know you’re curious (we were too!) so here is a chart of
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く