CPU Core, Multi-Core, Thread, Core vs Threads, Hyper-Threading

Co je Concurrency nebo Single Core?

In OperaV systรฉmech Ting je soubฤ›ลพnost definovรกna jako schopnost systรฉmu spouลกtฤ›t dva nebo vรญce programลฏ v pล™ekrรฝvรกnรญ.ping ฤasovรฉ fรกze.

Concurrency nebo Single Core
Soubฤ›ลพnรฉ provรกdฤ›nรญ s ฤasovรฝm dฤ›lenรญm

Jak vidรญte, v kaลพdรฉm okamลพiku je v provรกdฤ›nรญ pouze jeden proces. Proto je soubฤ›ลพnost pouze zobecnฤ›nou aproximacรญ skuteฤnรฉho paralelnรญho provรกdฤ›nรญ. Tento druh situace lze nalรฉzt v systรฉmech s jednojรกdrovรฝm procesorem.

Co je paralelnรญ spouลกtฤ›nรญ nebo (multi-core)?

Pล™i paralelnรญm provรกdฤ›nรญ jsou รบlohy, kterรฉ mรก proces provรกdฤ›t, rozdฤ›leny na dรญlฤรญ ฤรกsti a vรญce CPU (nebo vรญce jader) zpracovรกvรก kaลพdou dรญlฤรญ รบlohu pล™esnฤ› ve stejnou dobu.

Paralelnรญ provedenรญ
Paralelnรญ provedenรญ

Jak vidรญte, vลกechny procesy jsou v danรฉm okamลพiku v provรกdฤ›nรญ. Ve skuteฤnosti jsou to dรญlฤรญ รบkoly procesu, kterรฉ se provรกdฤ›jรญ paralelnฤ›, ale pro lepลกรญ pochopenรญ si je mลฏลพete pล™edstavit jako procesy.

Paralelismus je proto skuteฤnรฝm zpลฏsobem, kterรฝm lze zpracovรกvat vรญce รบloh souฤasnฤ›. Tento typ situace lze nalรฉzt v systรฉmech s vรญcejรกdrovรฝmi procesory, coลพ zahrnuje tรฉmฤ›ล™ vลกechny modernรญ komerฤnรญ procesory.

KLรฤŒOVร ROZDรL

  • Jรกdra zvyลกujรญ mnoลพstvรญ prรกce vykonรกvanรฉ najednou, zatรญmco vlรกkna zlepลกujรญ propustnost a zrychlujรญ vรฝpoฤet.
  • Cores je skuteฤnรก hardwarovรก komponenta, zatรญmco vlรกkno je virtuรกlnรญ komponenta, kterรก spravuje รบlohy.
  • Jรกdra pouลพรญvajรญ pล™epรญnรกnรญ obsahu, zatรญmco vlรกkna pouลพรญvajรญ vรญce CPU pro provoz mnoha procesลฏ.
  • Jรกdra vyลพadujรญ pouze jednotku zpracovรกnรญ signรกlu, zatรญmco vlรกkna vyลพadujรญ vรญce jednotek zpracovรกnรญ.

Co je vlรกkno?

Vlรกkno je jednotka provรกdฤ›nรญ soubฤ›ลพnรฉho programovรกnรญ. Multithreading je technika, kterรก umoลพลˆuje CPU provรกdฤ›t mnoho รบloh jednoho procesu souฤasnฤ›. Tato vlรกkna se mohou spouลกtฤ›t jednotlivฤ› a zรกroveลˆ sdรญlet svรฉ prostล™edky.

Co je multithreading?

Multithreading se tรฝkรก bฤ›ลพnรฉ รบlohy, kterรก spouลกtรญ vรญce vlรกken v rรกmci operaฤnรญho systรฉmu. Mลฏลพe zahrnovat vรญce systรฉmovรฝch procesลฏ.

Jak multithreading funguje?

Napล™รญklad vฤ›tลกina modernรญch CPU podporuje multithreading. Jednoduchรก aplikace na vaลกem smartphonu vรกm mลฏลพe poskytnout ลพivou ukรกzku tรฉhoลพ.

