這篇算是上一篇文章「如何在 Linux 固定使用指定百分比的 CPU 資源 」的進階版,如果真的想要拿一些閒置資源來做事情,建議大家可以來跑 folding@home 這個專案。簡單來說這是一個讓你用自己的電腦資源跑困難的蛋白質折疊模擬的程式,藉此來幫助研究者研究一些疾病,包括但不限於:阿茲海默症、狂牛症、甚至還有 COVID-19。
安裝前需要注意的是,如果你的機器資源太少(例如 2 vCPU,1GB RAM 的某 VPS),可能會跑不起來,執行之後會出現沒有分配到工作的錯誤。
首先,在 Linux 下載安裝最新版的 fahclient,以 Ubuntu 為例,這裡分為傳統的 x64 跟 arm64 兩種版本:
x64 CPU:
1 |
curl -fL https://download.foldingathome.org/releases/public/release/fahclient/debian-stable-64bit/v7.6/fahclient_7.6.21_amd64.deb -o ./fahclient.deb |
arm64 CPU:
1 |
curl -fL https://download.foldingathome.org/releases/public/release/fahclient/debian-stable-arm64/v7.6/fahclient_7.6.21_arm64.deb -o ./fahclient.deb |
接著安裝下載的 deb,指令如下
1 |
dpkg -i ./fahclient.deb |
安裝過程可以直接按預設選項就好,其中有一個 team number 可以填「31403」,這是 Taiwan team,可以幫助 team 的排名,不填也無所謂。不過最後一步會問你要不要自動啟動,這邊要選 No。如果設定選錯了,雖然可以修改設定檔解決,但是設定檔太複雜了,請去看其他網站的教學。我這邊會建議直接看本文最下面的方式移除程式,再重裝比較簡單。
接著我們要編輯一下 service 檔案,讓這個蛋白質折疊程式不要太佔用 CPU
1 |
systemctl edit FAHClient.service |
之後在「### Anything between here and the comment below will become the new contents of the file」這行下面加入以下內容:
1 2 |
[Service] CPUQuota=15% |
這邊的 % 數一樣自己決定,多核心的話例如八核心全滿是 800%。但由於程式不一定會隨時完全佔滿 CPU,所以我都會比預計的多設一點點,例如我想要儘量保持 10% 以上,那我這邊填 15% 幾乎就不會讓程式佔用小於 10% 了。
最後執行
1 2 3 |
systemctl daemon-reload systemctl enable FAHClient.service systemctl start FAHClient.service |
然後等程式載入一下,我測試大概需要等兩分鐘左右,這樣它才會真正開始佔用 CPU,之後可以用 top 指令看一下是否程式真的佔用你所設定的 CPU 百分比。
如果想要移除這個軟體,就使用
1 |
apt-get remove --purge fahclient |
指令即可,不過我自己觀察發現 client 好像不會馬上停止,如果有需要停止的話我是直接 reboot 機器,之後就不會有任何 fahclient 執行了。
發佈留言