星期三, 11月 04, 2009

This is it.

昨天明明在忙到哭爸的狀況下,我還是跟 fire7617 去了一趟電影院看 Michael Jackson 的最後一場演唱會電影。

雖然我最近聽的都是 Perfume ,但是我依然去看了這場對我而言很重要的電影,小時候在父親的影響下,開始接觸 MJ ,這邊不想寫我對他很景仰,但是忘了在那邊看,有段文字寫 "在這樣子的時空背景下所能創造出的天王,大概只有 MJ,而在這時間之後,很難會再有這樣子的人物產生了。" 對我而言,可能只有那一句 The King of Pop - Michael Jackson,很幸運的可以看到這樣子的電影。

前幾天在 ptt PLT 版看到 scm 老師徵人,我一時頭昏就衝了,老師也很快的回信,我卻懷疑了,我怕我會做不好,當炮灰去送死之類的,但是我在 Michael Jackson 的電影一開始看到,很多舞者知道演唱會要徵人,就衝去了,當然不盡然每個人都會美夢成真,但是,至少給我一種感覺,不要讓自己的人生過的後悔,我不知道,所以我會努力的做,做到我撐不下去為止,我不知道我的極限在那裡,或許不存在,或許無法超越,或許已超越了,這些都不是這麼重要,我只想做好每一件事,這樣子就夠了,感謝 scm 老師給我這樣子的機會 !


---
Josh Ko, 我會努力的,不會浪費這次機會。

星期二, 10月 27, 2009

研究雜想

或許以後,這種雜想文而亂無章法的文章也會出現在這裡。

如何達成 hardware parallelism 的目標,最基本的答案是 pipeline ,但是因此產生了 data hazrd, control harzrd, struct hazard,其實這三種 hazard 並不一定會存在,端看設計者如何設計,而每個 program 會存在不可平行的部分,如何跨過不可平行部分,變成一種挑戰。

如果我們先為一個問題建立模型的時候,其實我們是想要解決在 pipeline 下的 data dependency & control dependency ,進而展出種種的方法,所謂的 data dependency 簡單的來說,當你要用時,上一個在使用的指令還沒有使用完(所以會有 RAW, WAW, WAR),進而造成 data hazrd,解決方法以 Computer Organziation and Design 提出的 data forwarding 是最簡單的方法,這是在硬體的方法,其實在現有的 CPU 架構,一個 instruction 進入 pipeline 時,會被拆成數個 microinstruction 來執行,也就是說,如果我們在 Compiler 所解決的 data dependency ,進入 hardware 這層是否會有用,不知道(因為我沒有研讀這方面的資訊),hardware/ software solution 並不一樣,但是是為了相同的目的而存在的。而 control dependency 是為了不要讓 pipeline 空閒,提高 CPI,其實真的是如此嗎,我不覺得,如果把程式的指令視為可平行的部分,那麼 control branch 是不可平行之處,也就是說,就會跟沙漏的中間點一樣,停在那裡,要過那邊之後,又是一個較大的可平行區,解決 control branch 並不單單只是為了那個 stall cycle 而己,最終目的是為了追求高度平行化。

也就是說,就一個現在的架構上再加入 VLIW 與 Superscalar 來討論會產生怎麼樣的模型與問題,要解決這三種的 harzard 分別為何,找到問題就幾乎等於找到解法,所以他媽的我一開始就搞錯方向了,搞懂架構,猜出問題才是主要的解決方法,建立一個主架構,而 hardware 的 out-of-order execution, dynamic branch prediction, hardware specluation 與 sofware(compiler) 的 sofware pipeline, loop unrolling, trace scheduling, 等等,這些方法自然能貼到問題所建立的架構上,因應環境而提出解法。


---
好亂啊...

星期四, 10月 22, 2009

最近

我有空寫 blog 竟然是上課的時候 XD。

最近難得三個禮拜回家兩次,但是接下來什麼時候回家我也不知道 XDXD。每天都是看書,處理雜事,忙碌,從 Computer Organization 看到 Computer Architecture,連續兩個禮拜的腦子中充滿了 parallelism 和 ILP (Instruction Level Pararllelism),一方面驚嘆於 Computer Architecture 的架構美麗,一方面也對自己的無知感到嘲笑,總是要繼續努力前進才是,但是有一點覺得我是不是離 Josh Ko 說的越來越遠,到底什麼是現在的我當下想要的,其實我也不知道。