Kdyลพ otevล™ete aplikaci, kterรก vyลพaduje naฤtenรญ nฤ›kterรฝch dat z internetu, oblast obsahu aplikace je nahrazena ฤรญselnรญkem. To se bude otรกฤet, dokud nebudou data naฤtena a zobrazena.

Na pozadรญ jsou dvฤ› vlรกkna:

  • Jeden stahujรญcรญ data ze sรญtฤ› a
  • Jedno vykreslovรกnรญ GUI, kterรฉ zobrazuje ฤรญselnรญk

Obฤ› tato vlรกkna se spouลกtฤ›jรญ jedno po druhรฉm, aby vznikla iluze soubฤ›ลพnรฉho provรกdฤ›nรญ.

Co je CPU Core?

Jรกdro CPU je souฤรกstรญ nฤ›ฤeho zรกsadnรญho pro jeho existenci nebo charakter. Stejnรฝm zpลฏsobem v poฤรญtaฤovรฉm systรฉmu je CPU takรฉ oznaฤovรกno jako jรกdro.

V zรกsadฤ› existujรญ dva typy zรกkladnรญch procesorลฏ:

  1. Jednojรกdrovรฝ procesor
  2. Vรญcejรกdrovรฝ procesor

Jakรฝ je hlavnรญ problรฉm s jednรญm jรกdrem?

S Single Core jsou hlavnฤ› dva problรฉmy.

  • Chcete-li provรกdฤ›t รบkoly rychleji, musรญte zvรฝลกit ฤas hodin.
  • Zvรฝลกenรญ taktu zvyลกuje spotล™ebu energie a odvod tepla na extrรฉmnฤ› vysokou รบroveลˆ, coลพ ฤinรญ procesor neefektivnรญm.

ล˜eลกenรญ poskytovanรฉ spoleฤnostรญ Multi-Core:

  • Vytvoล™enรญ dvou nebo vรญce jader na stejnรฉ matrici pro zvรฝลกenรญ vรฝpoฤetnรญho vรฝkonu a zรกroveลˆ udrลพenรญ taktu na efektivnรญ รบrovni.
  • Procesor se dvฤ›ma jรกdry bฤ›ลพรญcรญmi efektivnรญ rychlostรญ mลฏลพe zpracovรกvat instrukce podobnou rychlostรญ jako jednojรกdrovรฝ procesor. Jeho takt je dvojnรกsobnรฝ, pล™esto vรญcejรกdrovรฝ proces spotล™ebovรกvรก mรฉnฤ› energie.

Vรฝhody vรญcejรกdrovรฉho procesoru

Zde jsou nฤ›kterรฉ vรฝhody vรญcejรกdrovรฉho procesoru:

  • Vรญce tranzistorลฏ na vรฝbฤ›r
  • Kratลกรญ spojenรญ
  • Niลพลกรญ kapacita
  • Malรฝ okruh mลฏลพe pracovat vysokou rychlostรญ

Rozdรญl mezi jรกdrem a vlรกkny

parametry Jรกdro Vlรกkna
Definice Jรกdra CPU znamenajรญ skuteฤnou hardwarovou komponentu. Vlรกkna odkazujรญ na virtuรกlnรญ komponentu, kterรก spravuje รบlohy.
Proces รšlohy jsou na CPU napรกjeny z vlรกkna. Proto pล™istupuje pouze k druhรฉmu vlรกknu, kdyลพ informace odeslanรฉ prvnรญm vlรกknem nejsou spolehlivรฉ. Existuje mnoho rลฏznรฝch variant, jak mลฏลพe CPU interagovat s vรญce vlรกkny.
Implementace Dosaลพeno operacรญ proklรกdรกnรญ Provedeno prostล™ednictvรญm ลพaloby na vรญce CPU
Prospฤ›ch Zvyลกte mnoลพstvรญ vykonanรฉ prรกce najednou. Zlepลกenรญ propustnosti, zrychlenรญ vรฝpoฤtu.
Ve vlhkรฝch prostorรกch pouลพรญvejte odvlhฤovaฤe k aktivnรญ regulaci vlhkosti vzduchu. Core vyuลพรญvรก pล™epรญnรกnรญ obsahu Pouลพรญvรก vรญce CPU pro provoz mnoha procesลฏ.
Potล™ebnรฉ zpracovatelskรฉ jednotky Vyลพaduje pouze jednotku zpracovรกnรญ signรกlu. Vyลพaduje vรญce procesorovรฝch jednotek.
Pล™รญklad Spuลกtฤ›nรญ vรญce aplikacรญ souฤasnฤ›. Spuลกtฤ›nรญ webovรฉho prohledรกvaฤe na clusteru.

