CPU — kompyuterning asosiy hisoblash va boshqaruv markazi. CPU inglizcha Central Processing Unit so‘zlarining qisqartmasi bo‘lib, o‘zbekchada markaziy protsessor degan ma’noni anglatadi.
CPU kompyuterda bajariladigan buyruqlarni qayta ishlaydi. Dastur ochish, fayl bilan ishlash, hisob-kitob qilish, brauzerda sahifa yuklash yoki operatsion tizim vazifalarini bajarishda CPU qatnashadi.
Vazifasi
CPU kompyuter ichidagi asosiy buyruqlarni bajaradi va boshqa qurilmalar ishini boshqaradi.
Uning asosiy vazifalari:
- dastur buyruqlarini o‘qish;
- ma’lumotlarni qayta ishlash;
- hisob-kitob amallarini bajarish;
- xotira bilan ishlash;
- qurilmalar o‘rtasidagi jarayonlarni boshqarish;
- operatsion tizim buyruqlarini bajarish.
Masalan, foydalanuvchi kalkulyatorda 25 + 17 amalini bajarsa, bu hisoblash jarayonida CPU ishtirok etadi.
CPU qanday ishlaydi?
CPU dasturdan kelgan buyruqlarni bosqichma-bosqich bajaradi. Bu jarayon odatda uch asosiy qismdan iborat:
- Fetch — buyruq xotiradan olinadi;
- Decode — buyruq tahlil qilinadi;
- Execute — buyruq bajariladi.
Bu jarayon juda katta tezlikda takrorlanadi. Shu sababli foydalanuvchiga dasturlar tez va uzluksiz ishlayotgandek ko‘rinadi.
Yadro
CPU ichida yadrolar bo‘ladi. Yadro — buyruqlarni bajaradigan alohida hisoblash qismi.
Bitta yadro bir vaqtning o‘zida ma’lum bir vazifani bajaradi. Ko‘p yadroli protsessorlar bir nechta vazifani parallel bajarishga yordam beradi.
Masalan:
- 2 yadroli CPU — oddiy ishlar uchun;
- 4 yadroli CPU — kundalik foydalanish va dasturlash uchun;
- 8 yoki undan ko‘p yadroli CPU — og‘ir dasturlar, serverlar, video montaj va murakkab hisob-kitoblar uchun ishlatiladi.
Takt chastotasi
CPU tezligi ko‘pincha GHz bilan o‘lchanadi. Bu ko‘rsatkich protsessor bir soniyada nechta sikl bajarishini bildiradi.
Masalan, 3.2 GHz chastotali CPU bir soniyada milliardlab operatsiyalarni bajarishi mumkin. Lekin CPU tezligini faqat GHz bilan baholash to‘g‘ri emas. Yadro soni, arxitektura, cache xotira va energiya samaradorligi ham muhim rol o‘ynaydi.
Cache xotira
CPU ichida kichik, lekin juda tezkor xotira mavjud. Bu xotira cache deyiladi.
Cache CPU tez-tez ishlatadigan ma’lumotlarni vaqtincha saqlaydi. Bu orqali protsessor har safar RAM yoki diskka murojaat qilmasdan, kerakli ma’lumotni tezroq oladi.
Cache odatda bir nechta darajaga bo‘linadi:
- L1 cache — eng tezkor va eng kichik cache;
- L2 cache — L1 dan kattaroq, lekin biroz sekinroq;
- L3 cache — ko‘proq yadro foydalanadigan kattaroq cache.
CPU va RAM bog‘liqligi
CPU va RAM birgalikda ishlaydi. Dastur ishga tushganda uning kerakli ma’lumotlari RAM’da saqlanadi, CPU esa shu ma’lumotlarni qayta ishlaydi.
Agar RAM yetarli bo‘lmasa, CPU kuchli bo‘lsa ham tizim sekinlashishi mumkin. Chunki ma’lumotlar diskdan olinadi, disk esa RAM’ga nisbatan ancha sekin ishlaydi.
CPU va GPU farqi
CPU va GPU ikkalasi ham ma’lumotlarni qayta ishlaydi, lekin ularning vazifasi farq qiladi.
- CPU umumiy hisoblash va boshqaruv vazifalarini bajaradi;
- GPU grafik, video, 3D, o‘yin va parallel hisoblash ishlarida ishlatiladi.
CPU murakkab va turli xil buyruqlarni bajarishga moslashgan. GPU esa bir turdagi ko‘p sonli hisoblashlarni parallel bajarishda samarali ishlaydi.
Kompyuter ishlashiga ta’siri
CPU kompyuter tezligiga bevosita ta’sir qiladi. Ayniqsa quyidagi holatlarda CPU muhim:
- dasturlarni ishga tushirish;
- kod kompilyatsiya qilish;
- brauzerda ko‘p sahifa ochish;
- arxivlash va fayl qayta ishlash;
- virtual mashina ishlatish;
- server so‘rovlarini qayta ishlash;
- ma’lumotlar bilan hisob-kitob qilish.
Kompyuterning umumiy tezligi faqat CPU’ga bog‘liq emas. RAM, SSD, GPU, operatsion tizim va dastur sifati ham umumiy ishlashga ta’sir qiladi.
Serverlarda CPU
Serverlarda CPU ko‘p foydalanuvchi so‘rovlarini qayta ishlashda muhim rol o‘ynaydi. Web server, database, API, background task va boshqa xizmatlar protsessor resurslaridan foydalanadi.
Server CPU yuklamasi ko‘pincha quyidagi holatlarda ortadi:
- ko‘p foydalanuvchi bir vaqtda so‘rov yuborganda;
- database murakkab query bajarganda;
- fayl yoki rasm qayta ishlanganda;
- API ko‘p hisob-kitob qilganda;
- background tasklar ishga tushganda.
CPU yuklamasi yuqori bo‘lsa, server sekin javob berishi yoki ayrim xizmatlar kechikib ishlashi mumkin.
Dasturlashdagi o‘rni
Dasturlashda CPU dastur bajarilish tezligiga ta’sir qiladi. Kod qanchalik samarali yozilgan bo‘lsa, CPU resurslari shunchalik to‘g‘ri ishlatiladi.
Masalan, samarasiz algoritm ko‘p CPU vaqtini oladi. Yaxshi tuzilgan algoritm esa kamroq hisoblash bilan natija beradi.
CPU bilan bog‘liq muhim tushunchalar:
- process;
- thread;
- parallel bajarish;
- algoritm murakkabligi;
- kompilyatsiya;
- performance;
- profiling.
Bog‘liq tushunchalar
Kompyuter, Operatsion tizim, Kernel, RAM, GPU, Process, Thread, Cache, Server, Algorithm