« 2009年10月 | トップページ | 2009年12月 »

2009/11/27

[ GPGPU ] 超並列処理

長崎大学工学部で行われている超並列コンピューティング研究の話。

GPU を使った大規模並列 N 体シュミレーション
長崎大学工学部 超高速メニーコアコンピューティング研究センター 濱田剛

| | コメント (0) | トラックバック (0)

[ .NET / doc ] Debugging apps with VS2010 / .NET4 Security model

積読

| | コメント (0) | トラックバック (0)

2009/11/26

[ PC/自作 ] Fermi を搭載した GeForce はいつ出荷されるのか

via VR-ZONE
[Rumour] Nvidia Fermi release

NVIDIA の Fermi 搭載グラフィックボードが市場に登場する時期について、Web では2つの推測が流されている。Fudzilla の「1 月後半に Fermi を搭載した GeForce 製品が登場するというもで、もう一つは HardOCP の「2010 年 4 月ではないか」とする仮説だ。

しかし、Fermi は新たな問題が発生しているようでどちらも当てにならないようだ。VR-ZONE では、Fermi の出荷時期については「結局のところは、出るときに出るとしか言えない (In the end, with Fermi, all we can say is, it will arrive when it will arrive.)」としている。

仮に 1 月に出荷されたとしても、需要を満たすだけの十分な量は供給されないだろう。

| | コメント (0) | トラックバック (0)

2009/11/25

[ 備忘録 /python ] pyrad のサンプルファイルを使うとエラーになる

いつの間にか pyrad1.2 がリリースされていますが、sample フォルダの中の dictionary を使おうとすると↓のようなエラーが発生してしまうことがあります。

Python 2.6.4 (r264:75706, Nov  2 2009, 14:38:03) 
[GCC 4.4.1] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from pyrad.dictionary import Dictionary
>>> radius_dictionary = Dictionary( "dictionary" )
pyrad.dictionary.Dictionary.ReadDictionary( dictionary )
/home/fmt/dev/pyrad-1.2/example/dictionary
/home/fmt/dev/pyrad-1.2/example/dictionary.compat
Traceback (most recent call last):
  File "", line 1, in 
  File "/home/fmt/dev/pyrad-1.2/pyrad/dictionary.py", line 145, in __init__
    self.ReadDictionary(dict)
  File "/home/fmt/dev/pyrad-1.2/pyrad/dictionary.py", line 323, in ReadDictionary
    for line in fil:
  File "/home/fmt/dev/pyrad-1.2/pyrad/dictfile.py", line 108, in next
    self.__ReadNode(inc)
  File "/home/fmt/dev/pyrad-1.2/pyrad/dictfile.py", line 60, in __ReadNode
    fd = open(fname, "rt")
IOError: [Errno 2] No such file or directory: '/home/fmt/dev/pyrad-1.2/example/dictionary.compat'

dictionary.compat なんて指定していないのに、読み込みエラーが発生しています。

原因は dictionary ファイルの先頭にある $INCLUDE で始まる部分。$INCLUDE の後に記述されているファイルをすべて読み込もうとしているため、ファイルがないとそこでエラーになってしまうのです。

ただ単に pyrad1.2 を試したいとか、余分な辞書ファイルはいらないという場合は以下の行をすべてコメントアウトしましょう。

$INCLUDE dictionary.compat	# compability issues
$INCLUDE dictionary.acc
$INCLUDE dictionary.ascend
$INCLUDE dictionary.bay
$INCLUDE dictionary.cisco
$INCLUDE dictionary.livingston
$INCLUDE dictionary.microsoft
$INCLUDE dictionary.quintum
$INCLUDE dictionary.redback
$INCLUDE dictionary.shasta
$INCLUDE dictionary.shiva
$INCLUDE dictionary.tunnel
$INCLUDE dictionary.usr
$INCLUDE dictionary.versanet
$INCLUDE dictionary.erx
$INCLUDE dictionary.freeradius
$INCLUDE dictionary.alcatel

