Proč to AMD a Intel zkoušejí přes více CPU jader
Ale jak víme, nic takového nenastalo a nenastane. Ostatně kdyby bylo jednodušší uvést 10GHz+ 1core x86 CPU než se patlat s více jádry a hyperthreadingem, tak to Intel udělal už s Netburstem. A jak to s Netburstem, potažmo s jeho poslední reinkarnací v podobě „Prskavky“, víme.
Problém je v něčem, co je v současné době problémem i pro ARM čipy. Ono je prostě se zmenšujícími se nanometry (což je přirozený a správný vývoj) snadnější přidat další „bambilión“ tranzistorů, než jedno maličké jadérko honit na enormních frekvencích daleko za hranicí zdravého rozumu a optimálních provozních parametrů čipu / technologie.
Používané technologie zkrátka mají principiálně i fyzikálně dané stropy rozumné použitelnosti co se týče provozních frekvencí. Od dob Northwoodu / Prescottu (a to už je dobře 15 let) se motáme pořád kolem 3,5-4,5GHz taktu, kdy procesory vykazují rozumný poměr frekvence/spotřeba. Ano, s tekutým dusíkem se dá jít podstatně výše, ale to už je právě ta nerozumná, běžně nepoužitelná hranice. Ano, šlo by vyladit výrobní procesy více na vyšší takty, ale bylo by to náročnější, složitější, zdlouhavější, dražší a opožděnější oproti tomu, co přinesly FinFET procesy a co přinese kombinace s EUV, vše ještě na křemíku. Je to jediná rozumná cesta pro tato desetiletí, kterou možná jednoho dne změní přechody na nové materiály, ale zatím je vše stále jen v příslibu, včetně grafenu.
Otázkou je, co by bylo lepší. Bylo by lepší mít CPU s hromadou jader (aktuálně tedy 32×HT Threadripper a výhledově 36×HT Skylake-X), nebo hypotetické, řekněme 100GHz jednojádrové CPU? Od chvíle, kdy přibývá jader, se stále více řeší, že aplikace má/nemá vícevláknovou podporu, případně jak dobrou či mizernou ji má a kolik jader umí efektivně využít jako své maximum. Já jsem toho názoru, že nejlepší by bylo univerzální řešení 1jádrového CPU s vynikající logikou rozhodující o pořadí zpracovávaných úloh. Pak by programátoři nemuseli bláznit jako třeba ti, kteří pracují na aplikacích typu Chromium, Firefox, x265, Rawtherapee, Blender atd.
Nicméně tahle cesta není možná. Nejsou materiály, technologie, postupy. Je daleko jednodušší poslepovat více jader, ostatně s ohledem na klesající velikosti CPU jader se zmenšujícími se nanometry je to v podstatě nutnost, aby vůbec bylo možné CPU die nějak propojit „se zbytkem světa“. A pokud si budeme moci za 5 či 10 let říci, že máme k dispozici všeobecně skvělou a úžasnou vícevláknovou podporu ve všem, pak mi nebude nijak vadit, že v desktopu mám 64×CPU/256×HT a v telefonu mi tepe 32jádrový ARM.