2013年11月18日 星期一

讓rtorrent不再卡頓

    使用rtorrent已經好多年了,從最早不支援UTF-8開始,直到現在也加入magnet後,配合screen的便利性,一直是我最愛使用的BT client。

    但是在0.9.x的版本後,常常會不定時的“卡頓”一下,就是整個rtorrent視窗完全無反應,當然也沒有下載/上載資料,過了些許時間後,就會看到速度又重0開始,然後又可以動作。其實用 screen detach 後,即使發生了這個情形也不用理會,但是當 torrent 數量多時,卡頓的情況會更嚴重,有時候過了一天,完全沒有下載進度。

    後來仔細查閱了rtorrent網站,作者其實有對這個問題做說明:
http://libtorrent.rakshasa.no/wiki/Install

    簡單講就是 rtorrent 是透過 libcurl 在 resolve hostname以及 http download,由於是單一線程來查詢hostname,所以單一個 torrent 的 tracker 沒有回應時,會造成整體無法回應,直到request timeout才能繼續執行。

    這個問題會在未來的版本改用multi-thread的方式解決,現階段是建議重新compile curl並加入 c-ares 的支援,很可惜的是目前 Debian 的 libcurl 並沒有加入。可以用 apt-get source curl下載後,修改 debian/rules 的內容,加入 --enable-ares 的選項重新打包即可。

    如果您信任小弟並且下載平台是 Debian Wheezy 的話,可以直接抓取小弟編譯好的版本:
libcurl3_7.26.0-1+Bwheezy5.1_amd64.deb 

直接安裝後,再重啟 rtorrent,就可以享受不再卡頓的效果了。

2013年2月5日 星期二

VMware強制使用3D的設定

最近常常測試 Win7 的一些無人值守功能,所以需要使用 VM,由於手邊的卡有 Nvidia Geforce7300 Nvidia Geforce210 AMD HD3200(780G主機板內建) 搭配的 Driver 是 Nouveau/Radeon,但是啟動 VMware9 時,常常會出現
Hardware graphics accerlation is not avaiable. No 3D support is avaiable from the host.
針對Nvidia的卡,只要安裝了 Nvidia closed driver 就不會有這個錯誤訊息,而且 3D 也正常,但是我希望能使用 Nouveau/Radeon 的 3D 功能, 畢竟這幾張卡在 glxinfo 中都有 s3tc 的extention,以及glxgears都能正常執行。最終找到的作法如下:
aptitude install libtxc-dxtn-s2tc0
加入以下的敘述至 VM 的vmx設定檔:
svga.vramSize=67108864 mks.gl.allowBlacklistedDrivers = TRUE
再重新啟動 VMware 後,會先出現一段警告,直接忽略掉即可,啟動後,相信就可以暢遊 VM 裡的 3D 功能了。 PS:Geforce7300無法支援,只要執行 3D 功能後,VM會馬上crash掉,原因不明。