這學期當了助教,助教有助教的難處,學生也有學生的難處,總而言之,繼續做下去才會知道有怎麼樣的結果就是了,但是簡單的來說,遇到的學弟妹,有些人是想要把事情做好卻好像欠缺了一點元素,我卻不一定能幫忙,我總是會想說,我可以好好處理的,但是卻因為人太多而無法幫忙,我想,我應該會在這個禮拜之後改變做助教的風格。

其實還是很感謝 ycma 的支持,雖然我每天邊看書邊幹譙,說,靠爸,為什麼每件事都跟我猜的不一樣(其實猜的一樣我就有可能變大師,猜的不一樣證明我是普通人 XDXD),連程式都寫的很少,這對我而言是一個很好的現象,因為我總是覺得我不夠會想,背景知識不足,並不是一件好事,但是這也導致我每天幾乎沒有時間休息,我是不太後悔,每天的休息時間大概就是自己一個人躺在床上聽 Perfume (用 ipod touch XD),那是一個真正屬於我自己的時間,說來也神奇,很累的時候,聽歌或者是看 Perfume 的演唱會休息,體力和心力會慢慢的恢復,或許有時候自己真的需要一段緩衝時間吧,哈 XD

一直很想寫有關 Perfume 的介紹,最近在整理 Perfume Wikipedia entry ,希望過一段時間之後,能夠有一個較完整的呈現,上次在 blog 中放的歌是比較沒這紅的,這次來放 Perfume 的經典之作 - Polyrythm


---
結果又變成雜想文啦 XD

星期四, 10月 08, 2009

手機套

從以前開始,我從來不認為我是個念舊的人,因為環境使然,外加自己個性如此,所以我總是很自然的認識很多人,而又很自然的與很多人斷了聯繫 ... 從小到大,很常的印象中是自己一個人走著,到了高中雖然認識很多社團朋友,還是一個人走著聽隨身聽,似乎習慣了這一切。

不過這個狀況一直到了大學之後有所改變,因為在大學真的認識很多很好的朋友,而 eating, Clara 真的是很努力想要維持這段友情,讓我更覺得,或許我可以再嘗試一下,到目前為止,我還不想放棄任何事,就算我再忙再累也一樣。

現在的手機是 nokia 5200,是因為我對前一隻手機太差,在大二暑假換的手機,其實 nokia 的手機對我而言一直都是很耐操的,所以我也很樂得使用,只是已經不清楚在大三上那一天,我就隨口說說我想用手機套,eating 人就很好心的和她男友在逛街時幫我挑了一個很符合我的風格的手機套(絕對不是台客風格,雖然我個人風格有這一項 XDXD),還記得 eating 還打電話來問我說有兩到三個,覺得那一個比較好,當下的我是非常驚慌的,因為真的很少會有人買東西給我,自給自足的生活過慣了 XD 也忘了有沒有付錢,總之,這個手機套用到現在,是蠻喜歡,但是也很多感謝參雜於其中,有時候不見了也是蠻執著於找回來的,所幸現在還在 XD。

兩年多過去了,現在手機有點透逗,不過我想大概還可以用很久,大概等到不能用的時候,我會再努力找一個可以塞進這個手機套的手機吧(標準買櫝還珠的行為 XDXD)。


---
一個感謝的回憶。

星期四, 10月 01, 2009

架 wiki 雜感

這個暑假應 ycma 的要求,架了一個實驗室的 wiki ,一開始不知道要用什麼 wiki ,於是就使用了 MediaWiki ,一開始對於這種 wiki system 實在是不太熟,不過熟了之後其實很好上手,快速架了一個之後,其實還真的覺得蠻方便的,雖然中間問題不斷,我在查 MediaWiki 的問題時,都會特別列出 CentOS 的解法,不知道是很有名還是問題特別多(淚) Orz

這幾個禮拜發現,MediaWiki 的上傳檔案其實蠻亂的,一方面是我不太會用,一方面是 MediaWiki 真的很強大(換言之就是複雜),讓我開始思考是否有其他 Wiki 的解決方案,於是我就看到 FLOLAC09 所使用的 DokuWiki。

