コンピュータ

topcoder

とかはじめてみた。あ、プログラミングコンテストの類のサイトで、時間を決めてコンテストが行われるというものです。結構メジャー。ちょっと練習して、昨日の夜中に初参加。初回なのでDiv2からスタート。(topcoderはランクによって難易度の高いDiv1とやさ…

並行コンピューティング技法

という本がO'REILLYから出ていたので買ってみた.まだちゃんとは読んでないけど,…う〜ん. 前半は並行処理の基本的な所,後半はおもに並行アルゴリズムについて書いてあります. で,プリフィクススキャンとかソートとかサーチとかについて書いてあるんだけ…

Sisalのバグレポ

久しぶりに以前バグレポしたSisalのサイト見ると,どなたかデバッグしてくれたみたい.

C++習熟度検定試験問題

という2002年のML記事がなぜかはてブに上がってたので見てみた.面白い. たいてい分かった(つもり)だけど,仮想継承は知らなんだ.うかつ.

C++ で、論理型言語(GHC)コンパイラを書く

だそうです.すげー!!がんばれー!

boostのスレッドライブラリにfutureが追加されてた

知らなかった.1.41から?

企業の研究者をめざす皆さんへ

という本を読んだ.(どこで見つけたんだっけか.たしか,shudoさんのtweetだったような気がするが…) 良書.元IBM基礎研の所長である丸山宏さんが,企業における研究についてやわらかい語り口で語っています. そうそう,という話もあるし,なるほどそうか…

Pocket WiFi

ですって:engadgetの記事 Eモバイルの通信機能を持つモバイル用の無線LANアクセスポイントですね. PHS300+D02HWで生活してるけど,ぶらぶらしないし小さいし,いいんじゃないでしょうか.

Grand Central Dispatchがオープンソースに

なるそうです:本家スラドの記事.なんとまぁ. と言いつつ,難しいのはCにブロックを追加する所だからなぁ.(このオープンソースって,ブロックを食って,スレッドプールを使って並列実行する所だよね.)ブロックはLLVMを使えばいいみたいなんだけど. あ…

thrust

あと,会社でCUDAをラップするthrustというライブラリがあることを教えてもらった.C++のSTL的なインタフェースを提供してくれるみたい.これでちゃんとパフォーマンスがでれば,素晴らしいなぁ.(デバイス内の共有メモリをうまく使ったりはできるのかしら…

Grand Central Dispatch

Snow Leopardから,Grand Central Dispatch (GCD)というマルチコア用システムが使えるようになったそうな(Web記事). 要するに, x = ^{...} のように{...}で表されるブロックに^を付けることで変数に入れられるようCを拡張して,ブロックをマルチコアで並…

C++の型

C++では,型をclassの中で(typedefで)定義できて,クラス名::型名で参照できる,ということに今更気づいた(というか意識してなかった).vector::iterator it; とかいつも書きながら何を今更,という感じだけど.あと,vectorとかのコンテナの中では,コ…

分散システム 原理とパラダイム 第2版

が積読になっていたので,ぱらぱらとめくる. いや,第1版の和訳も持ってたんだけど,こちらも積読だったんだよねぇ…中身は,最新の話題も出てきて良い感じ.ちゃんと読んだ訳じゃなくて,ページをめくっただけだけど.グリッドの話題とか,P2P,DHTといった…

C++のテンプレート

今更,色々試してハマる. テンプレート関数の引数に関数へのポインタを渡す時,関数へのポインタの型から返り値の型とか引数の型とかを推論して欲しいんだけど,って言う話. template <class Ret(*)(Arg)> Ret myfunc(Ret(*f)(Arg), Arg a){ return f(a); } とか書いてみたん</class>…

Parallel Pattern Library

というものが,Visual C++の次期バージョンに取り入れられるらしいことに,今更気づく. MSDNの記事.こんな感じで書きます: array<int, 5> values = { 1, 2, 3, 4, 5 }; parallel_for(0U, values.size(), [&values] (size_t i) { values[i] *= 2; }); [](...){...}</int,>…

TBBとラムダ関数

昔,Intel Threading Building Blocks (TBB)がフリーになった時,ちょっと調べて書いたことがありました.その時は,「並列化の手間がかかり過ぎだろう」みたいなことを書いたのですが,CodeZineの紹介記事を見ると,あれ,割と簡潔に書けてる… parallel_for…

Sisalを試す

Sisalとは,並列実行可能な関数型言語です. 超大昔に研究レベルで実装されてたんだけど,Sourceforge.netでソースが公開されているという(こちら).当時並列処理の研究をしていた人には有名な言語ですね.最終更新は2006年なので,それなりに開発は継続し…

Google Wave

ビデオを見てみた.いやぁ,良くできている.Waveというオブジェクトに対する操作,参照ですべてを行うというアーキテクチャなんだろうね.メールのような非同期のコミュニケーションも,チャットのような同期コミュニケーションも可能になると. あと,Goog…

学会発表:仮想マシンと連携したWebブラウザによるプログラム実行環境

「仮想マシンと連携したWebブラウザによるプログラム実行環境」というタイトルで学会発表をしてきました.SACSISという学会です.微妙に周りから浮いているような気がするけど気にしない(^^;内容は, Webアプリは便利だけど,NWが切れてるときとか使えない G…

Eモバの速度

通勤電車内では,1Mbps位.Willcomに比べると安定しているので,かなり使い物になるなぁ. ニコ動やYouTubeも可能.動画によるけど.電池はD4の方がPHS300より先に切れたので,PHS300の利用可能時間はよく分からず.

Eモバイル + PHS300 導入

来週末出張があるので,それに合わせて? EモバイルとPHS300を導入してみた.Eモバは,アウトレットで導入.調整済み中古端末を,安く売ってるというやつですね.ものは,PHS300で公式に対応しているD02HWを選択.アウトレットの場合は,EMチャージというプリ…

Windows転送ツール

訳あってWindows XPからWindows Vistaに設定とデータを移行することに.Windows Vistaから標準添付のWindows転送ツールを使うのが吉かと利用してみたんだけど,なんか途中で止まることが…? ネットワーク経由でのファイルコピーだったんだけど,(受け側の)…

複数のfutureを待つプリミティブ

気がついたら3ヶ月近くも更新してなくてビビった(^^; Lambda-The-Ultimateを見ていたら,複数のfutureを待つプリミティブが必要,みたいな話があったので少し.次世代のC++規格の中にfutureが提案されているそうです. (そうなると,PARDSの有用性が下がっ…

「マルチコアを活かすお手軽並列プログラミング」

今月の情報処理(情報処理学会の会誌)の特集が,「マルチコアを活かすお手軽並列プログラミング」でした. さすがに知ってる話ばかりかと思ったが,以外と知らない話があって参考になったので紹介.(編集長に「記事の難しさから見て,普通人が「お手軽」に…

OpenCL

の仕様が公開されたそうなので,少し見てみる.というか,KhronosのOpenCLのページからたどれるPDF資料が良くまとまっている.ざっと見た所の感想: データ並列性を利用する所は,CUDAに類似している というか,NVIDIAが入ってるんだから,当然なんだろうけ…

コンピュータプログラミングの概念・技法・モデル

という本を買ってみた:http://www.amazon.co.jp/dp/4798113468 CTMとか呼ばれる本ですね.計算機プログラムの構造と解釈(SICP)のように,プログラミング一般に関する教科書です. で,SICPがschemeを使っているのと同様,CTMではOZという言語を使っています…

Processing.js

Lambda the Ultimateより:Processing.js | Lambda the Ultimate。 以前、Processingという言語を紹介したことがありますが、そのJavaScript版(!)。(元はJava appletかな?)アニメーションとかを簡単に記述できる言語ですね。 URLはこちら:John Resig - Pr…

asahi.comでSilverlightを使った動画サービス

が始まっていたようです。動画:朝日新聞デジタル 要インストール。MacとVISTAのFirefoxで動作を確認。ハイビジョン品質で見られます。 ぜんぜん気づいてなかったけど、動画リストを見るに、2月末くらいからやってたのかな? ちなみにこの記事で気づいた。 CA…

Cのポインタ

この辺で話題になっていたので、友人と色々話す。 で、"abc"とかって、要は配列のリテラルよねぇということで、 char c = "abc"[1]; とかという表現が可能なことに気づく(^^; てか、gcc 4.0.1では通ったけど、正しいかどうかは知らん。そういえば、元ネタ記…

OpenMPI

OpenMPのtypoではなくて。Appleのページによると(http://www.apple.com/jp/macosx/technology/multicore.html)、LeopardはMPIをサポートしているそうですよ。誰が使…、いや、素晴らしいですね。(^^; まぁ、数値計算する人にとっては、デフォルトで入ってい…