タグ

2008年6月17日のブックマーク (10件)

  • Mac OS X で pthread_mutex_lock と pthread_mutex_unlock の回数がずれる話 - kazuhoのメモ置き場

    2059 回 lock (wait からの復帰も含まれる) され 59 回 wait し 2000 回 unlock され 1966 回 block したことがわかります pthread でキューを作る(再挑戦)。ついでに dtrace でスレッドの解析 - IT戦記 pthread_mutex_lock = pthread_cond_wait + pthread_mutex_unlock の回数になっているのは、Mac OS X の pthread_cond_wait の設計がそうなっているから。(http://www.opensource.apple.com/darwinsource/, fxr.watson.org: xnu-792 sys/osfmk/kern/sync_sema.c) 831 /* 832 * Routine: semaphore_wait_signal 833

    Mac OS X で pthread_mutex_lock と pthread_mutex_unlock の回数がずれる話 - kazuhoのメモ置き場
    amachang
    amachang 2008/06/17
    ありがとうございます></pthread_mutex_wait の中で pthread_mutex_lock が呼ばれているので dtrace の結果で lock と unlock の数が同じにならない。
  • $A - ロックスターになりたい

    function $A() { return Array.prototype.slice.call(arguments, 0); }

    $A - ロックスターになりたい
    amachang
    amachang 2008/06/17
    [].slice.call(arguments, 0); /←こうするとちょっと短い
  • 駄文 - アウトオブオーダー実行 - IT戦記

    アウトオブオーダー実行って、依存関係の無い命令を見つけるコストって無いのかな。 out of order CPU「えーっとこの命令には、この命令の結果が必要で、えーっとえーっと><」 in order CPU「そんなこと考えてる前に、上から順にやったほうが速いぜー!お先ー!」 って感じにならないのかな。 命令の依存関係を調べるのってそんなに簡単なのかな。

    駄文 - アウトオブオーダー実行 - IT戦記
    amachang
    amachang 2008/06/17
    いろいろ教えてもらった!
  • livedoor Readerサービス終了のお知らせ

    livedoor Readerサービス終了のお知らせ 2014年12月をもちまして、LINE株式会社が提供するlivedoor Readerの運営を終了しております。 長きに渡りご愛顧をいただきまして、誠にありがとうございました。 livedoorホームへ戻る

    amachang
    amachang 2008/06/17
    livedoor id 教えて欲しいです><
  • 駄文 - HTML は 20 年後どうなっているんだろう - IT戦記

    ちょっと前にブクマを見てちょっとひっかかってたんですが 2008年04月22日 kokorohamoe 20年後はもうWebじゃねーよ。20年前?電信じゃねーか。20年後もWebってどんだけ技術革新おくれてんだよ。 2008年04月22日 t-tanaka 20年とは大きく出た。そもそもWebがメジャーなメディアとして残ってるのか? 1988年に「20年後のディスコで流行っている曲は」とかやってるみたいだ。 2008年04月22日 noitseuq ネタエントリを気で記事にするなんて。Webはあくまでもブラウザを介したものだから20年後は怪しい。ネット。 http://b.hatena.ne.jp/entry/http://trendy.nikkeibp.co.jp/article/column/20080416/1009441/ HTML5 は 20 年後 HTML5は、2022年以降

    駄文 - HTML は 20 年後どうなっているんだろう - IT戦記
    amachang
    amachang 2008/06/17
    ↓ GIF87 って僕が 5 歳のときなんだ!すごいなー!
  • PDF 千夜一夜: 2008年06月17日 アーカイブ

    HTML5への期待、懸念、夢 6月10日にHTML5の新しいドラフトが公開されました。 A vocabulary and associated APIs for HTML and XHTML W3C Working Draft 10 June 2008 HTML5は、HTML4に続く大きなバージョンアップです。HTML4からHTML5への変更点については、ミツエリンクスの翻訳があります。 HTML 5 における HTML 4 からの変更点 2008 年 6 月 10 日付 W3C 草案 (Working Draft) まだ詳しくは読んでいませんが、ざっと見ますと、HTML4からHTML5への変更はかなり大掛かりなものです。 このところ、何回かブログでも取り上げていますが、今後、ブラウザがWeb上のアプリケーションのプラットフォームになる可能性があります。これに対抗するのが、AdobeのAI

  • アウト・オブ・オーダー実行 - Wikipedia

    この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方) 出典検索?: "アウト・オブ・オーダー実行" – ニュース · 書籍 · スカラー · CiNii · J-STAGE · NDL · dlib.jp · ジャパンサーチ · TWL(2011年12月) アウト・オブ・オーダー実行(アウト・オブ・オーダーじっこう、英: out-of-order execution)とは、高性能プロセッサにおいてクロックあたりの命令実行数(IPC値)を増やし性能を上げるための手法の1つで、機械語プログラム中の命令の並び順に依らず、データなどの依存関係から見て処理可能な命令について逐次開始・実行・完了させるものである。頭文字で'OoO'あるいは'O-o-O'とも書かれる。「順序を守らない実行」の意である。 プロセッ

    amachang
    amachang 2008/06/17
    OoOプロセッサは半端な時間を他の「準備ができている」命令に当て、後に実行結果の順序を修正することで、順序通り命令を実行したのと同じ結果が得られるようにする/うへー CPU ってそんなことまでやってるんだー><
  • メモリバリア - Wikipedia

    この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方) 出典検索?: "メモリバリア" – ニュース · 書籍 · スカラー · CiNii · J-STAGE · NDL · dlib.jp · ジャパンサーチ · TWL(2023年7月) メモリバリア(英: memory barrier)またはメモリフェンス(英: memory fence)とは、その前後のメモリ操作の順序性を制限するCPUの命令の一種である。 CPUには、性能最適化策としてアウト・オブ・オーダー実行を行うものがあり、メモリのロード命令やストア命令を含めて順序を入れ替えて実行することがある。この命令の並べ替えは、ひとつのスレッドの中で一般に暗黙のうちに行われるが、マルチスレッドプログラムやデバイスドライバでは慎重に制御しない限り

    amachang
    amachang 2008/06/17
    メモリバリアについて/「順序性の制限の方法はハードウェア依存であり、そのアーキテクチャによって定義される」← CPU ごとにアセンブラを書かないといけない
  • はてなブログ | 無料ブログを作成しよう

    引越し遍歴パートⅡ 2018年に「上京して10年で引越しを6回した」というブログを書いた。 月日は流れ、あれから6年…さらに2回の引越しをした。ホテル暮らしも含めると3回かもしれない。 前回の記事では主に神奈川〜千葉〜東京の引越し事情を書いた。関東の浅瀬でちゃぷちゃぷ遊んでいたに過…

    はてなブログ | 無料ブログを作成しよう
    amachang
    amachang 2008/06/17
    いいねー。台詞ないのになんか分かる
  • 革命の日々! なんで、pthread_once()なんて存在するの?

    http://d.hatena.ne.jp/amachang/20080612/1213244820 お気に入りなサイトのIT戦記より // ここを volatile にする // (この変数の値はアトミック(つまり、レジスタにだけあってメモリにないということがない変数に)になる) volatile char* p = NULL; pthread_mutex_t m; void* f(void* _p) { // ロックかからない if (p == NULL) { pthread_mutex_lock(&m); // ここからはクリティカルセクション // 一個目の初期化時にここでブロックしたスレッドのために // もう一回 NULL チェック if (p == NULL) { // ここではまだ p に代入しない // 代入したら別スレッドで初期化されていない p が返ってしまう cha

    amachang
    amachang 2008/06/17
    DCL はメモリバリアーを分かってないと地雷><ありがとうございます!