タグ

ブックマーク / gfx.hatenadiary.org (5)

  • ISUCON3 に参加しました - Islands in the byte stream (legacy)

    id:yappo & id:kamipo とチーム「潰すつもりで来てください」を結成してISUCON3に参加してきました。結果は(失格にならなければ)11位で予選は通過できそうです。 YappoLogs: ISUCON3 で暫定で戦進出らしいです #isucon 好きな子のことかslow query logのことばかり考えてほかのことがおろそかになる性格なおしたい #isucon - かみぽわーる 選んだ言語はPerlで、できあがったコード(アプリ)はこちら*1: https://github.com/kamipo/isucon3 チーム全体としてはkamipoさんとYappoさんが二人三脚でSQLのクエリ改善をして、ぼくがそれ以外で主にアプリコードところを見るという感じで、役割分担がはっきりできていてよかったかなと思います。 ただ個人的にできなかったことがとてもたくさんあるので課題を感

    ISUCON3 に参加しました - Islands in the byte stream (legacy)
  • JSにコンパイルされたDartがPerlより速い件 - Islands in the byte stream (legacy)

    Dartのインストールが簡単になっていたので試してみたところ、Perlよりも高速だった。 なにこれ悔しい。 Dart: void main() { final t = new Stopwatch(); t.start(); final a = new List<int>(); for(var i = 0; i < 1000000; ++i) { a.add(i); } for(var i = 0; i < a.length; ++i) { ++a[i]; } var sum = 0; for(var i = 0; i < a.length; ++i) { sum += a[i]; } print(sum); print(t.elapsedMilliseconds / 1000); } Perl: use 5.12.0; use Time::HiRes qw(gettimeofday tv_

    JSにコンパイルされたDartがPerlより速い件 - Islands in the byte stream (legacy)
  • JSでi++と++iどっちが速い? - Islands in the byte stream (legacy)

    結論から言うと、現在のChromeのみをターゲットにして最適化するという特殊なケースを除き*1、どちらでも変わらないといえます。 [追記] 指摘を受けて再考してみました。そもそもjsperfでは初期化コード(今回はdataなどの初期化に使用)は一度しか走らないにもかかわらず、このベンチマークコードではdataの中身を書き換えています。これがスコアに影響を与えていたようです。 data[index] = data[index] * 2をdata[index] = index * c にした結果はChromeでも安定して双方有意差なしという結果になりました。 http://jsperf.com/postfix-or-pretfix-increment/4 JSのベンチマークの難しさを思い知りました。 [/追記] http://jsperf.com/prefix-or-postfix-incre

    JSでi++と++iどっちが速い? - Islands in the byte stream (legacy)
  • 来年から株式会社ディー・エヌ・エーで働きます - Islands in the byte stream (legacy)

    文系・不況・経歴に傷ありと三重苦を負っての就職活動でどうなることかと心配でしたが、無事就職活動を終えることができました。DeNAに就職します。Perlができると就職できるというのは当でしたね。 今回の就職活動においては、竹迫さんと牧さんには具体的な相談に乗っていただくなどお世話になりました。改めて御礼申し上げます。またその他関わった方々にも感謝致します。 私が就職できたのは、Shibuya.pmがあればこそ。Shibuya.pmというコミュニティへの参加が、ソフトウェアエンジニアとして生きることに確信を与えてくれたのです。竹迫さんをはじめとして、tokuhiromや牧さん、宮川さん、Yappo、typesterさんなどから得たものは、それ以前の独学で得たものより遥かに多様でした。特にtokuhiromとの出会ったことで、人とプログラミングについて語る喜びを知ったのは大きな財産です。牧さん

    来年から株式会社ディー・エヌ・エーで働きます - Islands in the byte stream (legacy)
  • XS基礎文法最速マスター - Islands in the byte stream (legacy)

    元ネタ:Perl基礎文法最速マスター(id:perlcodesample) XSを始めるための手順といくつかの要素の解説です。C言語をある程度知っている人でも,これを読んだだけでXSの基礎をマスターしてXSを書くことができるようにはなっていません。リファレンスでもありません。 XSとは,狭義ではPerlでエクステンションを書くためのマクロ言語の名前ですが,広義ではエクステンションを書くための技術の総称です。ここでは,広義のXSを俯瞰します。 XSはいろいろと特殊なのでテンプレは無視で行きます。 目次: h2xsで空のディストリビューションを作る XSファイルの構成 スレッドコンテキスト SVファミリ GCとスコープ さらなる学習のために h2xsで空のディストリビューションを作る 以下のコマンドで空のXSディストリビューションを作ることができます。 h2xs -A -b 5.8.1 -n

    XS基礎文法最速マスター - Islands in the byte stream (legacy)
    hokaccha
    hokaccha 2010/02/03
    h2xs -A -b 5.8.1 -n Foo::Bar
  • 1