Elektronika.lt
 2024 m. gegužės 19 d. Projektas | Reklama | Žinokite | Klausimai | Prisidėkite | Atsiliepimai | Kontaktai
Paieška portale
EN Facebook RSS

 Kas naujo  Katalogas  Parduotuvės  Forumas  Tinklaraščiai
 Pirmas puslapisSąrašas
 NaujienosSąrašas
 StraipsniaiSąrašas
 - Elektronika, technika
 - Kompiuterija
 - Telekomunikacijos
 - Įvykiai, visuomenė
 - Pažintiniai, įdomybės
 Vaizdo siužetaiSąrašas
 Nuolaidos, akcijosSąrašas
 Produktų apžvalgosSąrašas
 Naudingi patarimaiSąrašas
 Vykdomi projektaiSąrašas
 Schemų archyvasSąrašas
 Teorija, žinynaiSąrašas
 Nuorodų katalogai
 Įvairūs siuntiniai
 Bendravimas
 Skelbimai ir pasiūlymai
 Elektronikos remontas
 Robotų kūrėjų klubas
 RTN žurnalo archyvas






 Verta paskaityti
Gegužės 19 d. 16:11
„Philips Evnia 49M2C8900L“ – aukščiausios klasės žaidimų patirtis
Gegužės 19 d. 10:20
Grėsmė verslams: darbuotojai net to nežinodami nutekina jautrią informaciją
Gegužės 18 d. 16:45
„Volvo“ plečia biodyzelinu varomų sunkvežimių gamą
Gegužės 18 d. 10:25
„CanSat“ konkurso finale geriausią palydovą sukonstravo KTU inžinerijos licėjaus komanda „SpaceDroneSat“
Gegužės 17 d. 20:23
Išmaniosios technologijos – probleminio interneto naudojimo iššūkiams spręsti
Gegužės 17 d. 17:39
„Apple“ pagaliau atnaujino primirštą produktų liniją: kuo nustebino naujieji „iPad“ ir kas nuliūdino gerbėjus?
Gegužės 17 d. 14:13
Išmontuota 40 proc. Ignalinos AE įrangos
Gegužės 17 d. 11:09
Neseniai kalbėjote su rusakalbiais „Google“ atstovais? Pasitikrinkite, ar neatidavėte savo duomenų sukčiams
Gegužės 17 d. 08:41
Populiarėjantis naujas socialinis tinklas sukėlė klausimų: imituoja jūsų draugus, renkami netikri „like“
Gegužės 16 d. 20:32
„Porsche“ kūrėjai plečia „Porsche Cayenne“ šeimą su galingiausiais jos modeliais
FS 22 Tractors
Farming Simulator 19 Mods, FS 22 Maps, FS22 Mods
ETS2 Mods
ETS2 Trucks, ETS2 Bus, Euro Truck Simulator 2 Mods
FS22 Tractors
Farming Simulator 22 Mods, FS22 Maps, FS22 Trucks
VAT calculator
VAT number check, What is VAT, How much is VAT
Paskola internetu
Vartojimo paskola, paskola automobiliui, paskola būsto remontui
Thermal monocular
Thermal vision camera,
Night vision ar scope,
Night vision spotting scope
FS22 Mods
FS22 Harvesters, FS22 Tractors Mods, FS22 Maps Mods
FS22 Mods
FS22 Maps,
FS22 Harvesters,
FS22 Tractors
Dantų protezavimas
All on 4 implantai,
Endodontija mikroskopu,
Dantų implantacija
Sims 4 Mods
Sims 4 CC Clothes,
Sims 4 Hair CC,
Sims 4 Skill Cheat
Reklama
 Straipsniai » Kompiuteriai, IT Dalintis | Spausdinti

Daugiabranduolių procesorių programinė įranga

Publikuota: 2008-12-29 07:08
Tematika: Kompiuteriai, IT
Skirta: Profesionalams
Autorius: Saulius Minkevičius
Aut. teisės: el. paštas ©Lietuvos Rytas, UAB
Inf. šaltinis: el. paštas Kompiuterija

Kodėl naujų procesorių potencialas atskleidžiamas taip sunkiai? Naujas lustų dizainas nėra vienintelė priežastis. Jei programinės įrangos kūrėjai iš karto numatytų darbą daugiabranduoliais procesoriais, šiandien išspaustų didesnį beveik visų programų našumą. Aptarsime problemas, kylančias kuriant daugiabranduolių procesorių programinę įrangą, taip pat supažindinsime su programinės įrangos našumo pokyčių matavimais.

 Rodyti komentarus (1)