| | コメント (0) | トラックバック (0)

[ ニッキ ] 白軸キーボードを触ってきた

ちょっとした用で秋葉に行ったついでに、PC パーツショップを回っていたら Cherry 製白軸スイッチを採用したキーボードを見つけました。

ためしにキー入力をしてみると、とても心地いい打鍵感。
適度な重さにカチカチとした適度な硬さが手に染み渡ります。

| | コメント (0) | トラックバック (0)

2009/11/23

[ ニッキ ] Chrome OS の起動時間は「短い」のか

Chrome OS は7秒程度で起動するそうで、そのデモも公開されている。
周りでは「早い」とか驚かれているが、これはそんなに驚くことだろうか?

わたし個人の結論から言わせてもらうと、スイッチ入れてから7秒というのは「驚くほど早い」ものではない。

IDF ではスイッチ入れてから Windows7 を7秒で起動させるデモが行われていた ( なぜか日本では話題になっていないが )。やや古くなるが、Northwood 時代に XP を 15 秒で起動させることもできたし、10秒以内で起動させたという人も知っている。PC 自作をやっている人であればどうということのないものだろう。

| | コメント (2) | トラックバック (0)

[ 備忘録 ] Chrome OS

Twitter のログ探すのが面倒なので

Chromium OS
Chromium OS ホーム
Getting The Chromium OS Source Code
ChromeOS のソースコード
Linux Build Instructions Prerequisites
ビルド環境の準備
Build Instructions
Chromium OS のビルド手順

ChromiumOS のカーネルは Linux カーネル 2.6.30-10-12 ( ubuntu/karmic/+source/linux ) がベース

| | コメント (0) | トラックバック (0)

2009/11/19

[ silverlight / VisualStudio ] Silverlight4 beta released

PDC09 で Silverlight4 が発表されました。開発者向けのβ版のダウンロードも開始されています。

また、合わせて VS2010 β2 用のアドオンも公開されました。

Reference
Silverlight4 beta information
Silverlight4 Tools for Visual Studio 2010 beta 2
Silverlight 4 SDK

| | コメント (0) | トラックバック (0)

[ .NET / OpenSource ] .NET Micro Framework がオープンソースに

PDC09 で組み込みデバイス向けの CLI 実装である .NET Micro Framework 4.0 がオープンソース化されるという発表がありました。ライセンスは Apache 2.0 license になるようです。

