体力,気力,ときどき知力

情報系大学院生 兼 HPC系ソフトウェアエンジニアのメモ書き.やったことを貼って後日にコピペ再現するために書いているので新規性・汎用性・芸術性は考えてません.数値計算,高精度演算,SIMD, vim, Linuxなど.

Android端末を何とか仕事用にする[Dropbox, officeアプリ]

AndroidタブレットのXeparia ZとOptimus Padを持っているが,どうしても動画とか画像とか以外の処理しかしていなかった.

基本的に自分の偏見として,Android端末は情報の受信はできるけど,加工とか作成っていう送信は出来ないとずっと思っていて,AndroidのノートPCが出ても買う気が全く起きなかった.

プリインストールのofficeアプリも何だか重いし,Android版のDropboxは逐次ダウンロード形式だからネットに繋がないとファイルが見れないし.

これでは電車の中とかで手軽にデータを見たりできないし,USBなんか刺したくないから結局ノートPCを取り出す羽目になって嫌だってことで,色々調べて,2つのアプリを発見した.

 

Androidの内部ストレージにDropboxを同期する:DropSync

500円だか600円位するんだけど,Androidの内部ストレージのフォルダを指定して,一定時間おきにDropboxのフォルダと同期する.

これでオフライン環境でも何とか仕事のデータが手に入る.

フリー版はDropboxの同期するフォルダを1つしか選べないのが欠点で,それでもいい人はFreeでいいのかもしれない.

 

Android用officeアプリ:AndrOpen Office

Open OfficeがついにAndroid向けに登場.PC版のと同じで

●Writer(文章)

●Calc(表計算)

●Impress(プレゼンテーション)

●Draw(図形描画)

●Math(数式)

●Base(データベース)

から成り立ってて,excelデータからグラフも作れたし,ソフトウェアキーボードでWordも書けた.当然日本語も大丈夫.もちろんFree.

 

結構この2つとAdobeのリーダーでも入れれば仕事用データが触れるんじゃないだろうか.

それでも,結局本格的に仕事がしたかったら今はUSBのマウスとかキーボードを頑張って持ち歩くしか無いけど,Clambookとかが発売されたらAndroidを仕事で使うことも何とか考えられるようになるんじゃないだろうか.

Clambook (発売日未定?)

http://gori.me/gadget/42026

日頃なにか便利なLinuxコマンドはないかと探すために

英語読むのは面倒だし,IT-Proとかはコマンドが全部載ってるわけじゃない気がする.

暇つぶしにLinux(Unix)のコマンドを眺めて有用なのがあれば覚えるために,良いサイトを見つけたので貼っておく.

最近のLinuxだとデフォルトで入ってないコマンドもあったけど,詳しい&便利

http://x68000.q-e-d.net/~68user/unix/prgmemo.html

OpManagerで楽に監視サーバの構築

監視サーバを作ると馴ればsmtpnagiosとかが一般的だけど,多分サーバを構築するのに1-2時間くらいかかる.面倒くさい.

生死くらいしか確認しないけどpingをcronで打つのは原始的な気がして,windows用のフリーソフト・OpManagerを使って監視サーバを作っている.

http://www.manageengine.jp/products/OpManager/

からOpManagerの無料版をダウンロードすればすぐに開始できる.

インストーラ落としてダブルクリックでインストールするだけ.

無料版は監視対象が10個まで&1ユーザしか作れないけど,自宅とか研究室レベルなら問題ない.機能は基本的に同じ.

立ち上げるとWebサーバが上がって監視状況をチェックできる.設定もWebブラウザで行う.ちゃんとnagiosと同レベルのことも設定をすればできる.

 

細かい設定は以下のサイトを参考にした.

http://www.atmarkit.co.jp/ait/articles/0609/20/news122_2.html

OpenCLのCPU版をLinuxに導入

OpenCLを導入してみた.GPUはよく分からんのでCPU版.Xeon Phiでも動くみたい.

まずは以下からSDKのVersion XE 2013 R2を落としてくる.Xeonだけって書いてあるけどCPUでも動いた.(i7-2600k)

