タグ

performanceに関するinventのブックマーク (10)

  • Writing Fast Ruby

    Originally presented at Baruco 2014. Updated for RubyConf Portugal 2014. Video here: https://www.youtube.com/watch?v=fGFM_UrSp70.

    Writing Fast Ruby
  • Writing Fast Rubyというスライドが良い | mah365

    ちょっとしたコードの書き方でパフォーマンスが変わることがあります。リーダビリティを重視する向きからすれば小手先のテクニックに映るかも知れないのですが、リーダビリティを維持しながらちゃんとしたパフォーマンスを出すためにも、テクニックを知ることは大事なことだと思うのです。 結構違うもんですなー というわけで、そんなテクニックをまとめたスライドがWriting Fast Ruby。見ていて参考になったのでメモ。 たとえば引数に&blockをとってcallするよりも、yieldの方が5倍速い、とか、 def slow(&block) block.call end def fast yield end mapにブロックを渡すよりも、シンボルを渡す方が20%速い、とか (1..100).map {|i| i.to_s} (1..100).map(&:to_s) mapしてからflattenを呼び出すよ

    Writing Fast Rubyというスライドが良い | mah365
  • Androidにおけるenum利用に関するGoogleの公式見解と考察 - Qiita

    Androidにおけるenum利用について度々話題に登る今日このごろですが、そんな中GoogleがYoutubeでenumのパフォーマンスに関する動画を公開しました。動画はこちら です。 Androidにおけるenumのパフォーマンス問題についてあまり詳しくなかったので、動画を観てみました。 Googleはenumの何がパフォーマンスとして問題としているのか Android OSはアプリケーションを実行する時に、Application Heap領域を確保します。このメモリ内にアプリの実行に関わるdex(Dalvik Executable) fileがロードされ、適宜実行されるわけです。 例えば2556bytesのdex fileがロードされるソースコードがあるとします。 これに対し3つのstaticなintを生成すると、2680bytes(+124bytes)に増加します。 public

    Androidにおけるenum利用に関するGoogleの公式見解と考察 - Qiita
  • Railsパフォーマンス基本のキ

    Railsのパフォーマンスについてよくある問題とそれに対して戦いを挑むために必要なもの。

    Railsパフォーマンス基本のキ
  • MySQLのEXPLAINを徹底解説!!

    以前、MySQLを高速化する10の方法という投稿で「EXPLAINの見方についてはいずれ解説しようと思う」と書いてしまったので、今日はその公約?を果たそうと思う。 MySQLのチューニングで最も大切なのは、クエリとスキーマの最適化である。スキーマの設計は一度決めてしまうとそのテーブルを利用する全てのクエリに影響してしまうためなかなか変更することは出来ないが、クエリはそのクエリだけを書き直せば良いので変更の敷居は低い。そして遅いクエリをなくすことは、性能を大幅に向上させるための最も有効な手段である。従って、アプリケーションの性能を向上させたいなら、まず最初にクエリのチューニングを検討するべきなのである。 最適化するべきクエリはスロークエリログやクエリアナライザで見付けられるが、ではそのようなクエリが見つかった場合にはどのように最適化すればいいのか?そのためにはまず現在どのようにクエリが実行さ

    MySQLのEXPLAINを徹底解説!!
  • 30分でできる!Webサイトを高速化する6大原則 (1/4)

    Webサイトを制作するとき、「パフォーマンス」を気にしたことがあるだろうか? もしまったく気にしたことがないなら、気をつけた方がいい。閲覧に時間のかかる“遅いWebサイト”はユーザーにフラストレーションを与え、閲覧をやめさせてしまう恐れがある。 下記のグラフは、「Simple-Talk」という海外のオンラインメディアで発表されたユーザー調査の結果だ。アンケートページの表示にかかる時間を意図的にコントロールし、表示時間によってユーザーが感じるフラストレーションの違いを調べたものだ。 縦軸がフラストレーション(10段階)、横軸が表示までの時間を表している。1~5秒以内にページが表示された人に比べ、ページ表示までに5秒以上かかった人は2倍以上もフラストレーションを感じている。フラストレーションがあまりに高ければ、せっかく何らかの目的を持って訪れてきたユーザーも待ち切れずにブラウザーを閉じてしまう

    30分でできる!Webサイトを高速化する6大原則 (1/4)
  • amachang の 「一行で IE の JavaScript を高速化する方法」を掘り下げてみた - latest log

    2009-11-12 ナビ子記法について追記しました 文 今日は、amachangさんの記事 http://d.hatena.ne.jp/amachang/20071010/1192012056 を 1mm だけ掘り下げ、IE 以外のブラウザでも document へのアクセスを速くする方法がないか、色々試してみます。 # 記事自体はずいぶん前に書き上げてたけど、公開するの忘れてたんだな。 C系を追加しました。C系は「ネストしたスコープからグローバル変数にアクセスするとどうなるか?」がテーマです。 試したこと 以下は様々な方法で document へのアクセス速度を計測します。 A系では、非日常的な方法で測定し、B系では実際の用法に近い形で測定します。C系では何重にもネストしたスコープから、グローバル変数にアクセスするとどうなるかを測定します。 A系 A0 は、素の document に

    amachang の 「一行で IE の JavaScript を高速化する方法」を掘り下げてみた - latest log
  • はてなブックマーク JavaScript 高速化計画 補足 - IT戦記

    はじめに id:jkondo さんがブクマしてくれてるのでちょっとだけ補足 以下のつづき http://d.hatena.ne.jp/amachang/20081126/1227700830 追加修正 id:Yuichiro さんのハック 2008-11-27 - つれずれなるままに… 注意:ただ、これ appendChild 時のコストが増えていることが分かったのでちょっと要確認ですね。 id:Yuichiro さんのハックを getImage にも適用 gotImage: [], getImage: function(container) { var src = Hatena.Star.Button.getImgSrc(Hatena.Star.Star,container); if (!this.gotImage[src]) { var newimg = document.create

    はてなブックマーク JavaScript 高速化計画 補足 - IT戦記
  • yukobaのブログ

    yukobaのブログ

  • PHP コード最適化 Best Practices 63+ - カタコト日記

    みたいなタイトルの記事を Digg 経由で発見。チートシート代わりにと思い超訳。*1 A Software Architect PHP 最適化 ベストプラクティス! 01. static にできるメソッドは static として宣言しよう。(4倍速い) 02. echo の方が print より速い。 03. echo '文','字'; (カンマ区切り)の方が、'文'.'字' (ドット連結)より速い。 04. ループの最大値は、ループ「内」ではなく「前」にセットしておこう。 05. 大きい配列のような変数は unset() してメモリを解放しよう。 06. マジックメソッド(例: __get, __set, __autoload)は使用を避けよう。 07. require_once はハイコストなのです。 08. include や require でファイルはフルパスで指定しよう。 09

    PHP コード最適化 Best Practices 63+ - カタコト日記
  • 1