操CPU的簡易方法:透過 bc 計算 pi

  • 數值運算:透過 bc 計算 pi

其實計算 pi 時,小數點以下位數可以無限制的延伸下去!而 bc 有提供一個運算 pi 的函式,只是想要使用該函式必須要使用 bc -l 來呼叫才行。 也因為這個小數點以下位數可以無線延伸運算的特性存在,所以我們可以透過底下這隻小腳本來讓使用者輸入一個『小數點為數值』, 以讓 pi 能夠更準確!

[dmtsai@study bin]$ vim cal_pi.sh
#!/bin/bash
# Program:
#	User input a scale number to calculate pi number.
# History:
# 2015/07/16	VBird	First release
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH
echo -e "This program will calculate pi value. \n"
echo -e "You should input a float number to calculate pi value.\n"
read -p "The scale number (10~10000) ? " checking
num=${checking:-"10"}           # 開始判斷有否有輸入數值
echo -e "Starting calcuate pi value.  Be patient."
time echo "scale=${num}; 4*a(1)" | bc -lq
		

上述資料中,那個 4*a(1) 是 bc 主動提供的一個計算 pi 的函數,至於 scale 就是要 bc 計算幾個小數點下位數的意思。當 scale 的數值越大, 代表 pi 要被計算的越精確,當然用掉的時間就會越多!因此,你可以嘗試輸入不同的數值看看!不過,最好是不要超過 5000 啦!因為會算很久! 如果你要讓你的 CPU 隨時保持在高負載,這個程式算下去你就會知道有多操 CPU 囉!

為了要確認虛擬機的效率問題,所以很多時候需要保持虛擬機在忙碌的狀態~可以丟這隻程式進去系統跑! 但是將 scale 調高一些,那計算就得要花比較多時間~用以達到我們需要 CPU 忙碌的狀態喔! 

資料來源:http://linux.vbird.org/linux_basic/0340bashshell-s...

arrow
arrow

    Johnson峰 發表在 痞客邦 留言(0) 人氣()