MacBookAir 一寸したことでFANが全開で回る ― 2011/08/01 08:25
簡単にCPUがフル稼働していしまい。筐体温度が上がってFANが回る
reniceで負荷の高いプロセスの優先度を下げてみたがTBが働くと
CPU全開で 全く効果が無い。
筐体を冷やすしかFANの音を止められないのかな?
ituneで音楽とか動画が FANの音が大きすぎて聞きづらい
竹内関数(たらい回し関数)をrubyで動かす ― 2011/08/01 22:28
竹内関数を MacBooKPro(2011)で動かす
Ruby 1.9.2-p290で動かしました。スレッドで動かないので
8すれどあるのに1つだけが 100%に上がってました。
macRubyはスレッド実行できるか 調べて見亜ミズ卯
# --- source start ---
def tak( x , y , z )
if x <= y
y
else
tak( tak( x - 1 , y , z ) , tak( y - 1 , z , x ) , tak( z - 1 , x , y ) )
end
end
x , y , z = ARGV.map { |arg| arg.to_i }
tak = tak( x , y , z )
puts "tak(#{x}, #{y}, #{z}) = #{tak}"
# --- source end ---
実行結果
$time ruby tak.rb 12, 6, 0
tak(12, 6, 0) = 12
real 0m1.300s
user 0m1.296s
sys 0m0.005s
$ time ruby tak.rb 13, 6, 0
tak(13, 6, 0) = 13
real 0m8.607s
user 0m8.604s
sys 0m0.009s
$ time ruby tak.rb 14, 8, 0
tak(14, 8, 0) = 14
real 1m11.017s
user 1m11.018s
sys 0m0.056s
Ruby 1.9.2-p290で動かしました。スレッドで動かないので
8すれどあるのに1つだけが 100%に上がってました。
macRubyはスレッド実行できるか 調べて見亜ミズ卯
# --- source start ---
def tak( x , y , z )
if x <= y
y
else
tak( tak( x - 1 , y , z ) , tak( y - 1 , z , x ) , tak( z - 1 , x , y ) )
end
end
x , y , z = ARGV.map { |arg| arg.to_i }
tak = tak( x , y , z )
puts "tak(#{x}, #{y}, #{z}) = #{tak}"
# --- source end ---
実行結果
$time ruby tak.rb 12, 6, 0
tak(12, 6, 0) = 12
real 0m1.300s
user 0m1.296s
sys 0m0.005s
$ time ruby tak.rb 13, 6, 0
tak(13, 6, 0) = 13
real 0m8.607s
user 0m8.604s
sys 0m0.009s
$ time ruby tak.rb 14, 8, 0
tak(14, 8, 0) = 14
real 1m11.017s
user 1m11.018s
sys 0m0.056s
最近のコメント