タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

tipsとProgrammingとperformanceに関するsyo-yuのブックマーク (12)

  • JavaScript の配列アクセス速度 - Seaoak's READ

    このブログは、Seaoak が読んだ趣味で作ったプログラム/Web サービスなどをネタに、勝手気ままに書いている雑記帳みたいなサイトです。 ⇒ 過去記事アーカイブRSS フィード 自作プログラムなどを公開中! ⇒ 「みゃくらったー」 ⇒ 「なぜふぉろ」 ⇒ 「いつふぉろ」 ⇒ 「uncensored_favotter」 ⇒ 「AddFooterIntoTweet」 ⇒ 「have_read_it_already」 ⇒ 「bk1_to_amazon」 ⇒ 「KlogShow の日語対応」 Twitter もやってます。 @seaoak2003 Seaoak が作成&配布している プログラムはすべて無保証かつ フリーです。具体的に言うと MIT License (X11 License) です。⇒ 詳細 このブログの内容はすべて Seaoak の個人的なものです。 Seaoak の

    JavaScript の配列アクセス速度 - Seaoak's READ
  • 適切なI/Oスケジューラの設定と最適化 (2/3) :TEDIA

    TEDIA会員に登録したメールアドレスとパスワードを入力してください メールアドレス: パスワード: パスワードを忘れた方はパスワードの確認を行ってください。 TEDIA会員へのご登録がお済みで無い方はこちらで登録ができます >> テクノロジーポータル TEDIA トップページへ戻る << ユーザースペースでのI/Oスケジューリング 多数にのぼるI/O要求を出して性能を極限まで酷使するI/O集約型アプリケーションでは、保留中のI/O要求を並べ替えたり併合することができます。Linux I/Oスケジューラと同じ働きです。* I/Oスケジューラがブロックの観点から要求を並べ替え、シーク動作を最小限に抑制し、ディスクヘッドの円滑な線的移動を実現してくれると分かっている時、どうして同じ作業を2度行う必要があるでしょうか?多数のI/O要求を並べ替えていない状態で提出するアプリケーションを考えて

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

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

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

    We'll be back soon! Our site is currently undergoing maintenance. Please check back later.

    Site Under Maintenance
  • JavaVMのメモリ管理をマスターする

    Webシステムの安定動作には、メモリ使用量の適切な見積もりが不可欠。だがJavaVMでメモリがどのように管理されるかを理解しているだろうか? メモリに関する問題が発生すると、知識や技術資料の不足によって問題が長期化しがち。JavaVMでどのようにメモリが管理されているかを理解し、正確なメモリサイジングやメモリ関係のトラブルの早期解決へとつなげよう。 JavaVMのメモリ構造を理解しよう まず、JavaVMがどのようにメモリを使っているかを理解しておこう。JavaVMがプログラムを実行すると、Javaのプロセスによってメモリが使用される。Javaのプロセスでは、Javaヒープ、Permヒープ、Cヒープ、およびスレッドスタックという4つのメモリ領域を使用する。 Javaヒープはアプリケーションプログラムの各種オブジェクトを格納する領域であり、Classのnewで確保される。JavaヒープはNe

    JavaVMのメモリ管理をマスターする
  • アプリ高速化のための5つのノウハウ

    sonsonの経験則です. 1.大量のメモリを使わない,メモリの確保と解放の繰り返しは避けて,再利用 ・メモリを大量に使用すると目に見えて実行速度が低下する.また,memoryWarningによる割り込みのメッセージが多発する可能性があるため,その処理にも時間がかかる. ・TableViewでセルの再利用APIが提供されているようにインスタンスの確保と解放の繰り返しは大きく速度に影響を与える.(SDKが出る前,Jailbreak時代は再利用関数を自前で作ってたなぁ・・・) 2.恒久的に使いそうなオブジェクトはなるべく保持する ・利用しているクラスにメモリリークがあると,それの確保・解放を繰り返している内にメモリがどんどんいつぶされる.怪しいクラスは特に注意して使うようにする.まぁ,なんら抜的な解決策ではない気もしますが(アップル頼むよ). 3.背景に透明色を使わない ・ついつい

  • 肥え続けるTomcatと胃を痛めるトラブルハッカー (1/3) - @IT

    肥え続けるTomcatと胃を痛めるトラブルハッカー:現場から学ぶWebアプリ開発のトラブルハック(8)(1/3 ページ) 連載は、現場でのエンジニアの経験から得られた、APサーバをベースとしたWebアプリ開発における注意点やノウハウについて解説するハック集である。現在起きているトラブルの解決や、今後の開発の参考として大いに活用していただきたい。(編集部) メモリリークと聞いて、良いイメージを思い浮かべる開発者は少ないだろう。経験したことのある人にとっては、思い出したくない過去の記憶がよみがえるかもしれない。もしかしたら、その単語を聞くだけで胃が痛くなる人もいるかもしれない。筆者もかつてはその1人であった。 前々回の記事では、WebサーバとTomcatの間の接続において、スレッド数の不整合により発生したトラブル事例を、前回はTomcatとDBサーバの間のトラブル事例を紹介した。今回もTom

    肥え続けるTomcatと胃を痛めるトラブルハッカー (1/3) - @IT
  • ハタさんのブログ : Javascriptによる大規模開発の覚え書き。高速化編

    前回書いた「Javascriptによる大規模開発の覚え書き」が凄いことになってました。 今回は、省略した「5.高速化せよ」について書きます。 僕にとってjavascriptは非常に高速な言語です。それは何が高速か 開発速度が高速である 開発速度、及びそこに至るまでの修得速度はとても高速です。動的言語を上手く操る開発者はもちろん、開発に不慣れな(言葉が悪いけど)新人達でさえ「動く」モノをサクっと作ってしまえる。 また、プラットフォーム(? というかブラウザ)が広く普及しているので、ググればスグに問題解決もできる。 それにローカルで簡単に作れる。javascript、それは動作環境を含めて高速です。 高速にUI操作ができる(UI操作が非常に簡単である) swingとかでUI操作をするには多くのオブジェクト操作をしなければならないけど、javascript(もといDHTML)は非常に簡単に

  • 404 Blog Not Found:あなたのページを最速にする14の掟

    2007年05月11日18:45 カテゴリiTech あなたのページを最速にする14の掟 人気Webサイトの管理人、必読。 紹介ページ: 14 rules for fast web pages (Skrentablog) PPTのスライド: http://www.web2expo.com/presentations/webex2007/souders_steve.ppt 実は、これらはYahoo!の"Chief Performance Yahoo!"(当にそういう役職名)であるSteve Soudersによる以下のblog entriesをまとめたもの。 Performance Research, Part 1: What the 80/20 Rule Tells Us about Reducing HTTP Requests Performance Research, Part 2:

    404 Blog Not Found:あなたのページを最速にする14の掟
  • AsyncIOについて(その1) - 最速配信研究会(@yamaz)

    最近のOSにはAsyncIO(AIO)という新しいI/Oの仕組みが導入されているようだ.lighttpdの次期バージョンではAIOを導入することで8割もパフォーマンスが上がったようで非常に興味深い. またあちこちのBlogを見る限りNonBlockingI/OやNonBlockingI/O+シグナルとAIOが混同されている気がしたので,それら整理してみたい. はじめに I/O処理であるシステムコールのread/writeは対象がディスクだったり,ソケットだったりデバイスだったりするわけだが,通常これらのIO処理はCPU処理やメモリ処理に比べ非常に遅いことが知られている. 通常readが行われるとreadが終わるまで,永遠に処理は戻ってこず,プロセス的には待ち状態になってしまう.これは「Blocking」と呼ばれる. 遅いディスクやデータがいつ来るかわからないソケットなどに対するIO処理では

    AsyncIOについて(その1) - 最速配信研究会(@yamaz)
  • PythonSpeed PythonSpeed

    PythonSpeed 多くの人がPythonプログラムの速度について心配を持っています。でもPythonを使わないと、堪らないくらい実行速度上のロスがありますよね? 中には「なんだ、インタプリタのスクリプト言語か、まるっきり遅いや」なんて結論づける人もいます。また、Pythonを実際に試してみて、実行効率が十分なことに気づく人もいます。でも時には、 とっても遅いプログラムができあがることもあります。 実行速度がそんなに重要?ホントに? 多くの人が必要以上に速度に取りつかれていて、このような種類の問題では、Cが優れた実績を示していることから、全ての面で優れた言語だと考えています。別の人々は、開発の速度がより重要で、Pythonを選ぶのはそのような時に限り、まあそれなりの速度だろうと考えています。そして頻繁に、期待を超えた速度で動いていることに驚かされています。時には、同じ開発時間を費やした

  • JavaScript でプロファイリング - (new Hatena).blog()

    追記 [20061103]: ライブラリ非依存なバージョンも書いてみました。id:reinyannyan:20061103:p1 でご覧下さい。 最近自分で書いた JS プログラムが驚くほど重かったので、どこに原因があるか調べたいと思いました。 その方法として、怪しいと思う箇所に (あるいは思わない箇所にも) 手作業でタイマーを仕掛けて、部分部分の実行時間を計測するのも手だと思うんですが、クラスのどのメソッドでどのくらい時間が掛かっているのかが自動的に分かる、というのが理想的かなと思いました。 (以下、prototype.js 的な (OO 的な) コーディングを対象とした話になります) まず思いついたのは、プロファイルしたいクラス (function オブジェクト) を受け取って、メソッドを動的に書き換えるという方法です: for (var m in klass.prototype) {

    JavaScript でプロファイリング - (new Hatena).blog()
  • 1