এইভাবে আমি আমার অত্যধিক গরমের সমস্যাগুলি সমাধান করেছি যা একটি নির্দিষ্ট প্রক্রিয়া দ্বারা সৃষ্ট নয়, তবে আমার ল্যাপটপের ব্যর্থতার ফলে দীর্ঘ সময়ের জন্য উচ্চ সিপিইউ লোডে চলার কারণে তাপটি বিলুপ্ত করতে ব্যর্থ হয়েছিল। নিজেই দা কোড বানরের দ্বারা প্রদত্ত সমাধানটির মূল পার্থক্য হ'ল আমি একটি নির্দিষ্ট প্রক্রিয়াতে সিপুলিমিট ব্যবহার না করে সিপিইউ ফ্রিকোয়েন্সি স্কেলিং ব্যবহার করি। যেহেতু আমি পেন্সর ইনস্টল করেছি এবং যাইহোক চলমান, তাই আমি পেনসোনারে পিগব্যাক করছি। দা কোড বানরের মতো ডেমোনের প্রস্তাব দেওয়াও কাজ করা উচিত, তবে দুটি থ্রেশহোল্ড (নূন্যতম এবং সর্বাধিক) প্রয়োজন are পেনসর (সেন্সর পছন্দসমূহ> অ্যালার্ম) আমি প্রান্তিক সংবেদকের জন্য একটি অ্যালার্ম সেট করে যদি উচ্চ প্রান্তিকের চেয়ে বেশি হয়ে যায় (আমি 85 ব্যবহার করি) বা নিম্ন প্রান্তিকের চেয়ে কম (আমি 80 ব্যবহার করি)। পছন্দগুলিতে-> সেন্সরগুলি-> স্ক্রিপ্ট কার্যকর করা হয় যখন একটি অ্যালার্ম বাজে তখন আমি আমার স্ক্রিপ্টটিকে হিটট্রন্টল বলি sh
/ALLUSER/heatcontrol.sh পাওয়ারস অনেমান্ড 82
প্রথম প্যারামিটারটি একটি বৈধ স্কেলিং_গোভারর যা সিপিইউ ফ্রিকোয়েন্সি হ্রাস করে, যেমন পাওয়ারসেভ। দ্বিতীয় প্যারামিটারটি হ'ল ডিফল্ট স্কেলিং_ভারভারর - বেশিরভাগ সিস্টেমে অনডম্যান্ড। তৃতীয় প্যারামিটারটি নিম্ন এবং উচ্চ প্রান্তিকের মধ্যে একটি তাপমাত্রা (সঠিক মানটি গুরুত্বপূর্ণ নয়)। পেন্সর আরও দুটি পরামিতি যুক্ত করে: একটি সেন্সর আইডি এবং তাপমাত্রার প্রতিবেদন করা হয়।
এবং এটি আমার হিটকন্ট্রোল.শ স্ক্রিপ্ট:
#!/bin/bash
# TempNZ is temperature reported by Psensor; strip of trailing °C
TempNZ=$5
bnum=`expr index "$TempNZ" "°"`
if (( bnum < 2 )); then
echo "ERROR"
fi
TempNZ=${TempNZ:0:$(($bnum-1))}
STR=$1
# Is this a low threshold alarm?
if [ "$TempNZ" -le "$3" ]; then
STR=$2
fi
sudo sh -c "echo '$STR' > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor"
# echo new scaling_governor
sudo cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
# play sound - audio feedback - optional
paplay /usr/share/sounds/ubuntu/stereo/message-new-instant.ogg
আমার জন্য দুর্দান্ত কাজ করে (ইউবুন্টু 14.04 এলটিএস)।
লিনাক্স এবং ব্যাশের একজন নবজাতক হওয়ার কারণে আমি বেশ কয়েকটি সংস্থান ব্যবহার করেছি:
https://wiki.archlinux.org/index.php/CPU_frequency_scaling
http://elinux.org/Jetson/Performance#Viewing_the_current_CPU_status