なお、Micro Framework 4.0 の公開に合わせてコミュニティサイト ( http://www.netmf.com/ ) も予定されているそうです。

Reference
Microsoft to Open Source the .NET Micro Framework( Port25, 2009-11-16, Peter Galli )
.NET Micro Framework Version 4.0 ships, Open Source, Community Development, and more.( .NET Micro Framework Team Blog, 2009-11-15 )

| | コメント (0) | トラックバック (0)

2009/11/17

[ CUDA ] Thinkpad に CUDA ドライバをインストールする方法

先日のエントリで書いたとおり、Thinkpad T61 に CUDA driver を普通にインストールしようとしても、インストーラに弾かれてしまう。mini PCI-E スロットの制限といい、開発環境の作成すらできなくする制限といい、Lenovo が設けたくだらない制限には辟易させられるばかりだ。CUDA がインストールできなくて困っているユーザは結構いるのか、前のエントリの反響が大きかったので、このエントリでは Thinkpad T61 に CUDA driver をインストールする方法をまとめた。

NOTICE!
このエントリで説明する方法は、本来はサポートされていないドライバを強制的にインストールする方法です。このため予期せぬトラブルが発生する可能性は否定できません。たとえいかなるトラブルが発生したとしても、筆者は一切の責任を負いません。また、この方法によって発生したトラブルについて Lenovo 社および NVIDIA 社へ問い合わせを行うことは一切しないでください。
すべて自己責任の上で操作を行ってください。

まずは CUDA ゾーンのダウンロードページから「開発者向けノートブックドライバβ版(バージョン190.38)」の CUDA driver をダウンロードする。2009-11-17 現在の最新バージョンは 190.38 で、ファイル名は cudadriver_2.3_winvista_32_190.38-beta_notebook.exe となっているはずだ。

ダウンロードしたファイルは自己解凍 CAB 形式のファイルなので、適当なアーカイバで強制展開する。ダブルクリックするとインストーラが起動してしまい、例のごとく「Thinkpad だから」という理由で弾かれてしまうので注意しよう。

次にデバイスマネージャを起動する。T61 であれば下の Fig1 のようになっているはずだ。NVIDIA Quadro NVS140M を右クリックして、表示されたメニューからプロパティを選択する ( 赤線で囲んだ部分 )。T61p の場合は、Quadro FX570M が表示されるはずだが、同様にプロパティを選択する。


Fig1. デバイスマネージャ

プロパティを開いたら、「ドライバ」タブにある「ドライバの更新(P)」ボタンをクリックする ( Fig2 )。これ以降は、INF ファイルを選択するところまで T61 と T61p は共通の操作になる。


Fig2. NVS140M のプロパティ

最初に表示される「どのような方法でドライバソフトウェアを検索しますか?」に対しては「コンピュータを参照してドライバソフトウェアを検索します(R)」を選択する ( Fig3 )。


Fig3. ドライバ検索方法の選択

検索方法を指定した次の画面では「コンピュータ上のデバイスドライバの一覧から選択します(L)」を選択する ( Fig4 )。なお、自動で検索させてもまともに探してくれないことはいうまでもない。


Fig4. 参照方法の選択

「このハードウェアのためにインストールするデバイスドライバを選択してください」なんて画面になるが、表示されているデバイスリストには目的のドライバはない。「ディスクの使用(H)」ボタンをクリックする ( Fig5 )。


Fig5. ドライバの選択

「フロッピーディスクからインストール」という楽しいジョークを表示してくれるが、Quadro のドライバが FD に収まるわけがないので「参照(B)」ボタンをクリックする ( Fig6 )。


Fig6. FD からインストール!?

ファイル選択ダイアログが開いたら、INF ファイルを指定する。指定するファイルは T61 と T61p で異なる。T61 の場合は NVDM.INF を選択する。ファイルの場所は、T:\CUDA\cudadriver_2.3_winvista_32_190.38-beta_notebook に強制展開したとすると、T:\CUDA\cudadriver_2.3_winvista_32_190.38-beta_notebook\Display\NVDM.INF ( Fig7-a )。


Fig7-a. T61 では NVDM.INF を指定する

T61p では NVBL.INF を指定する。ファイルの場所は T:\CUDA\cudadriver_2.3_winvista_32_190.38-beta_notebook に強制展開したとすると、T:\CUDA\cudadriver_2.3_winvista_32_190.38-beta_notebook\Display\NVBL.INF ( Fig7-b )。


Fig7-b. T61p は NVBL.INF を指定する

INF ファイルを指定したら OK ボタンを 2 回クリックする。すると、「このハードウェアのために(ry」で表示されるデバイスリストに Quadro NVS140M が表示されるはずだ。T61p の場合は Quadro FX570M が表示される ( Fig8 )。T61 の場合は Quadro NVS140M を、T61p の場合は Quadro FX570M を選択した状態で「次へ(N)」ボタンをクリックする。


Fig8. 更新されたデバイスリスト

お約束の警告ウィンドウ Fig9 が表示されるが、かまわず「はい(Y)」をクリックしてドライバをインストールする。書名があろうがなかろうが、落ちるときは落ちるし動くときは動くのだ。


Fig9. ドライバの警告「署名がないっすよ?」

なお Vista ではドライバの署名のチェックが厳しくなったのか、実に親切なことに Fig10 の警告をもう一度表示してくださる。あまりにも親切な警告をいただきまことに恐縮なのだが、率直に言って余計なお世話である。わたしの経験上だが、署名されていてもオチまくる腐ったドライバもあれば、書名がなくても安定して動作するドライバもある。こんなくだらないものをぽんぽん表示するから Vista はいつまでたっても普及しないのだ。

署名の有無なんぞ無視していい。「このドライバソフトウェアをインストールします(I)」を選択する ( Fig10 )。


Fig10. ありがたすぎて涙が出てくるくらい邪魔な 2 度目の警告

ドライバのインストールが完了すると Fig11 が表示されるので Thinkpad を再起動する。


Fig11. インストール終了

再起動すればドライバのインストールは完了だが、NVIDIA コントロールパネルは起動しない。起動しようとしても version mismatch とエラーが出て終了してしまうのだ。こちらの問題はまだ解決できていない。

| | コメント (0) | トラックバック (0)

2009/11/16

[ Thinkpad ] Thinkpad には CUDA がインストールできない

現在使用している Thinkpad T61 はグラフィックチップとして Quadro NVS140M が載っています。このチップは GPGPU としても使用できるため、CUDA 開発環境を整えて CUDA プログラミングを試してみようと思いました。

CUDA の開発環境を整えるには、以下3つのパッケージをインストールする必要があります。

  • CUDA Driver
  • CUDA Toolkit
  • CUDA SDK

しかし、実際に上記パッケージをダウンロードしてインストーラを起動すると「対応するハードウェアがない」とエラーが表示されてインストールできません。

調べてみると、インストーラが「製品サポートリスト」をもっていてそれをチェックしているらしく、Thinkpad だと判明すると蹴られてしまうようです。Thinkpad には Quadro NVS シリーズが載っていますが、Quadro NVS シリーズのドライバダウンロードページの製品サポートリストを見ると Thinkpad は例外とされています。

せっかく CUDA プログラミングを試してみようと思ったもののインストールすらできず。

Mini PCI-E スロットの制限に続けて CUDA 開発環境が作成できない問題が発覚。VisualStudio2010 の System Requirement を満たさないこともあり、開発者が使うノート PC としては Thinkpad はもう厳しいのかもしれません。

Thinkpad の開発者さんと会う機会が得られれば今回の問題も伝えるつもりですが、解決が難しいようならば Thinkpad 以外のノート PC を探すしかないかもしれません。

追記
VAIO も富士通のノートもダメっぽい・・・
CUDA の実行に必要な nvcuda.dll 本体は expand コマンドを自前で叩けば抽出できるのですが、これを %systemroot% に突っ込むだけじゃだめだろうなぁ・・・。依存関係が解決できなくてシステムが飛びそうな気がする。

2009-11-17 0:30 追記
CUDA driver はインストールできた。弾くのはインストーラでのみ行っているので手動でインストールすればいい。以下手順

まずCUDA プログラミングツールキットダウンロードページから CUDA ドライバ ( cudadriver_2.3_winvista_32_190.38_general.exe ) をダウンロード。ファイルは自己解凍 7-zip 形式なので、適当なアーカイバを使用して強制展開する。

次に、デバイスマネージャのディスプレイアダプタの下にある NVIDIA Quadro NVS 140M のプロパティを開く。ドライバタブ→「ドライバの更新(P)」→「コンピュータを参照してドライバソフトウェアを検索します(R)」→「コンピュータ上のデバイス ドライバの一覧から選択します(L)」→「ディスク使用」→「参照」の順にボタンをクリックし、 INF ファイルの場所の入力を求められたら、先ほど強制展開したフォルダの中にある NV_DISP.INF を選択して「開く(O)」ボタンクリック。

モデル欄にデバイス名がずらずら表示されるが、NVS140M はない。海外の Thinkpad Forum の情報を参考に FX 570 のドライバをインストールした。インストールする前に警告が表示されるが、全力で無視。再起動すると強制インストールした FX570 のドライバがロードされる。なお、当然のことながらディスプレイユーティリティ ( GUI でいろいろ設定するツール ) はインストールされない。

2009-11-17 追記
CUDA driver をいれる方法は別エントリにまとめました。

| | コメント (0) | トラックバック (0)

2009/11/13

[ Visual Studio ] Linux 用アプリ作成 add-in

Novell has launched a new add-in for Visual Studio that will allow Windows developers to test and deploy their .NET applications on Linux.
( Novel が開発した VS アドインを使うことで、Windows の開発者も .NET アプリの Linux 用パッケージの作成とテストを行えるようになる。)

( Test, package .NET apps for Linux with Visual Studio add-in, ars technica, Ryan Paul, 2009-11-11)

Novel から VisualStudio のアドイン MonoVS がリリースされました。

このアドオンを使うことで、VisualStudio 2008 で Linux 用パッケージの作成が行えるようになります。

Windows / Linux 両方で使えるクロスプラットフォームアプリを作成するのがかなり楽になりそうですね。

動作環境は Windows XP, Vista, 7 ( x86 でも x64 でも OK ) + VS 2008 SP1 ( Pro or Std )。
残念ながら Express Edition では動作しないようです。
また、VS2010 にも未対応の様子。

Reference
Test, package .NET apps for Linux with Visual Studio add-in
Mono Tools for Visual Studio

| | コメント (0) | トラックバック (0)

2009/11/03

[ Linux / 備忘録 ] make install したソフトを Paco で削除する

Unix 系の OS では「自分でビルドして使ってね」というソフトが少なからずあります。
自分でビルドするといっても、大抵は configure -> make -> make install するだけなのですが、この方法には大きな欠点があります。

そう、簡単にはアンインストールできないのです。

make uninstall があるソフトもあることはある (*1) のですが、これを実行するためにはソースコードを取っておかなければ (*2) なりません。make uninstall ができない場合は、Makefile を解読して (*3) どこにファイルが放り込まれたかを調べながら手動で削除しなければなりません。

何かいい方法はないものかと探していると、paco なるものを見つけました。
paco は pacKAGE oRGANIZER の略らしいです。

paco のインストール

paco のソースをダウンロードします。最新版は 2.0.7 です。
ダウンロードしたファイルを展開し、作成されたディレクトリに移動します。あとは↓のコマンドを打つだけ。

$ ./configure
$ make
$ sudo make install
$ sudo make logme

最後の "sudo make logme" は paco 自身のインストールログを記録し、アンインストールできるようにするものです。paco を削除する予定がないなら実行しなくても問題ありません。

2009-11-11 追記
make で "No package 'gtkmm-2.4'" というエラーが出てしまう場合は、下記コマンドで libgtkmm をインストールしてください。

$ sudo aptitude install libgtkmm-2.4-dev

paco の使い方

ソフトをインストールするときは、make install の代わりに以下のコマンドを実行します。package name の部分はインストールするソフト名に置き換えてください。

$ sudo paco -lp package_name "make install"

アンインストールは以下のコマンドを使用します。package_name の部分はアンインストールするソフト名に置き換えてください。

$ sudo paco -r package_name

上記コマンドを実行した場合は、共有ライブラリの削除の際にはどうするかをユーザに問い合わせるようになります。他で使っているかもしれない場合は残しておきましょう。なお、共有ライブラリであっても問答無用で削除する場合は以下のコマンドを実行します。

$ sudo paco -r --remove-shared package_name

(*1) ほとんどの場合 make uninstall と叩いても「そんなものないよ」となりますが。

(*2) 全部取っておかなければならないというのは稀。でもログは取っておく必要がある。しかし、ログさえも出力しない素敵なソフトもある。

(*3) --target とか --prefix でインストール先を指定できるものでも、指定していないディレクトリにファイルを突っ込んでくださる大変親切なソフトも存在する。

Reference
paco - pacKAGE oRGANIZER

| | コメント (0) | トラックバック (0)

« 2009年10月 | トップページ | 2009年12月 »