DokuWiki 是一個相當輕量級的 wiki system,架設的時候預設背後不需要任何資料庫,當然跟原本的設計理念: 當 wiki system 整個不能動的時候,希望能單靠資料夾的結構就能看出來當初架了什麼,這有好處也有壞處,DokuWiki 本身在上傳檔案的時候是沒有版本管理的,而 MediaWiki 這方面有作(不過後面是一個 Database),而 DokuWiki 在備份上也相當容易,僅把整個資料夾壓縮就備份成功了 XDXD,到其他地方再解壓縮後稍作設定即可,對於我這種對 MySQL 不熟的人相當方便(MediaWiki 背後會用到 Database ,備份時就要把 database 的資料 dump 出來),當然啦,其他地方的使用上也相對簡單。

DokuWiki 相當適合我這種懶人,也相當適用於小型網站,如果說資料很多,有數千到數萬以上的網頁的話,可能還是 MediaWiki 比較適合吧 XD? 但是我目前所要放置的資料沒有這麼多,所以我還是可以繼續懶懶的使用 DokuWiki XDXD。


---
兩個月來的心酸嗎 XD

星期五, 9月 25, 2009

Java 編程語言(第四版)

好友 Josh Ko 與 jjhou 譯的書終於出版了,不來寫一下怎麼可以 XDXD

這本是 The Java Programming Language 4/e 的中譯版,我敢推薦,因為是我朋友吧,等拿到書之後,再說吧 !


---
來買喔!!

星期三, 9月 23, 2009

TA

這個學期,因緣際會之下接了計算機組織&實驗助教 XD,我大概是誤人子弟的一個助教吧 XDXD。

這幾天其實沒念到什麼書,大概就是一直忙關於這科的事,其實第一次當助教,剛開學到第二週,我也不希望發生什麼太大的問題,雖然我一直認為我不太會處理雜務,不過這次助教給了很好的機會,所以 ycma 分配下來的事,自認為勝任愉快 XDXD,希望不會造成他太多麻煩才是,不過幸運的是,這堂課有另外兩門助教,合作應該是蠻愉快的。

其實我也蠻意外的發現,我用 LaTeX 已經可以勝任很多一般的文件了,算是好事一樁,唯獨畫圖,在 10.6 底下不能用 InkSpace,我還是得用傳說中的小畫家,真的應該好好找個時間學習畫示意圖才是,我不想每次都畫 pixmap 啊啊啊。


---
雜事學習很重要!

星期日, 9月 20, 2009

機車

我的機車兩次停在台北忘記拔鑰匙,而且沒有被偷走還被好心人放在隱密的地方,真是太感謝了 !!


---
efang 說我的運氣都用在這個地方了 XD。

星期四, 9月 17, 2009

時間

這學期的課表,時間雖然多,不過慶幸的是蠻集中的,可以把火力集中在禮拜五到禮拜二早上,專心的做長時間需要做的事,而禮拜二下午到禮拜四則專心上課和處理實驗室雜務,想的相當完美,希望也可以執行的如此完美 XDXD。第二個問題就來了,長達四天半的時間(其實可以更長),目的也該好好的規畫一下,不過目前沒有頭緒,就以後再說吧XD。


---
因為平凡所以前進。

星期二, 9月 15, 2009

New Begin

一個人,其實很難有明顯的分界點,歷史依然。

其實我也不知道什麼是新開始,只知道我在當下該怎麼做,未來才不會後悔,當初選擇留下,就是為了不要讓自己浪費時間,這個暑假努力調整作息,努力讓自己無後顧之憂,現在來看,相當幸運的,到目前為止一切順利,感謝所有人的幫助。

其實我離真正的研究還有好大一段距離,或者是說,我永遠達不到,充其量只是拾人遺穗罷了,但是更因為如此,要好好努力,脫離現在所身處的位階,對我而言才是最重要的事,我會不會因為這樣子變成一個很嚴苛冷酷的人呢? 我也不清楚

立足當下,放眼未來,不再迷惘,很多事只能且戰且走。


---
Just a begin.

當小白遇到小黑


因緣之下,朋友買了一台 ThinkPad x200,我幫她重灌時,拍下了這樣子的照片,不甚好看,小白很像在發爐一樣,不過我對 x200 讚不絕口倒是真的。


---
新開始

星期五, 9月 04, 2009

Sixpence None The Richer - Within a Room Somewhere


---
escape the pain, within a room somewhere.

星期四, 9月 03, 2009

