Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

タグ

tipsとperformanceに関するIMAKADOのブックマーク (9)

  • ディレクトリの中にある大量の小さなファイルを高速に読み込む方法 - 射撃しつつ前転 改

    ディレクトリの中にある大量のファイルを高速に読み込む方法が知りたかったので、実験してみた。想定しているシチュエーションは、一つ一つのファイルは数KB程度だが数が多い、という場合である。適当な順番でアクセスすると、ランダムアクセスになってしまいとても時間がかかる。個々のファイルを読み込む順番はどうでも良く、すべてのファイルを処理することさえできればいいので、原理的にはシーケンシャルアクセスで処理できてしかるべきである。 まず、ファイルシステムについて。HDDやSSDなどのハードウェアにアクセスする際には、ファイル名などという概念はもちろん存在しない。ファイル名と実際のディスク上の対応を管理するのがファイルシステムの主な役割である。ファイルシステムは、ファイル名からそのファイルに対応するブロック番号(メモリアドレスみたいなもんだな)を調べて、そのブロック番号を指定してHDDやSSDにアクセスす

    ディレクトリの中にある大量の小さなファイルを高速に読み込む方法 - 射撃しつつ前転 改
  • FirebugのProfileでJavaScript関数の実行時間を計測するのが便利そう - F.Ko-Jiの「一秒後は未来」

    リクルートのメディアテクノロジーラボ主催の The JUI 2008 Tokyo ってのに行ってきた。 jQuery UI Libraryの開発者(Paul Bakaus氏)やid:amachangさんのプレゼン、ライトニングトークでは株式会社はてなのid:malaさんの飛び入り参加などもあって楽しかった。 眠いので一番おぉっと思ったものをひとつ。 amachangさんのプレゼンで「便利なのでおすすめ」と説明されていた Firebug を使ったJavaScript関数の実行時間計測の方法が初耳でとても便利そうだった。具体的には Firebug にある Profile の機能でJavaScriptの実行時間が関数別に見られるというもの。 ↑ Own Time というのが内部の関数の実行時間を含まない、その関数そのものの実行時間を示すらしい。 関数の内部の一部分の実行時間を計測したいときは、計

    FirebugのProfileでJavaScript関数の実行時間を計測するのが便利そう - F.Ko-Jiの「一秒後は未来」
    IMAKADO
    IMAKADO 2008/05/27
    関数内部の一部分のパフォーマンス計測
  • [MySQL][InnoDB] innodb_log_file_size 変更手順 - koziyの日記

    毎度毎度毎度はげしくど忘れするのでメモ。 手順は InnoDBを使うときのパフォーマンスチューニング - フツーな日常 で書かれてますね。 innodb_log_file_sizeを増やす innodb_log_file_size=512Mに ちょっとコツがいる操作が必要。 * 一度mysqlをshutdownする * innodbのログを別の場所に退避させる * innodb_log_file_sizeの値を変える * 再度mysqldを上げ直す。ログは無ければ勝手に作られる。 InnoDB のログは ib_logfile\d+ (デフォルトだと ib_logfile(0|1) の 2 ファイル) なのでこれを /tmp にでも mv しちゃうと。 で、なんでこんなめんどーなことが必要なのかというと no title で書かれている 既にトランザクションログが存在していて,innodb_

  • MySQLでの高速な重み付きランダム表示 - llameradaの日記

    東京都で賢い借金返済方法を教えます!では、MySQLに格納したWikipedia記事をランダムに表示している。速度を気にしないなら、 SELECT * FROM docs ORDER BY RAND() LIMIT 10; で良いのだけど、レコード数が多いと遅くて使いものにならない。そこで、記事IDを1から始まる連番になるようにDBに格納している。このようにすると、アプリケーション側でDBに格納されている文書IDが全て分かるので、ランダムに文書IDを10個選択して、その文書IDのレコードを表示することで、ランダム表示を実現している。 例えば、IDは10個選択するRubyコードは、 ids = Array.new(10){ rand(num_docs) + 1 } で、DBに発行するSQLはこんな感じになる。 SELECT * FROM docs where ID in (id1,id2,.

    MySQLでの高速な重み付きランダム表示 - llameradaの日記
  • Dean Edwards: JavaScript Tip #1: Speed Up Object Detection

    Welcome to the first of what I hope will be a regular series of JavaScript tips. Object detection is common in JavaScript. Browser irregularities mean that your code must sometimes contain branches for different browsers. Here is a simple way to speed up object detection for a leaner and meaner script. Instead of this: function addEvent(element, type, handler) { if (element.addEventListener) { ele

  • 勝手にmakeでMonaの開発効率を上げよう - higepon blog

    昨日のDevelopment Environment Conferenceで最速の中の人がCSSを編集したら即座にブラウザに反映するってのをデモしていて「待ち時間が少ない方が効率が良い」的な話をしていました。 僕みたいなLLでない人は、冷静に考えると開発時間の10%位はビルドに要していて、しかもその時間は「ぼーっ」としているのが現状です ちょこちょこスクリプトを書いてこれを改善できれば、かなり開発の効率があがるのではないかと思いやってみました。 分析 まずは現在の作業を洗い出してみます。 1.~/mona/contrib-fast-gui/Misc/test/test.cppを編集します。 2.キリの良いタイミングで make && make installします。 3.エラーがあれば修正後、make しエラーがなくなるまでこれをくり返します。 4.~/mona/contrib-fast-

    勝手にmakeでMonaの開発効率を上げよう - higepon blog
  • 常駐ソフトを外す - タスクトレイ、通知領域の常駐ソフトを非表示とする - Windows高速化への道

    常駐ソフトとは、パソコンの起動とともに同時に起動して、すぐ使える状態のプログラムやパソコンの起動中、常に動作しているプログラムをいいます。 スポンサードリンク その多くは画面右下のタクストレイ(通知領域)に表示されています。 つねに動作しているため、ハードディスクからメモリ上に呼び出されています。 日本語入力ソフトやウィルス対策ソフトなどがこれに当たります。 アプリケーションがすぐ起動する事はいいことですが、パソコンの起動自体が遅くなったり、余分なメモリを消費するのでスワップが発生する原因ともなり、常駐ソフトが数多くあるのは良くありません。 そこで、常駐ソフトを必要最小限にする方法を紹介します。 まずは、タクストレイのアイコンをクリックまたは右クリックして、[終了]などを選びます。 こうして常駐を終わらせることが出来るソフトは終わらせます。 しかしPCを再起動すると、再度常駐してしまうソフ

  • CodeRepos に nobjdb.js 追加 - 最速チュパカブラ研究会

    http://coderepos.org/share/browser/lang/javascript/nobjdb CodeReposに「nobjdb.js」というファイルを追加しました。これは、「syobocalplus」のタイトル検索のルーチンを抜き出し、ライブラリ化したものです。 オブジェクトの集合の中から、文字列検索の結果によって部分集合を抜いてくる処理…… と言うとわかりにくいですが、要するに 購読しているフィードのリストの中をタイトルで検索する(例: LDR) タグクラウドの絞り込み検索(例: はてブ) などという処理です。これを素朴に実装すると for (var i in list) if (list[i].name.indexOf(keyword) >= 0) { // マッチ! } という感じですが、nobjdb.jsでは、ひとつの文字列にタイトルをすべて突っ込んで、 タ

    CodeRepos に nobjdb.js 追加 - 最速チュパカブラ研究会
    IMAKADO
    IMAKADO 2007/10/23
    indexOfに処理を触る 一つの文字列似いれて検索
  • 空繰再繰 - Plagger::Plugin::Filter::SortEntries #2

    岡村 直樹(にゃるら)『輝かしい青春』なんて失なかった人。 2023年10月現在、アルバイトが退職となったので次に備えて待機中。 ※なおゲームのシナリオ・企画を担当された『にゃるら』さんとは別の人間です 略歴1988 年代の早生まれ。『輝かしい青春』なんて失なかった人。 2003 年代後半の高校生時代、自滅的にメンタルを病み、そこから 2023年 10月現在も治療中。 とはいえ 2019年 9月頃に N 高等学校を卒業し、 その後 2022年 8月から 2023年 9月末まで Web アプリケーションエンジニアとしてアルバイト就職をするなどした。 2023年 10月現在、次回の備えて精神科でリハビリに通う日々を送っている。 プログラミングスキルは 2005 年頃、 blosxom のために Perl を扱う事を通じて修得し、 そこから 2023年 10月に至るまで継続して腕を磨いている。

    空繰再繰 - Plagger::Plugin::Filter::SortEntries #2
    IMAKADO
    IMAKADO 2007/10/15
    @INC 継承する際の注意
  • 1