タグ

2015年11月6日のブックマーク (7件)

  • ISUCON 5 決勝の天気APIの解説 - Qiita

    ISUCON 5が終わりました。 出題担当のtagomorisさん、kamipoさん、お疲れ様でした。非常に大変だったと思いますが、お手伝いさせてもらって刺激を受けましたし楽しかったし、良い経験になりました。ありがとうございます。 941さん、各言語の担当者の方々、参加者のみなさんも、お疲れ様でした。 来年もお手伝いしたいし、いや自分自身も参加もしたいし、迷うところです。 さて、ISUCON 5 決勝での天気予報APIを実装しましたので、APIの挙動や意図などを記しておきます(全体の講評は ISUCON5 選問題の公開と講評 をご覧ください)。 zipcode クエリパラメータとして zipcode を渡していましたが、APIはこれを見ていません。ところがアプリ側はzipcodeを渡すようになっています。 アプリ側の実装の意図については把握していませんが、おそらくキャッシュをしにくくする

    ISUCON 5 決勝の天気APIの解説 - Qiita
  • #ISUCON 本戦初出場初failしてきた - ぱすたけ日記

    予選の様子はこちら というわけでISUCONにチーム学生自治として出場してきた。 チーム学生自治、京大ストライキを呼び掛けた中核派のキャッチコピーと似てるからチーム名が公序良俗に反してると思われないかが心配になってきた— マジカルペンネくん🍝 (@pastak) 2015年10月27日 結果は発表されている通りで fail という感じだった。 大体何をやったかはチームメイトのnona7くんが書いていたけど、一応書いておきます。 開始前にドクペとお茶を飲んだ影響かとにかくトイレに行く回数が多かった 言語についてはスムーズにRubyを使うことにしたけど、NodeJS実装もあったしちょっとは見ても良かった気がする。 予選の時と同じくrack-lineprof を導入して計測する作戦で始めたが、セグフォして辛い感じだった。/data辺りで色々httpが走ってたりするからその辺りで何かあるんじゃな

    #ISUCON 本戦初出場初failしてきた - ぱすたけ日記
  • RubyからGoの関数をつかわなくても再帰をやめなくてもアルゴリズムを改善する→はやい - prime's diary

    qiita.com mattn.kaoriya.net という記事を読んだのでアルゴリズムを改善して速くしました。 いわゆる行列累乗のテクニックを使うと(乗算部分を除けば)N番目のフィボナッチ数はで求まります。 実際にはフィボナッチ数は指数的に増大するので乗算にかかる時間が支配的になるのでもっと遅くなります(Karatsuba法なら、高速フーリエ変換を使えば)。 単純な足し算のループでは足し算の桁数を考えると なのでそれよりは随分と速くなります。 40番目ぐらいでは実行時間はほとんど0なので100万番目のフィボナッチ数を求めてみます。 こちらが元のソースコード def fib(n) f0, f1, v = 0, 1, 0 n.times do |x| if x <= 1 v = x else v = f0 + f1 f0, f1 = f1, v end end return f0 + f1

    RubyからGoの関数をつかわなくても再帰をやめなくてもアルゴリズムを改善する→はやい - prime's diary
    hamaco
    hamaco 2015/11/06
  • Big Sky :: RubyからGoの関数をつかわなくても再帰をやめる → はやい

    RubyからGoの関数をつかう → はやい - Qiita 約20倍はやい!!!!!!すごい!!!!!!!!!!!!!! Go単体での実行に毛が生えた程度になりました!!!!!!!!!!!!!!!!!! もう「Rubyより、ずっとはやい」なんて言わせないぞ!!!!!!!! http://qiita.com/grj_achm/items/679b3f3af2cf377f0f02 def fib(n) return n if n <= 1 fib(n - 1) + fib(n - 2) end puts fib(40) 巷で良く見る fib のコードですね。 $ time ruby fib1.rb 102334155 real    12.692 system  0.031 user    12.651 これを再帰を使わない様に修正すると以下の様になります。 def fib(n) f0, f1

    Big Sky :: RubyからGoの関数をつかわなくても再帰をやめる → はやい
    hamaco
    hamaco 2015/11/06
  • RubyからGoの関数をつかう → はやい - Qiita

    この記事ではRuby2.2.3とGo1.5.1を使用しています。 すごい要約 Go and Ruby-FFI - Code7 Interactiveを読むといい。 Go、はやい 最初にRubyGoの計算速度を比べるため、フィボナッチ数を単純に計算するやつをそれぞれ書きました。

    RubyからGoの関数をつかう → はやい - Qiita
    hamaco
    hamaco 2015/11/06
  • SHIROBAKOみゃーもりの優秀さ

    Stargazer Meetup #1 http://connpass.com/event/18896/

    SHIROBAKOみゃーもりの優秀さ
    hamaco
    hamaco 2015/11/06
  • mermaid.jsが素晴らしいけどなかなか使ってる人見かけないので実例晒す(追記あり) - Qiita

    mermaid.jsとは JavaScriptのチャート作成ライブラリです。他にも似たようなのは色々ありますが、これ一でフローチャート、シーケンス、ガントに対応してるので、個人的にお気に入り。 http://knsv.github.io/mermaid/ サイトの各チャートのページ見ると書き方と何ができるかはわかるので、ご覧あれ。 僕の使い方 JSのライブラリを自分でインポートして何かすることはほとんど無くて(後述の理由からガントだけJSで使ってるけど)、基的には以下の2つの方法で使ってる。 Haroopad フリーでクロスプラットフォーム(OS X, Win, Linux)なMarkdownエディタ。 v0.13からmermaid.jsがインテグされているので、何もしなくてもそのまま使える。 mermaid.jsのグラフの書き方は、コード表記で、言語をmermaidにしてあげるだけ。

    mermaid.jsが素晴らしいけどなかなか使ってる人見かけないので実例晒す(追記あり) - Qiita
    hamaco
    hamaco 2015/11/06