Diary/2008-5
前の月<< 2008-5 >>次の月 | ||||||
---|---|---|---|---|---|---|
日 | 月 | 火 | 水 | 木 | 金 | 土 |
1 気づいたら | 2 結婚式二次会の準備 | 3 | ||||
4 | 5 子供の日 | 6 打ち合わせな日 | 7 締切ぎりぎりに | 8 反動? | 9 | 10 結婚式 |
11 家さがし | 12 虫歯じゃなかった | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 howmに移行 | 21 歯医者 | 22 大岡山にきたのに | 23 CellVM | 24 子供の面倒 |
25 町田をぶらぶら | 26 SPUプログラムではまる | 27 パラレルでシリアル | 28 UARTが恋しい | 29 ロジアナ | 30 RubyでUUSBD.DLL | 31 |
Diary/2008-5-30
RubyでUUSBD.DLL
を叩いている人いないかな?Subversionのmime-typeの削除
svn propdel svn:mime-type hoge追加したテキストファイルがバイナリだと認識されてしまったときとか.
Diary/2008-5-29
ロジアナ
最近LA-800を使っていますが,かなり五月蝿い.ファンを交換したら,静かになってくれるのだろうか?
ところで,信号の測定が完了した瞬間にWindowsが落ちてがっかり.
Diary/2008-5-28
UARTが恋しい
SUZAKU-S|http://suzaku.atmark-techno.com/series/suzaku-s]のスタータキットを使って汎用IOでシリアルな[液晶ユニットを叩く.とりあえず,LEDを叩くためのキャラクタデバイスがあったので,
そこ経由で叩いてみたところ,1bit送るのに60msほどの時間が...
ソースを見てみると文字列でON/OFFのコマンドを取得して,
それをstrtoulで数値に変換して,というまどろっこしいコードに.
そりゃ遅いわな...
しかたないので,結局簡単なデバドラ書くことに.
しかし,精確さに欠けるのか,なかなかに怪しい挙動.
ちゃんとタイマ使うか...
いや,もう諦めてUART使いたいよう.
Diary/2008-5-27
パラレルでシリアル
PCのパラレルIOでシリアルインターフェイスな液晶ユニットを叩く実験.TTLレベルにしておいてくれればいいのに,
ちゃんとRS232信号になっているデバイスなので,+-な信号が必要.
たった1本のRS232信号作るために
トランシーバICを使うのは負けな気がするものの,
面倒なので使うことに...
で,プログラムを適当に書いたら,案の定,同期とるのが難しい.
(/ 1000000 19200) = 52で,usleepで寝てみるが
諸々のオーバヘッドが生じるので,適当に値をずらして実験.
基準時計と比較で寝る時間を調整すればいいのでは,
というアドバイスもらったけど,どうしたものかな.
飲み会
場所が決まって,ほっと一息.想定されていたであろう金額より,かなりお安めになってしまったけど,
店の選択理由がはっきり言えるから,いいかな.
LPC-CF-CLT
ふらっと立ち寄ったソフマップで780円で売っていたので購入.「動作保証なし」が心配だったけど,ちゃんと動いてくれてよかった.
これで,Zaurusのネットワーク環境が改善か!?
Diary/2008-5-26
SPUプログラムではまる
いろいろいじっている過程で,PPEとSPEで共有するデータのアライメントを正しく確保していたコードがなくなっていた.
そのため,ちょっとした命令の追加で
コードが動かなかったり,動いたり.
メモリ配置を簡単にチェックしてくれるツールがあればいいのにな.
どれがPPEとSPEで共有するデータなのか判定するのが厄介か?
うかうかしてたら
タスクが山積みになっている!!howm2twitterが欲しい
なぁ.どうしよう.簡単な管理方法としては,
Twitterに投稿したいメモにタグをつけておいて
投稿したらタグを消去するようにする,くらいでいいのかな.
Diary/2008-5-25
町田をぶらぶら
してきた.山形物産点をやっていた.
「ワインの試飲やっています」と書かれていたが
店員さんが忙しそうで,とても頼める雰囲気ではなく断念.
飲んでみたかった.
Diary/2008-5-24
子供の面倒
今日は子供の面倒をみる予定にしていた日.で,妻は一人でおでかけ.
午前11時ころに妻がでかけると案の定,子供は泣く.
しばらくしてやっと泣きやみはじめたなぁと思っていたら
妻が傘を取りに戻ってきたのを見て,また泣く.
よっぽどお母さんがいないと不安なんだなぁ.
その後は,公園に連れていって遊ばせて,
ご飯食べさせて,昼寝させてという妻のレシピ通りの一日.
Diary/2008-5-23
CellVM
論文読み- ヘテロジニアスアーキテクチャの上に均質なVMを作る
- Java Threadを各コアに分配する
- 現在の実装では,8スレッドを8コのコアに分配する
- SPEではCoreVMが走る
- PPEからのinterventionとassistanceなしにJavaのbytecodeを実行
- ローカルでは実行できないときだけShellVM(PPE)に助けを依頼(=> cooperative interpretation; co-interpretationと呼ぶ)
- new objects(array含む)を作るopcodeは,ShellVMで実行される
- すべてのJava heapはメインメモリにあるから
- native method実行もShellVMで扱われる
- 普通,そんなにない
- Java heapを操作することになる(array copyingとか)
- JavmVMの拡張
- direct threaded interpreter
- 各バイトコード命令は対応するコードブロックのアドレス
- machine-level分岐の数/opcodeが削減される
- opcode rewriting: to store resolved information in the operand of an instruction(Sec 3.2)
- direct threaded interpreter
- SPEのL.S.を効率良く使うことが目標
- DMA転送は数百サイクルのレイテンシが必要
- 各CoreVMは,現在の状態を表わす内部レジスタを管理する.
- ローカル変数へのポインタ,stack top pointer,現在のフレームへの参照
- method実行毎にJava frame作る
- method codeはメインメモリ
Tech talk: Gauche Scheme
http://jp.youtube.com/watch?v=WEBOdWyGE3Eとか見る.直前の式の結果をスタックに積まずにレジスタに入れるっていうのは,
schemeだから,大きな効果があるのかな?
Escape analysis for object-oriented languages: application to Java
論文読みEscape analysis [27, 14, 5] is a static analysis that determines
whether the lifetime of data exceeds its static scope.The main
originality of our escape analysis is that it determines precisely the
effect of assignments, which is necessary to apply it to object
oriented languages with promising results, whereas previous work [27,
14, 5] applied it to functional languages and were very imprecise on
assignments. Our implementation analyses the full Java(TM) Language.We
have applied our analysis to stack allocation and synchronization
elimination. We manage to stack allocate 13% to 95% of data, eliminate
more than 20% of synchronizations on most programs (94% and 99% on two
examples) and get up to 44% speedup (21% on average). Our detailed
experimental study on large programs shows that the improvement comes
from the decrease of the garbage collection and allocation times than
from improvements on data locality [7], contrary to what happened for
ML [5].
@article{320387, author = {Bruno Blanchet}, title = {Escape analysis for object-oriented languages: application to Java}, journal = {SIGPLAN Not.}, volume = {34}, number = {10}, year = {1999}, issn = {0362-1340}, pages = {20--34}, doi = {http://doi.acm.org/10.1145/320385.320387}, publisher = {ACM}, address = {New York, NY, USA}, }
Escape analysis for Java
論文読みThis paper presents a simple and efficient data flow algorithm for
escape analysis of objects in Java programs to determine (i) if an
object can be allocated on the stack; (ii) if an object is accessed
only by a single thread during its lifetime, so that synchronization
operations on that object can be removed. We introduce a new program
abstraction for escape analysis, the connection graph, that is used to
establish reachability relationships between objects and object
references. We show that the connection graph can be summarized for
each method such that the same summary information may be used
effectively in different calling contexts. We present an
interprocedural algorithm that uses the above property to efficiently
compute the connection graph and identify the non-escaping objects for
methods and threads. The experimental results, from a prototype
implementation of our framework in the IBM High Performance Compiler
for Java, are very promising. The percentage of objects that may be
allocated on the stack exceeds 70% of all dynamically created objects
in three out of the ten benchmarks (with a median of 19%), 11% to 92%
of all lock operations are eliminated in those ten programs (with a
median of 51%), and the overall execution time reduction ranges from
2% to 23% (with a median of 7%) on a 333 MHz PowerPC workstation with
128 MB memory.
@article{320386, author = {Jong-Deok Choi and Manish Gupta and Mauricio Serrano and Vugranam C. Sreedhar and Sam Midkiff}, title = {Escape analysis for Java}, journal = {SIGPLAN Not.}, volume = {34}, number = {10}, year = {1999}, issn = {0362-1340}, pages = {1--19}, doi = {http://doi.acm.org/10.1145/320385.320386}, publisher = {ACM}, address = {New York, NY, USA}, }
Diary/2008-5-22
大岡山にきたのに
担々麺が食べられなかった...無念.タスク自動並列化
関数単位で分割することにこだわる必要は全くないな.まずはCFGでも,じっと眺めてみるか.
マルチコアマシンとベクタマシンの違い
客がたくさんいる...でいいのか?マイクロソフト
新宿にあるマイクロソフトにミーティングで.受付のお姉さんのキーボードも
マイクロソフトのボタンのたくさんついたキーボードでびっくり.
Diary/2008-5-21
歯医者
虫歯にしてしまった歯の治療に.前回,虫歯部分をがりがり削られていたので
今回でおしまいかと思ったら,
とりあえず根っこを保護するふせをして,今日の施術は終了.
ちゃんとした形で完了するまでには,
あと4ステップほどが必要だそう.
しかし,処置してもらった箇所から,
若干征露丸っぽい味が染みだしてくるのだが,いいのだろうか?
気になって舌でさわるのがよくないのかな.
howmからの日記の更新
とりあえず,現存のWikiのデータとかChangeLogなメモデータを引越すためと,Rubyスクリプトを使っているけど,
頻繁に更新するならemacsから呼べる方がいいな.
Rubyスクリプトをemacsから呼び出してもいいけど,
せっかくなのでEmacs-Lispで書くか?
こうしているとRSSが
意味を無さなくなるのか...素数判定
ベンチマークに使おうと思ってバカに書いたのに速かった...たくさん回すか.
大学の学生募集
は,営利活動らしい.いわれてみたら,そうだよなぁ...
たいしたことないことばかり
なのかもしれないものの,決断を迫られる事項が多い.メールを書くのは疲れる
Diary/2008-5-20
howmに移行
Wikiでしばらくスケジュールを管理していたものの,ネットワークのないところで予定を聞かれて返答に困ることも多いので,
ローカルで管理すべく,howmへ移行.コンピュータ間共有はSubversionで.
とはいえ,スケジュールは,妻とかに見てもらうと便利なので,
howmからスケジュールだけをWikiデータに反映するスクリプト書いたり.
ついでに,これまでChangeLogで取っていたメモや,
日記(このエントリ)もhowmで書いたものから生成するように.
同期に関するうまい方法が,あまり思いつかなかったので,
適当に上書きするというお手軽実装♪
並列プログラミング
今さら「はじめてのマルチコアCPUのための並列プログラミング」を読んで勉強ipfilterとipnat
IPFilterを使ってフィルタリングしている計算機でNATしようとしてうかつに,natdを使おうとしたら,
ipfwとの関係でいろいろとごちゃごちゃとはまってしまった.
結局ipnatを使ってすっきり解決.
Diary/2008-5-12
虫歯じゃなかった
数日前から、左上の一番奥の歯(親知らず)がずきずきしていた。ちょっとうがいをしようと常温の水が触れただけでも涙が出るほどの痛み。
きっとこれは、ひどい虫歯になってしまったに違いないと、
歯医者さんにいって、みてもらったのだが、
どうも歯医者さんが不思議そうな顔で口を覗き込む。
結果虫歯による痛みではなく親知らずが大きくなりすぎて、
下の歯とあたるたびに動き、靭帯を損傷しているとのこと。
難しいことは、よくわからなかったが、
とにかく親知らずを抜けば治るとのことで、そうしてもらうことに。
で、待つこと30分。レントゲンとったあと、
さくっと抜いてもらいました。
話には聞いていたけど上の歯って簡単なのね。
Diary/2008-5-11
家さがし
思い立って、不動産やさんにいってみることに。奇しくもお祭り騒ぎに巻き込まれてしまって道中、往生した。
ちなみに考えていた予算は、ずいぶん甘いようで残念。
分譲マンションとか買う気は全くなかったのだけど
求めているスペックの物件は、分譲が多いらしい。
まあ、だらだらと賃貸でリスクを抱えるよりは、
売り切ったほうが楽なのかなぁ。
いい、物件がみつかりますように。
Diary/2008-5-10
結婚式
高校剣道部の同級生の結婚式に福岡まで。実に250人クラスの結婚式。
高砂席の左付近には、幸せそうな二人やスピーチをする人を
アップにするスクリーンまであってびっくりした。
やはり社会で生きるというのはこういうことなのだろうか。
幸せそうな二人が見れ、また久し振りに同級生に会えて満足でした。
「女ながら」「女にしておくのがもったないほどの」
って、褒め言葉のようではあるけど、なんか男性社会を実感させられる言葉使いじゃないのだろうか?
もし、スピーチを頼まれることがあれば(なさそうだけど)
○○君は、「男にしておくのがもったいないほど気配り上手で」とか
言ってみようかなとか、思った。
モノレール
なんとなく、実に8年ぶりくらいにモノレールにのって羽田空港へ。そのモノレールの快適なこと。
時節がら人がすくなかったということもあったのかもしれないけど
なんとなく開放感あるモノレールは清々しい気分で空港へ行ける。
Diary/2008-5-8
反動?
昨日の反動からか、なんとなく虚脱感。やる気がでないまま、たまっていた雑用に手をつけたり。
やっぱりコンスタントに高いパフォーマンスで仕事できるようにならないと。
そういえば、この間T工大の学生さんが論文締め切り後に
針に行ってきたと言っていた。効くのかなぁ。
とりあえず駅前にあるメイドさんの足マッサージとかに行ってみるか?
誰か一緒に行きません?
Diary/2008-5-7
締切ぎりぎりに
とある書類の締切日でした。提出先は、少し離れた事務のところ。提出時間16:00。
で、ぎりぎりまで書類を修正したり
印刷しようと思ったらうまくいかなかったりと、
お決まりのトラブルもあって、出発したのは15:45。
職場の電動自転車に乗ったはいいけど、
充電池を忘れてしまいかえって重いだけの自転車を
必死でこいで行きました。
ついたときには、もう肩で息をするどころではなくて
軽い吐き気とめまいも...事務の人に変に思われたんだろうなぁ。
次からは、せめてあと30分早く仕事を終えよう。
Diary/2008-5-6
打ち合わせな日
書かなければならない書類とミーティングのために職場へ。書類書いていると、学生さんが来たので急遽ミーティング。
やっぱり人の研究の話を聞くのは楽しい。
で、その後は、予定通りのミーティング。
方向性や分担なんかが決まって、まずまずの充実感。
ちなみに、今回はたまたまいい感じの時間で終わったけど、
次のミーティングのときには、
ぜひ終わりの時間を決めましょう。
新YAD
というわけではないが、これをベースに学生さんプロジェクトが。安定したキャプチャを実現し、キーボードなども統合して
とってもコンパクトなものを作る予定です。
Diary/2008-5-5
子供の日
というわけではないが、家でのんびり。遊びにきた弟とその彼女さんと寿司を食べたり、
彼らが子供と遊んでくれているのを眺めたり。
そんなのんびりした一日。
そういえば、何も考えてなかったけど
彼女さんは魚介類、平気な人だったのだろうか。
Diary/2008-5-2
結婚式二次会の準備
大学時代にお世話になった湯川さんの結婚式の二次会の余興の準備。とあるビリーズブートキャンプにネタを挿入したムービーを作成し、
それにあわせて踊るという企画...ムービー作成が大変だった。
やはり、まだ新しいiMovieのインターフェースに慣れない。
どうして、昔のインターフェースやめちゃったんだろう?
動画管理と、動画編集を無理やりひっつけたような管理方法も
編集方法もまったく気に入らない...
でもまあ、なんとかやっているうちに
やりたいことはできるようになってよかった。
結婚式、結婚式二次会の演出ムービーが欲しければ
引き受けますよ...なんてね。
Diary/2008-5-1
気づいたら
5月。今年も1/3が終わりました。4月もいろいろとやらないといけないことも多かった。
振り返るといろいろな事をした気がする一方で
慌ただしく過ぎていった。
5月はGWでなんとなく世間がうきうきしているのに
ほだされていると何もしないまま
すぎていってしまいそう。
書かなきゃいけない書類をさっさと仕上げて
次のための時間を作らないと。
Copyright (c) 2001-2008 Takefumi MIYOSHI, All rights reserved