Įvertinimas:  1 2 3 4 5 
„Core 2 Quad“

Daugiabranduoliai procesoriai rinkoje pasirodė jau senokai, bet iki šiol beveik nėra programų, gebančių išnaudoti visus jų skaičiavimo pajėgumus. Kompiuterių rinkoje skubama mėgautis šūkiais: ,,Keturis kartus didesnis našumas – už 700 Lt“. Čia turima galvoje Intel keturių branduolių procesorius „Core 2 Quad“. Žinoma, esant optimaliam operacinės sistemos ir programinės įrangos santykiui, šis procesorius lenkia brangiausius dvibranduolius procesorius. Tačiau nepaisant mažos kainos dauguma vartotojų laukia. Šiandien tik nedaugelis programų pajėgios suteikti didesnį našumą naudojant kelis branduolius. Kai kurios programos daugelio branduolių terpėje veikia lėčiau nei vieno.

Kodėl naujų procesorių potencialas atskleidžiamas taip sunkiai? Naujas lustų dizainas nėra vienintelė priežastis. Jei programinės įrangos kūrėjai iš karto numatytų darbą daugiabranduoliais procesoriais, šiandien išspaustų didesnį beveik visų programų našumą. Aptarsime problemas, kylančias kuriant daugiabranduolių procesorių programinę įrangą, taip pat supažindinsime su programinės įrangos našumo pokyčių matavimais (tai gali pateikti programos, skirtos darbui aštuonių branduolių procesoriais).

Daug srautų ir didysis paskirstymo menas

Tam, kad programa gebėtų naudotis keletu branduolių, ji turi veikti lygiagretumo režimu (yra atskiri skaičiavimo srautai – gijos (threads)). Esant daugelio srautų režimui (multithreading), programos dalis, reikalaujanti intensyvių skaičiavimų, gali veikti foniniu režimu. Bet, pavyzdžiui, programos sąsaja gali nuolat atsinaujinti kaip nedidelis atskiras duomenų srautas. Tiesa, tai beveik nesuteikia bendro našumo padidėjimo, nes operacijos (nors ir paskirstytos tolygiai per visą skaičiavimo laiką) vis dėlto atliekamos viena paskui kitą.

Procesoriai atskleidžia potencialą

Pateikiame spartos palyginimą procentais.

Archyvavimo programa „WinRAR 3.71“

Archyvavimo programa „WinRAR 3.71“

Silpnai. „WinRAR“ nėra skirta darbui su keliais branduoliais. Failo suspaudimo procesas beveik nepaspartėja.

3D žaidimas „World in Conflict“

3D žaidimas „World in Conflict“

Vidutiniškai. Tokie žaidimai kaip „World in Conflict“ paprastai spartina darbą tik su dviem arba keturiais branduoliais.

Vaizdo kodavimo programa „MainConcept H.264 Pro“

Vaizdo kodavimo programa „MainConcept H.264 Pro“

Puikiai. Paralelizacija, koduojant vaizdo failą, daro šią programą gana efektyvią daugelio branduolių terpėje.

Hipersrautų (hiperthreading) technologijos „Intel Pentium 4“ procesoriai pradėjo veikti su dviem loginiais branduoliais, gebančiais vienu metu atlikti dvi skaičiavimo operacijas. Tačiau kilo rimtų problemų. Vienu metu vykdant du procesus, kuriems būtina prieiga prie vieno ištekliaus (pavyzdžiui, prie atmintinės ląstelės), vienas srautas gali atlikti skaičiavimus anksčiau. Tuo metu kito srauto skaičiavimo rezultatas bus dar neparuoštas, todėl šis srautas negali panaudoti bendro ištekliaus. Tai – vadinamoji lenktynių būsena (race-condition).

Kita problema – srautai gali trukdyti vienas kitam, laukdami prieigos prie vieno ištekliaus ir blokuodami tuo pat metu kitą. Ši būsena vadinama tarpusavio blokiruote (deadlock). Dvibranduoliuose procesoriuose problemos apsiriboja dviem srautais (threads), o didinant branduolių skaičių problemos gerokai sudėtingesnės, tad programinės įrangos kūrėjams tenka ieškoti naujų sprendimų.

Daugiabranduolių technologijų privalumai ir trūkumai

Priklausomybė nuo skaičiavimų dažnai trukdo efektyviai pritaikyti paralelizaciją. Pateiksime du pavyzdžius. Programa, kurioje kiekviena operacija reikalauja prieš tai buvusių skaičiavimų rezultato, nesuteikia skaičiavimų spartos padidėjimo. Klasikinis pavyzdys – kiškių populiacijos padidėjimo skaičiavimas (vadinamieji Fibonačio skaičiai).

