2011年6月21日 星期二

wallpaper slideshow for lxde, dual monitors

捨kde換 lxde 也過了幾個月了
台灣之光真的不賴 我的小筆電效能都像草上飛一般...
嗯..不開chrome的話 XD
可惜桌布不會自己換 小小缺憾~

為了雙螢幕也可以換桌布
寫了個script來即時亂數選兩張圖
調圖片大小後再併成一張桌布
用這個script, 配合cron就可以定期換桌布啦

imagemagick 真是好工具啊!! 連opencl都支援 強大到了一種...
叫我們怎麼茍延殘喘下去呢 QQ



wallpaper.sh內容如下


#!/bin/bash 
# $ sudo pacman -S imagemagick
# $ sudo ln -s /path/to/wallpaper.sh /etc/cron.hourly/wallpaper

ID=username
RES1="1680x1050^"
RES2="1280x1024^"
D="/path/to/Wallpapers/"
FN="/tmp/wallpaper.jpg"

# randomly pick up two images as wallpaper
N="`/bin/ls -1 \"$D\" | wc -l`"
FN1="`/bin/ls -1 \"$D\" | sed -e \"$((${RANDOM}%${N}))!d\"`"
FN2="`/bin/ls -1 \"$D\" | sed -e \"$((${RANDOM}%${N}))!d\"`"

# resize 2 images to fit two resolutions, then append to big wallpaper
convert \
    \( -resize ${RES1} "${D}${FN1}" -gravity center -extent "${RES1}" \) \
    \( -resize ${RES2} "${D}${FN2}" -gravity center -extent "${RES2}" \) \
    +append "${FN}"

EXEC="su -l ${ID} -c 'pcmanfm --display=:0 --set-wallpaper \"${FN}\"'"
eval $EXEC

### optional: run at to slideshow
### $ sudo pacman -S at
# M=5   # change wallpaper per M minutes
# if [ -z "`atq | grep \"a ${ID}\"`"     ] ; then
#    echo $0 | at now+${M}minutes
# fi

2011年5月26日 星期四

i7的HT功能開關 對於實驗的影響

用了兩天測試多核心效能 和HT功能開關

請注意!!!
這是對於我的基因演算法 實驗結果
不保證對實驗室所有實驗都這樣



結論先講.
關了HT對實驗不會是壞事,
支援多核的程式, 同時執行4個核心就好 多了慢很多!
單核的程式, 一次執行最多4個就好 讓它們搶cpu會慢很多


測試環境
i7-2600 (4核, 開HT變8核), 16G-ram, win7-64bit, matlab 2010b.
matlab開啟多核心功能. 平行處理基因演算法. 每個核心分別處理一條基因.

population=400, generation=3.
單核. 163 sec
------------------------------
2核開HT. 125 (兩次平均)
3核開HT. 75 (兩次平均)
4核開HT. 91 (兩次平均)
5核開HT. 95 (兩次平均)
6核開HT. 103 (兩次平均)
7核開HT. 115 (兩次平均)
8核開HT. 147 (兩次平均)
--------------------
3核關HT. 85 (三次平鈞:76,83,98)
4核關HT. 80 (二次平鈞:68,92)

總共執行四個實驗的話
支援多核的程式同時只能跑一個, 所以時間是x4
單核程式可以同時跑4個( 每一個都只占了25% cpu),
單核 vs. 多核是 163 vs. 320 ( 80x4 )
==> 結論其一. 執行多個單核程式較單純 效率>=支援多核心的程式

從開HT看來
3核最佳,
4核可能是太忙了 沒空核心間溝通而拉低效能
5核上去 效果奇差無比
==> 結論其二. 支援多核的程式, 4核就好, 多了HT的邏輯CPU無益

相比於關掉HT 使用3,4核結果差不多
==> 結論其三.支援多核的程式, 使用4個核心以下, 關閉HT vs. 開啟HT 結果沒差


另外一個測試 當次數超過實際核心數.
population=50, generation=3.
同時跑5個程式@開HT 338 sec (414+337+363+282+294)
同時跑5個程式@關HT 336 (361+358+229+367+365)
同時跑4個程式+單獨跑1個 142 (86+85+84+71)/4 + 60

超過核心數, cpu使用都是五個程式搶來搶去 結局差不多
==> 結論其四. 跑的程式數量 > 核心數, 開關HT 近乎沒影響

低於核心數 再單獨跑1個 遠低於同時跑
==> 結論其五. 跑的程式數量 > 核心數, 分兩堆跑 比較好




剛才也找了一下 有人提到
(ref:http://news.pchome.com.tw/magazine/report/ct/Advance/456/8/122546880053371031007.htm )
"沒對八條執行緒做最佳化,一旦有多虛擬核心使用,的確有可能錯亂,而造成幫助有限或效能下降的現象。"
"根據實測結果,在Core i7 920開啟HT後,各項測試平均下來只有6.151%的效能成長"
"HT該開還是關? "
"完整支援多執行緒的Cinebench R10軟體"
"「開啟HT只用到一半的執行緒」與「關閉HT但完整利用四條執行緒」,其實後者的效能會比較好"