タグ

ブックマーク / primenumber.hatenadiary.jp (5)

  • GPGPUで爆速でオセロを解く 【KMC Advent Calendar 2016 19日目】 - prime's diary

    はじめに この記事はKMC Advent Calendar 2016の19日目の記事です。 www.adventar.org GPGPUとは GPGPU(General-purpose computing on graphics processing units; GPUによる汎用計算)とは、GPUの演算資源を画像処理以外の目的に応用する技術のことである。 (出典: GPGPU - Wikipedia ) GPUは並列演算に特化しており、大量のスレッドをハードウェアで処理でき、汎用CPUに比べて演算処理性能が高いという特徴があるので、これを用いて演算を高速に行おうというのがGPGPUのアイデアです。 ただ、良いことばかりではなく、汎用CPUに比べてプログラミング上の制約が大きいなど、性能を出し切るのはかなり難しいです。 GPGPUでオセロを解く 今回はGPGPUを用いてオセロの終盤の完全読

    GPGPUで爆速でオセロを解く 【KMC Advent Calendar 2016 19日目】 - prime's diary
    nonylene
    nonylene 2016/12/20
  • コミックマーケット89記念!ANSI C89コンパイラを作る【KMCアドベントカレンダー12日目】 - prime's diary

    この記事はKMC Advent Calendar 2015 - Adventar12日目の記事です。 宣伝 サークル「京大マイコンクラブ」は、コミックマーケット89で「木曜日 東地区 "モ" 42b」に配置されました! コミケWebカタログにてサークル情報公開中です https://t.co/BtKSerlV6R #C89WebCatalog— 京大マイコンクラブ (@KMC_JP) 2015年10月30日 部誌、自作ゲーム、そして今回の題であるコンパイラのソースコードを置く予定です。 3日目(12月31日)東地区 "モ" 42bです!よろしくお願いします!!*1 題 今度のコミックマーケットは89回目です。コミックマーケット89は通称C89と呼ばれています。 C89といえばC言語の最初の標準規格ANSI-C:1989(通称C89, ANSI C89など)ですね! こうなったらやること

    コミックマーケット89記念!ANSI C89コンパイラを作る【KMCアドベントカレンダー12日目】 - prime's diary
    nonylene
    nonylene 2015/12/12
  • 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
    nonylene
    nonylene 2015/11/06
  • 【failに】ISUCON5の決勝に出たけど記録を残せなかった【人権はない】 - prime's diary

    お金が欲しいので(直球)、優勝賞金100万円のISUCONの決勝に出ました。予選については primenumber.hatenadiary.jp を参照。 当日起きれるか不安だったので前日入りしてカプセルホテルに泊まった。 人生初のカプセルホテルだったが、あまり寝られなかった。お腹の調子が悪かったのもあると思う。 少し早めに出てゆったり朝を取って会場入りした。 コンテスト始まってとりあえず問題の内容を理解したりベンチ回してみたり実装を読んだりプロファイルを取ったりしたりしていた。 なぜかrack-lineprofがSEGVかなんかで落ちるのが辛かった。 とりあえず手元で実験して/dataが外部のAPIを叩くところが遅いことはわかって、どうにかしてキャッシュ出来ないかとか並列にリクエスト送れないかとかあれこれやっていた。 しかし、15時頃に一番遅いtenkiのAPIが単純にキャッシュしただ

    【failに】ISUCON5の決勝に出たけど記録を残せなかった【人権はない】 - prime's diary
  • ISUCON5の予選に出て学生枠1位で通過した(チーム名: 古典論理の犬) - prime's diary

    お金が欲しいので(直球)、優勝賞金100万円のISUCONの予選に参加して、13609点、二日目全体で11位(?)学生枠1位で通過した(学生枠で登録した中では一般枠で通過したチーム学生自治についで2位)。 isucon.net チーム チーム名: 古典論理の犬 チームメンバー: @lastcat_ @nonylene @_primenumber チーム名の由来 KMC内でISUCONに出るぞ!!ってなって6人集まったのでnotaで働いてる人(@nonamea774 @pastak @uiureo, チーム学生自治)とそうでない人でそれぞれチームを作った。 not notaなのでnot not a ⇒ aってなって二重否定の除去マンだ、古典論理の犬だ!!ってなって決まった。 流れ 予選まで 8月の末ぐらいからチームで何回か練習をした。 最初にISUCON1からやろうとしてAMIとかもないし流

    ISUCON5の予選に出て学生枠1位で通過した(チーム名: 古典論理の犬) - prime's diary
  • 1