2018年4月27日 星期五

llvm execute DEBUG() macro

Some of Instructions are in DEBUG() macro, to execute it, add -debug parameter in opt
http://llvm.org/docs/ProgrammersManual.html#id36

2018年4月10日 星期二

機車術語解釋

空燃比:空氣與燃料的比例
    可調。通常是15或0.067左右。在化油器調整。高低海拔有不同數值。噴射引擎之優勢在於可在行駛過程中動態調整空燃比減少不必要之耗油(ex:騎化油車登武嶺,途中改變空燃比較不容易
油氣比:同空燃比


壓縮比:汽缸下死點時之容積 / 汽缸上死點時之容積
    柴油引擎壓縮比較高
    不可調

火星塞:汽缸上方點火之裝置,機車的火星塞不貴
    不只發動時需要使用,啟動後在每個cycle中亦須點火引爆以獲得動力

化油器:
    http://www.carnews.com/article-47757.html
    http://javaneo.pixnet.net/blog/post/20494466-%3C%E6%A9%9F%E8%BB%8A%3E%E5%8C%96%E6%B2%B9%E5%99%A8%E5%85%B8%E5%9E%8B%E6%95%85%E9%9A%9C%E5%88%86%E6%9E%90%E8%88%87%E6%8E%92%E9%99%A4
    噴射引擎無化油器,用電腦精密計算控制取代化油器,但須要耗電,若完全沒電則無法發動

油 門:控制化油器內之節流閥開閉程度

汽 門:汽缸內之開口數,分進氣與排氣
    2汽缸加速快尾速慢,因高轉下排氣不順
    4汽缸  慢  快
    2V一進一出 3V兩進一出 4V兩進兩出 5V三進兩出
    http://forum.jorsindo.com/forum.php?mod=viewthread&action=printable&tid=2406296
二行程四行程:
    2T 4T
    2T上下為一循環,4T上下上下為一循環
    4T燃燒完全,較環保
    2T燃燒不完全,吃機油,吐黑煙
    https://tw.answers.yahoo.com/question/index?qid=20070427000010KK06567

踩 發:只要電瓶並非完全死去,多數車種能夠發動
    噴射引擎不一定沒有踩發(ex:susuki)。電瓶之電無法帶動曲軸但有電控制油氣之狀態,靠踩發帶動曲軸則可發動,但完全沒電時噴射引擎無法發動
    有些化油車無電瓶亦可發動,但易燒壞整流器
    https://www.ptt.cc/bbs/biker/M.1281408086.A.D37.html
    電瓶狀態會影響踩發容易度,因位處同一迴路,弱電瓶電壓低下,則踩發產生之部分電力將被電瓶吸收

http://booklook.morningstar.com.tw/pdf/0145026.pdf

2018年2月28日 星期三

C/C++面試題目


constant
https://stackoverflow.com/questions/10091825/constant-pointer-vs-pointer-on-a-constant-value

deep-c slides
https://www.slideshare.net/olvemaudal/deep-c/246

lvalue, rvalue
http://hamersun.blogspot.tw/2012/12/c-lvalues-and-rvalues.html

lvalue reference, rvalue reference
http://hamersun.blogspot.tw/2012/12/lvalue-reference-and-rvalue-reference.html

*pointer vs array[]

**pointer, *pointer vs arrar[][]

reference& vs address&

operator overloading

rules of zero/three/five

polymorphism

template

undefined behavior

memory layout
https://blog.gtwang.org/programming/memory-layout-of-c-program/

https://www.youtube.com/channel/UCIm-u7l65hp5jboSJrB7U5w/videos

2018年2月26日 星期一

C變數宣告之解讀方式與const

從右邊開始往回解讀
char * p;
p是個指標指向char
const char *p;
p是個指標指到char,這個char是常數
char const *p;
p是個指標指到一個常數char
const char * p; 等同於 char const * p;
char * const p;
p是個常數指標指向char
char a[16];中的a就像是個 char * const a;一樣
這是為什麼pointer跟array很接近的原因

2018年1月7日 星期日

4G+記錄

Carrier Aggregation
載波聚合
可以同時使用不同頻段以加速無線網路
有人2CA測得200Mbps
聯發科要MT67XX、P10、X20等等才支援
高通要中階以上,s430、s617,s800系列等等等
Cat.x只代表處理器支援的網路速度,和CA無關。單一頻段頻寬夠大,不用CA也能跑到Cat.x的上限
台版紅米不支援CA
使用CA時,網路圖示多會呈現4G+
2CA理論速度225Mbps
3CA理論速度375Mbps
三星可以進Service Mode查詢。進入方式:對*#0011#打電話
Mobile01的peter大整理的表格
Band
頻段
台灣目前常見的4G頻段700/900/1800/2600MHz
低頻訊號好但承載人數少
高頻訊號死角較多但承載人數多,適合室外
LTE UE-Category (Cat)

python env

# Ubuntu
sudo apt install python python-pip python-dev
pip install --user virtualenv
cd ~
ENV_NAME=tensorflow
mkdir ~/${ENV_NAME}
virtualenv --no-site-packages ${ENV_NAME}
source ~/${ENV_NAME}/bin/activate
pip install --upgrade https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.4.1-cp27-none-linux_x86_64.whl
#url https://www.tensorflow.org/install/install_linux#the_url_of_the_tensorflow_python_package
pip install jupyter pandas

# Windows
# Make sure you download 64bit version python
pip install tensorflow

2017年2月25日 星期六

Folding@home on Ubuntu16.04 using Nvidia Graphic Card

Install some dependencies
$ wget http://launchpadlibrarian.net/109052632/python-support_1.0.15_all.deb
$ sudo dpkg -i python-support_1.0.15_all.deb
$ sudo apt-get install python-gnome2
Download fahclient and fahcontrol
Install fah program
$ sudo dpkg -i fah*.deb
 Get newest GPUs.txt
$ wget http://fah.stanford.edu/file-releases/public/GPUs.txt
Move to replace the old one
$ mv  GPUs.txt /var/lib/fahclient/
Start to fold