Dauguma taikomųjų programų nepritaikytos keleto branduolių technologijoms. Archyvavimo programa „WinRAR 3.71“ naudoja tik vieną branduolį. Žaidimų kūrėjai taip pat neskuba (nors jiems paralelizacija turėtų būti gerai žinoma). Juk grafiniai lustai jau senokai atlieka lygiagrečius skaičiavimus. Tik kai kurie žaidimai (pavyzdžiui, World in Conflict) geba perkelti savo personažų dirbtinį intelektą ir skaičiavimus į keleto branduolių terpę. Todėl vartotojai, naudojantys dviejų ar keturių branduolių procesorius, gali pastebėti našumo padidėjimą.

Paralelizacija gali būti įdomi vaizdo kodavimui, nes leidžia pasiekti įspūdingą našumo didėjimą. Kvalifikuotas srautų formavimas suteikia galimybę greičiau įvykdyti transformaciją tarp dviejų atraminių kadrų arba judėjimo vektorių interpoliaciją. Štai kodavimo programa „H 264 Pro“, kurią sukūrė kompanija MainConcept, gerai veikia tiek su vienu, tiek su aštuoniais branduoliais.

Patogumas arba kruopštumas: „Intel Compiler 10“ prieš „OpenMP“

Siekdama išspręsti šias problemas, Intel programuotojams siūlo patogią paralelizacijos priemonę „Intel Compiler 10“ (bandomąją versiją galima atsisiųsti iš www.intel.com/software tinklalapio). Kompiliacijos proceso metu ši priemonė analizuoja programinį kodą ir, esant galimybei, padalija programą į keletą srautų. Aišku, „Intel Compiler 10“ nėra stebuklinga lazdelė – automatinė paralelizacija pavyksta tik tuo atveju, jei kompiliatorius „užtikrintas“, kad nebus anksčiau minėtų dead-lock arba race-condition situacijų. Be to, ši priemonė pasižymi konservatyvumu ir dažnai sukuria programas, gebančias skaičiuoti tik nuosekliai. Todėl tam tikrą optimizaciją gali pasiekti tik programuotojas, tiksliai žinantis, kokie jo programos elementai turi veikti nepriklausomai vienas nuo kito.

Nuo 1997 metų šiems tikslams naudojama programavimo sistema „OpenMP“, kuria programuotojas gali atlikti paralelizaciją su vienu ar kitu pradinio kodo elementu. „OpenMP“ veikia programuojant C/C++ ir FORTRAN kalbomis. Ekspertų nuomone, ši sistema yra idealus pagrindas kuriant daugiabranduolę programinę įrangą.

Informacija

  • whatif.intel.com – tinklalapis programinės įrangos daugiabranduolių procesorių kūrėjams.
  • www.openmp.org – „OpenMP“ rinkinio (kartu su dokumentacija) tinklalapis.

Kompiuterija



Draudžiama platinti, skelbti, kopijuoti
informaciją su nurodyta autoriaus teisių žyma be redakcijos sutikimo.

Global electronic components distributor – Allicdata Electronics

Electronic component supply – „Eurodis Electronics“

LOKMITA – įvairi matavimo, testavimo, analizės ir litavimo produkcija

Full feature custom PCB prototype service

GENERAL FINANCING BANKAS

Mokslo festivalis „Erdvėlaivis Žemė

LTV.LT - lietuviškų tinklalapių vitrina

„Konstanta 42“

Technologijos.lt

Buitinė technika ir elektronika internetu žemos kainos – Zuza.lt

www.esaugumas.lt – apsaugok savo kompiuterį!

PriedaiMobiliems.lt – telefonų priedai ir aksesuarai

„Deinavos baldai“ — šeimos baldai


Reklama
‡ 1999–2024 © Elektronika.lt | Autoriaus teisės | Privatumo politika | Atsakomybės ribojimas | Reklama | Turinys | Kontaktai LTV.LT - lietuviškų tinklalapių vitrina Valid XHTML 1.0!
Script hook v, Openiv, Menyoo
gta5mod.net
Farming Simulator 2019 Mods, FS22 Mods, FS22 Maps
farmingsimulator19mods.fr
Optical filters, UV optics, electro optical crystals
www.eksmaoptics.com
Reklamos paslaugos
SEO sprendimai

www.addad.lt
Elektroninių parduotuvių optimizavimas „Google“ paieškos sistemai
www.seospiders.lt
FS22 mods, Farming simulator 22 mods,
FS22 maps

fs22.com
Reklama


Reklama