http://software.intel.com/en-us/vcsource/tools/opencl

# wget http://registrationcenter.intel.com/irc_nas/3555/intel_sdk_for_ocl_applications_xe_2013_r2_sdk_3.1.1.11385_x64.tgz

で,解凍

tar xzf intel.........tgz

 

そうするとREADMEが入ってるので,後はもう簡単.

CPUだけinstallしたかったら(僕はこっちでやった)

sudo sh ./install-cpu.sh

Xeon Phiもやりたかったら

sudo sh ./install-cpu+mic.sh

 

なんかよく分からんのをyumで落とす.

# sudo yum install *base*.rpm *intel-cpu*.rpm

 

なんかすでにインストールされてるとか警告とか色々言い出したけど,

/opt/intel/opencl/

っていうのができていたので満足.肝心のヘッダファイルは

/opt/intel/opencl/include/CL

に入っていたので,取り敢えず今まで動いていた適当なCコードに

#include<opencl.h>

をくっつけて

g++ test.c -L OpenCLI -I /opt/intel/opencl/include/CL

ってコンパイルしたらエラーは吐かなかった.

後はCLコードを書くだけ!めんどいからそれは今度!

[メモ:調べるの込みの本日のトータル時間:25分くらい]

研究室のだれか!僕のマシンで出来るようになったと思うので誰かやって!

 

そういえば当然だけどGPUとかやるならnvidiaとかAMDから追加でドライバ落としてこないといけないみたい.

一応Geforce GTX560Tiが入っていたはずなのでいつかそれを動かしてみようと思う.

後はあれだ.Haswell買ったからintel Graphics(?)も使えるのかな.Irisだっけ

関東GPGPU勉強会で受付嬢してきた

タイトルの通り,第3回関東GPGPU勉強会に参加してきた

http://connpass.com/event/3980/

で受付嬢してきた.嬢じゃないけど.

 

知り合いの先輩が主催だから参加したんだけど,途中抜けしちゃったのと,自分がCPU屋っていうアレであんまり分からなかった.無念.

そういえば最近のAdobePhotoshopとかはOpenCLで書かれてるんだって.すげー.

どうやってGPU動かしてるのかと不思議に思っていた.

 

OpenCLもいつかやってみたいですね.環境整えるのがちょっと面倒くさそうだけど.

yumで入らないかな.yumで.

cygwin独自のコマンド

ctagsを公開するとかeclipseで遊ぶとか言いながら全然やれてない現実に泣きながら,取り敢えずcygwinまとめ.

cygwinの独自コマンドで僕が使うのは3種類.

 

1) cygstart

拡張子ごとにwindows側が決めているソフトでファイルを実行

cygstart hoge.txt     //自分の環境ではnotepadが起動

cygstart fuga.docx  //自分の環境ではmicrosoft wordが起動

 

2) getclip

windows側のクリップボードを標準出力に出力

getclip >> hoge.txt

getclip | grep fuga > fuga.txt

 

3) putclip

標準出力をwindowsのクリップボードに出力

cat hoge.txt | putclip

 

[外伝]

cygwinのyumとかapt-get的なコマンド,"apt-cyg"

確かwgetか何かで落とさないと使えないけど,apt-cyg updateとかが使えるようになる.

apt-cygはググればすぐ出てくるのでほかのサイトにまかせてねる.

vimを便利に使おう.[ctgasとは]

ctgasは,ソースコードの関数,マクロ,変数,クラスとかのインデックスを作成するプログラム.

yumとかでも落とせて,多くのテキストエディタでctagsのインデックスを利用して,宣言箇所にジャンプとかが便利にできる.ctagsが使えるエディタでWikiに乗ってた僕の知っているエディタは,

EmacsとXEmacs

・Gedit (リンク先のgedit-symbol-browser-pluginでサポート[1])

・Notepad++ (OpenCTagsプラグインでサポート)

・Vi (及びElvis、Nvi、Vim、vile等の派生版)

vimはプラグイン無しで利用できて便利.プロジェクト単位でも使える.

 

使い方は今日か明日にまとめる.