Co je Hyper-Threading?

Hyper-threading byl prvnรญm pokusem spoleฤnosti Intel pล™inรฉst paralelnรญ vรฝpoฤty do poฤรญtaฤลฏ koncovรฝch uลพivatelลฏ. Poprvรฉ byl pouลพit na stolnรญch CPU s Pentiem 4 v roce 2002.

Pentium 4 v tรฉ dobฤ› mฤ›lo pouze jedno jรกdro CPU. Proto provรกdรญ pouze jeden รบkol a selhรกvรก pล™i provรกdฤ›nรญ jakรฉhokoli typu vรญce operacรญ.

Jeden procesor s hyper-threadingem se pro operaฤnรญ systรฉm jevรญ jako dva logickรฉ procesory. V tomto pล™รญpadฤ› je CPU jeden, ale operaฤnรญ systรฉm bere v รบvahu dva CPU pro kaลพdรฉ jรกdro a hardware CPU mรก jedinou sadu spouลกtฤ›cรญch prostล™edkลฏ pro kaลพdรฉ jรกdro CPU.

Proto CPU pล™edpoklรกdรก, ลพe mรก vรญce jader neลพ mรก, a operaฤnรญ systรฉm pล™edpoklรกdรก dva CPU pro kaลพdรฉ jedno jรกdro CPU.

Shrnutรญ

  • Vlรกkno je jednotka provรกdฤ›nรญ soubฤ›ลพnรฉho programovรกnรญ.
  • Multithreading se tรฝkรก bฤ›ลพnรฉ รบlohy, kterรก spouลกtรญ vรญce vlรกken v rรกmci operaฤnรญho systรฉmu
  • Dnes mnoho modernรญch CPU podporuje multithreading
  • Hyper-threading byl prvnรญm pokusem spoleฤnosti Intel pล™inรฉst paralelnรญ vรฝpoฤty do poฤรญtaฤลฏ koncovรฝch uลพivatelลฏ.
  • Jรกdro CPU je souฤรกstรญ nฤ›ฤeho zรกsadnรญho pro jeho existenci nebo charakter
  • V, OperaSoubฤ›ลพnost systรฉmu je definovรกna jako schopnost systรฉmu spouลกtฤ›t dva nebo vรญce programลฏ v pล™ekrรฝvรกnรญ.ping ฤasovรฉ fรกze.
  • Pล™i paralelnรญm provรกdฤ›nรญ jsou รบkoly, kterรฉ mรก proces provรกdฤ›t, rozdฤ›leny do dรญlฤรญch ฤรกstรญ.
  • Hlavnรญm problรฉmem jednojรกdrovรฉho procesoru je to, ลพe pro rychlejลกรญ provรกdฤ›nรญ รบkolลฏ je tล™eba zvรฝลกit ฤas hodin.
  • Vรญcejรกdro ล™eลกรญ tento problรฉm vytvoล™enรญm dvou nebo vรญce jader na stejnรฉ matrici, aby se zvรฝลกil vรฝpoฤetnรญ vรฝkon, a takรฉ udrลพuje takt na efektivnรญ รบrovni.
  • Nejvฤ›tลกรญ vรฝhodou vรญcejรกdrovรฉho systรฉmu je, ลพe vรกm pomลฏลพe vytvoล™it vรญce tranzistorลฏ podle vรฝbฤ›ru
  • Jรกdra CPU znamenajรญ skuteฤnou hardwarovou komponentu, zatรญmco vlรกkna odkazujรญ na virtuรกlnรญ komponentu, kterรก spravuje รบlohy.

Shrลˆte tento pล™รญspฤ›vek takto: