GoはPythonのようなLLと比べると実行速度は速いのですが、GCは特別速いわけではないので、相対的にGCがパフォーマンスに与える影響は大きくなります。 また、Java に比べると、一時オブジェクトなどのために頻繁にヒープアロケーションを行うとGCの停止時間が長くなりがちですが、一方でヒープアロケーションを避けたプログラミングがしやすい言語でもあります。 MySQL ドライバのような低レイヤーのライブラリを作る場合、アプリケーション側の性能要件を勝手に決めることができないので、現実的な範囲でアロケーションを減らす努力をするべきです。 ということで、前回の記事 で紹介したプレースホルダ置換を実装するにあたって経験した、アロケーションに気を使ったプログラミングについて、チューニングする手順やコード上のテクニックを紹介したいと思います。 1. まずは正しく動くものを作る go-sql-driv
メッセージキュー について書いている連載の続きとして、今週末は分散型メッセージングを実行するための様々なライブラリを詳細に分析していきたいと思います。今回の分析では、APIの特性、デプロイメントやメンテナンスの容易さ、そしてパフォーマンスの質を含めて2、3種類の異なる側面に着目します。メッセージキューは2つのグループに分類できます。ブローカレス(brokerless)とブローカード(brokered)です。ブローカードなキューはエンドポイント間に何かしらのサーバを挟んでいますが、ブローカレスなメッセージキューは、メッセージ送信の際でも間に何も挾まないP2Pです。 今回分析するのは以下のシステムです。 ブローカレス nanomsg ZeroMQ ブローカード ActiveMQ gnatsd Kafka Kestrel NATS NSQ RabbitMQ Redis 取り掛かりとして、ほぼ間違
collectd-6.0.0.rc3 collectd-5.12.0 Start | Download | Documentation | Contact collectd is a daemon collecting system and application performance metrics periodically and provides mechanisms to store the values in a variety of ways, for example in RRD files. What does collectd do? collectd gathers metrics from various sources, e.g. the operating system, applications, logfiles and external devices,
(おおきいの - http://storage.osdev.info/pub/idmjt/diaryimage/1405/neta140509l1.png ) ETW(Event Tracing for Windows)を使用するとDTraceやftraceのようなスケジューリングトレースを(比較的低いオーバヘッドで)取得することができる。ETWのログビューアとしてはWPA(Windows Performance Analyzer)が提供されているので、直ぐに内容を検証することができる。 ↑では、BoehmGCのparallel markを有効にしたnmoshでR6RS test suiteを実行し、GCが動作したところをズームしている。ポインタが指している部分がメインスレッド(TIDが一番若い)で、残りがBoehmGCが起動したGCスレッドとなる。実際には、メインスレッドもGC動作を行う
static, benchmarking, tuning: sar, perf-tools, bcc/BPF: bpftrace, BPF book: Images license: creative commons Attribution-ShareAlike 4.0. This page links to various Linux performance material I've created, including the tools maps on the right. These use a large font size to suit slide decks. You can also print them out for your office wall. They show: Linux observability tools, Linux static perfor
1. Building a Single-Box 100 Gbps Software Router Sangjin Han, Keon Jang, KyoungSoo Park, Sue Moon KAIST In IEEE Workshop on Local and Metropolitan Area Networks, 2010 id:y_uuki / @y_uuk1 1 2. PacketShader: a GPU-accelerated Software Router Sangjin Han, Keon Jang, KyoungSoo Park and Sue Moon. In proceedings of ACM SIGCOMM 2010, Delhi, India. September 2010 SSLShader: Cheap SSL Acceleration with Co
DynamoRIO is a runtime code manipulation system that supports code transformations on any part of a program, while it executes. DynamoRIO exports an interface for building dynamic tools for a wide variety of uses: program analysis and understanding, profiling, instrumentation, optimization, translation, etc. Unlike many dynamic tool systems, DynamoRIO is not limited to insertion of callouts/trampo
A site explaining SQL indexing to developers—no crap about administration. SQL indexing is the most effective tuning method—yet it is often neglected during development. Use The Index, Luke explains SQL indexing from grounds up and doesn’t stop at ORM tools like Hibernate. Use The Index, Luke is the free web-edition of my book SQL Performance Explained (from Є9.95). Be sure to subscribe my free ne
Linux, in the form of uClinux, runs on platforms like STmicroelectronics' STM32. Vladimir Khusainov, co-founder and Director of Engineering at Emcraft Systems, talks about how this works. Download this article in .PDF format Linux, in the form of uClinux, can run on platforms 32-bit platforms like microcontrollers. Here we talk about how this is possible and how it works. Table of Contents Issue a
The document discusses Linux performance analysis and tools, focusing on methodologies to identify and resolve performance bottlenecks in operating systems and applications. It emphasizes the importance of understanding system limits to optimize spend and build scalable architectures, while introducing various tools for analysis such as iostat, vmstat, and top. Brendan Gregg, a lead performance en
というわけで、JPOUG> SET EVENTS 20120721 | Japan Oracle User Groupに参加して発表をしてきました。通常の勉強会と比べて発表者と聴講者の一体感を増すための工夫がなされていて、とても良かったと思います。有限コーヒーかと思ったら無限ビールだったのも驚きです。JPOUGの運営メンバのみなさま、会場を提供してくださった日本オラクルのみなさま、当日お越しいただいたみなさま、どうもありがとうございました。 私のセッションでは、データベース負荷テストツールまとめ(5)と題して過去4回分のまとめと自作ツールの紹介をさせていただきました。JdbcRunnerはOracle Database、MySQLとPostgreSQLの間でTPC-BとTPC-Cの性能比較ができる唯一のオープンソースソフトウェアですので、いろいろ試してみていただければと思います。試した結果
Python なサービス みんな大好き Dropbox のスケールとかメモ。以下のページ辺りからピックアップ。Parted? みたいなので、続編がでたら追記するかも。 Scaling lessons learned at Dropbox, part 1 (comment) Dropbox - Startup Lessons Learned (slideshare) Dropbox -Yコンビネーターが生んだスタートアップの軌跡と未来 - スケール関係ないですが、2006 年当時はオンラインストレージサービスがいっぱいあったようで、VC から資金調達したときのやり取りがおもしろい VC "クラウドストレージサービスなんて腐るほどある" Drew "なにか使ってるのありますか?" VC "NO" Drew "..." 完璧で、スケーラブルで、クロスプラットフォームなクラウドストレージ!当時、プ
See related links to what you are looking for.
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く