Perfume - セラミックガール


想看看大家反應如何,自從被刷姊說過我都喜歡看日系小妹妹中了好大一槍之後,現在都免疫了 XDXD


---
不知道耶 XD

新竹散心

今天一早就搭車去新竹,拜訪好友 Clara,,中午吃飯時再與 eating 會合,吃了一間相當好吃的美式漢堡,三個人不知不覺就聊了一整天,相當的開心,或許就有如 eating 說的,會回憶到之前美好的時光,或許我不再堅持之前的想法,有些美好的時光,真的可以好好回憶,謝謝 Clara, eating 相處美好的一天。


---
非常非常開心。

星期一, 8月 31, 2009

blog 小小修改

由於我已經到了老花眼的年紀了,決定把 blog 字體調大點,然後調整 tag 為 tag clound 的型式,順便問一下,這個 blog 是否還有其他問題 XD?


---
通篇廢話 XD

星期六, 8月 29, 2009

書櫃


gwchen 老師搬家,剛好有多的書櫃可以送我,相當開心,其實一直很想買書櫃,但是摩拖車實在是不太知道怎麼把一個小型書櫃載回來,就拖到現在了,非常謝謝老師送的書櫃! 不過其實還有蠻多書是流落在異鄉或者是在學校的,書多還是蠻麻煩的,總覺得自己該去買一個 Kindle DX 了 XDXD

附帶一提,之前是這樣子過的 XD


---
睡覺的時候終於不用怕地震了 XD

星期二, 8月 25, 2009

這篇單純是抱怨文 XD。

為了要在 Linux 上跑 EDA Tool ,我先把 MacBook 重灌,然後使用 BootCamp 灌 linux,整個過程確定都對了,grub 也確定裝在該磁區了,不能開機就是不能開機,順便也讓我的 Mac OSX 不能開機,要用選的才能開機了,現在的打算是,等 Snow Leopard 出來再重灌好了,我到現在還是覺得,重灌是一件非常浪費生命的事...Orz

在 Mac OSX 上使用 VMware fusion 灌 Fedora ,在 command line 上打個指令都要數秒後才有反應,受不了改用 VirtualBox,速度上是變順了,但是 Altera Quartus II 怎麼樣就是灌不進去,我只好心一橫,現在在用 VirtualBox 灌 Cent OS,希望會成功,今天幾乎快要一整天都在搞這東西,只能唉了 ...Orz

---
抱怨終了XD

星期一, 8月 24, 2009

醒來

又是一個失眠夜,看著天空由深藍色漸漸的變淡到邊際帶有一絲絲的黃,才發覺,我很久沒有好好看著天空過了。

其實這幾年來,自己就像一個機器般投入巨大的旋渦中,我在資訊中沒有專長,興趣又過於廣泛,或許就真的有如 Josh Ko 說的一樣,而能做的只是努力讓自己活的有意義,希望可以在蘇格拉底式的詢問方式下留有一點價值。

這幾年下來,自身的想法與社會中的看法與意義不斷衝突,才發現,我並無太大的改變,而只是把有所堅持的學習與處事自我要求的更為徹底了些,但是說穿了,自己仍是一個簡單而懶惰的人吧。而寫出如此無病呻吟文字的文字更加證明了這一切(笑)。

有著太多不明白卻又想弄懂的事,專心於當下,放眼於未來,就是我所能做的。


---
有感

星期日, 8月 23, 2009

最近

聽說 The Java Programming Language 4/e 中文版終於要出版了(三年過去了...) 可以期待上市了,這次我不打算開團購,有意思的人請自行開團 XDXD。

目前人將要在 NYU Columbia CS 攻讀的 cctsai 學長非常恭喜他,雖然一直跟他不是很熟,不過總算是去美國了,好事一件,日前受他推薦日本的 Perfume,分類是偶像唱電音,老實說,我不知道什麼是電音,不過我覺得我聽的下去,歌曲也 ok ,有興趣的人可以找來聽聽看喔。

學了很久的 Python,雖然手上終於有 Python Essential Reference 3/e ,但是我想回去學 Haskell 了,學了太多程式語言,沒有專精的話,這是絕對的壞事。


---
暫記 XD

星期六, 8月 22, 2009

Mac OSX Terminal 256 color

