タグ

programmingと高速化に関するblueribbonのブックマーク (6)

  • そろそろプログラマーもFPGAを触ってみよう! - Qiita

    これはbuilderscon tokyo 2016の発表スライドです。 自己紹介 @kazunori_279 クラウドのデベロッパー・アドボケイト エバンジェリストみたいなお仕事 コミュニティ支援:GCPUG、bq_sushi、TensorFlow User Group etc 趣味FPGA 2013年くらいからいじり始め FPGAエクストリーム・コンピューティング主宰:合計8回 これまでに書いたFPGA記事 はてなブックマークでバズった記事たち マイクロソフトはどうやってBingをFPGAで実装したか: 952 users ハード素人が32bit CPUFPGAで自作して動かすまで読んだのまとめ: 576 users 文字通り「ネットワークがコンピューター」な金融HFTでのFPGAの使われ方: 517 users JP Morgan Chaseがデリバティブ専用スパコンをFPGA

    そろそろプログラマーもFPGAを触ってみよう! - Qiita
    blueribbon
    blueribbon 2016/12/05
    ・FPGA:デジタル回路を自分で設計できるLSI ・Microsoft Bingでは1つのWebコンテンツを54個のステートマシンに同時に流して並列に特徴量抽出→FPGA実装では処理時間が4μsに。150倍の高速化。
  • JavaのString生成方法がボトルネックになっていた話 - WAF Tech Blog | クラウド型 WAFサービス Scutum

    はじめに 先日、私たちが開発しているクラウド型WAFサービス、Scutum(スキュータム)において、予想していなかった箇所の修正によってサーバの負荷が大幅に減るということがありました。原因はこのエントリのタイトルにもあるように、Stringクラスのインスタンスを生成する際の方法にありました。 Stringクラスのコンストラクタとcharset Stringクラスにはいくつかのコンストラクタが用意されています。我々が使っていたのはString(byte[] bytes, String charsetName)です。2つめの引数で、"MS932"や"UTF-8"のような文字集合(以下charset)を明示的に指定するものです。 ScutumのようなWAF(Web Application Firewall)は通常のウェブアプリケーションとは異なり、起動している間にさまざまなcharsetを扱うこ

    JavaのString生成方法がボトルネックになっていた話 - WAF Tech Blog | クラウド型 WAFサービス Scutum
    blueribbon
    blueribbon 2015/05/10
    「異なるcharsetが3つ以上混在してしまっている場合、キャッシュは効きません。JavaランタイムはCharsetを探す処理をはじめからやり直してしまいます。」 対策:自分でCharsetクラスのインスタンスをキャッシュする。
  • ユーザーの体感速度を高めるためのJavaScriptチューニング(後編)

    連載「Webサイト・アプリ高速化テクニック徹底解説」の第3回は、前回の「ユーザーの体感速度を高めるためのJavaScriptチューニング(前編)」の続きです。この後編では、「ユーザーの操作を阻害しない」方法についてJavaScriptのシングルスレッドやイベントループを交えて解説し、HTML5のWeb Workersについても紹介していきます。 前回は、ユーザーの体感速度を向上させるための方法として、3つのうち「ページを素早く表示する」と「ユーザーに素早くインタラクションを返す」を解説しました。今回は、最後の「ユーザーの操作を阻害しない」について詳しく解説していきます。 ユーザーの操作を阻害しない JavaScriptによる処理が重くなると、いつまでも画面が更新されなかったり、ユーザーの操作が止まってしまったりということがあります。止まっている時間が長すぎると、ブラウザから応答がないという

    ユーザーの体感速度を高めるためのJavaScriptチューニング(後編)
    blueribbon
    blueribbon 2015/05/10
    ・setTimeout関数などによる擬似的な並列処理 ・バックグラウンドでJavaScriptを実行する「Web Workers」(HTML5)
  • ユーザーの体感速度を高めるためのJavaScriptチューニング(前編)

    連載「Webサイト・アプリ高速化テクニック徹底解説」第2回は、JavaScriptの高速化について、まずは前編、後編に渡ってユーザーの体感速度を向上させるための方法を紹介します。JavaScriptの同期・非同期の仕組みやscript要素のasync属性、defer属性について詳しく解説します。 今回から複数回に分けて、JavaScriptの高速化をテーマに解説していきます。まずは、ユーザーの体感速度を高めるためのJavaScriptチューニングということで、単純なJavaScriptの構文によるスピードを比較するようなものではなく、主にユーザー視点からの高速化を主眼に解説します。その中で、同期・非同期といったJavaScriptの仕組みやscript要素のasync属性、defer属性などについても触れていきます。 ユーザーの体感速度を向上させる 一概にJavaScriptの高速化といっ

    ユーザーの体感速度を高めるためのJavaScriptチューニング(前編)
    blueribbon
    blueribbon 2015/05/10
    ・body要素の最後にscript要素を記述する ・script要素にdefer属性をつけると、コンテンツの表示が終わったあとに、そのJavaScriptを実行するようになる
  • IDEA * IDEA

    ドットインストール代表のライフハックブログ

    IDEA * IDEA
  • 高速化 - latest log

    昨日がベンチマークだったので、今日は速度について。 いつまで教科書を信じてるんだい? プログラミングの教には、「ループ」がこのように書かれています。 これはよく見られる記述ですが、最も遅い書き方です。 var ary = [...]; var i; for (i = 0; i < ary.length; i++) { なにか }ループ毎にlengthを再評価しなければ、ちょっと早くなります。 var ary = [...]; var i; var sz = ary.length; for (i = 0; i < sz; i++) { なにか }i++ を ++i にするとさらに早くなります。 var ary = [...], i = 0, sz = ary.length; for (; i < sz; ++i) { なにか }これらの些細な修正を施すだけで、単純ループなら5〜8%は高速化

    高速化 - latest log
  • 1