這篇基本上是參考 yzlin 的 The Tips of Setting Workstation Environment如果是 linux or FreeBSD ,用這份簡報就很足夠哩!
不想這麼快進入正題,為什麼要用出一個 256 color terminal? 我想很大部分的原因是為了舒適度,原本的 8 色或 16 色的功能大部分像是拿來 mark 說,這個字和其他字不太一樣,至少就我看起來,原本的 8 色或 16 色看起來並不是這麼舒服,而用 256 色的時候(我在 Windows 95 就是用 256 色耶 XD),我們有比較多的選擇可以讓自己的眼睛舒服些,那怕給一個 keyword 標定為藍色,也是有差別的

在 Mac OSX 底下要用 256 color terminal 的話,請愛用 iTerm, iTerm 原生支援 256 color ,但是開下去你會感受不到任何差異 XD,不過在這邊我想說一下,iTerm 的半透明效果不要開,開了會非常的 lag,不知道是 bug 還是程式本身的問題,之後在 .bash_profile 加入

export TERM=xterm-256color
重新登入後,還是看不到任何差異,當你打 ls 的時候,ls color 已經寫死了,通常做到這邊,在 linux 底下已經看的到 ls 不太一樣了 XD,所以我們要測試的是 grep ,這個時候,我們對某個檔案做 grep --color include xxx.c就會看到

terminal 基本設定到這邊完成了
VIM
VIM 原生支援 256 color,所以只要環境支援 256 色,再找到一個 256 色的 color 的 scheme 就可以動工了(推薦 yzlin 寫的 yzlin256.vim) 把抓好的 color scheme 放入 ~/.vim/colors/ 底下,然後在 ~/.vimrc 中設定
set syntax=enable
set t_Co=256
color yzlin256
全數搞定,不過詳細的顏色設定可能還要研究一下,在 VIM 出來的成果大概如同下圖

GNU Screen
2011/09/20: 在這個時間點,已經不用自行編譯 screen,安裝 homebrew-alt 之後再行安裝 screen (輸入 brew install [homebre-alt_dic/duplicate]/screen.rb) 即可。
Mac OSX 有原生編譯好的 screen,不過很可惜的就是 256 color syntax 並沒有開啟,如果原生支援的話,在 ~/.screenrc 中寫入
#terminfo and termcap for nice 256 color terminal
# allow bold colors - necessary for some reason
attrcolor b ".I"
attrcolor i "+b"
# tell screen how to set colors. AB = background, AF=foreground
termcapinfo xterm "Co#256:AB=\E[48;5;%dm:AF=\E[38;5;%dm"
termcapinfo xterm-color "Co#256:AB=\E[48;5;%dm:AF=\E[38;5;%dm"
不過由於原生不支援,所以我們得去GNU Screen抓回來自己編譯,而編譯的選項為(參考這裡)
./configure --enable-locale --enable-telnet --enable-colors256 --enable-rxvt_osc
然後當編譯雖有一堆警告(因為 Mac OSX 用的是 utmpx.h 而非 utmp.h) 的時候很快就發現了錯誤 XD
pty.c:38:26: error: sys/stropts.h: No such file or directory
這時候開啟這個檔案一看,我們看到的是 ...
/* for solaris 2.1, Unixware (SVR4.2) and possibly others */
#ifdef HAVE_SVR4_PTYS
# include <sys/stropts.h>
#endif
我們用的應該不是 solaris ,所以移掉這幾行,編譯就可以完成了,之後執行我們自行編譯的 screen,我們應該能看到 ..(下圖的測試檔在此可以下載)

到此,iterm, vim, gnu screen 都有 256 色啦 !
如果有常看 man page 的需求,可以將下列設定寫入 ~/.bash_profile 中

# colorful man page
export PAGER="`which less` -s"
export BROWSER="$PAGER"
export LESS_TERMCAP_mb=$'\E[38;5;167m'
export LESS_TERMCAP_md=$'\E[38;5;39m'
export LESS_TERMCAP_me=$'\E[38;5;231m'
export LESS_TERMCAP_se=$'\E[38;5;231m'
export LESS_TERMCAP_so=$'\E[38;5;167m'
export LESS_TERMCAP_ue=$'\E[38;5;231m'
export LESS_TERMCAP_us=$'\E[38;5;167m'
而 man page 就有類似這樣子的效果出現,當然顏色可以自己慢慢調 XD

---
enjoy the environment. XD