Tsev > Exhibition > Ntsiab lus

Multi-core processor Software teebmeem

Mar 14, 2019

Ib daim qauv ntawm cov ntawv pov thawj ntawm ib daim ntawv thov virus yuav tsim tau ib cov xov tshiab rau ib qho kev luam theej duab, thaum nws GUI xov tos rau commands los ntawm tus neeg siv (xws li rho lub luam theej duab). Nyob rau hauv tej zaum, ib tug tub ntxhais multi-core architecture yog ntawm kev pab cuam me ntsis rau daim ntawv thov nws tus kheej vim ib qho xov ua txhua qhov hnyav lifting thiab tsis muaj peev xwm sib npaug ua hauj lwm sib npaug ntawm ntau lub cores. Programming tiag tiag multithreaded code feem ntau yuav tsum muaj co-ordination threads thiab yooj yim ua kom paub hloov maj mam thiab nyuaj-rau-nrhiav vim cov interweaving ntawm cov ntaub ntawv sib koom ntawm threads (saib xov-kev ruaj ntseg). Thiaj li, cov cai lij choj yog qhov nyuaj tshaj rau kev debug tshaj ib zaug-threaded code thaum nws lov. Muaj qhov pom tias tsis muaj kev txhawb zog rau kev sau ntawv siv cov ntawv xov xwm vim hais tias muaj kev sib tw ntawm cov neeg siv khoom qis tshaj plaws rau kev siv lub computer tshaj plaws. Txawm hais tias kev siv cov ntawv xov tooj no kuj ua rau me ntsis kev nplua ntxiv rau cov tshuab luam ntawv, tus nqi ntxiv ntawm kev loj hlob tsis yooj yim rau kev pom zoo vim qhov kev sib tw ntawm cov tshuab luam ntawv. Kuj, kev paub tab zoo li decoding tus entropy encoding algorithms siv nyob rau hauv video codecs tsis yooj yim sua kom parallelize vim txhua tus generated generated yog siv los tsim cov teebmeem tom ntej ntawm lub entropy decoding algorithm.


Muab cov teeb meem loj ntawm cov ntsiab lus ntawm cov khoos phis ntau, tsim cov teeb meem ntawm lub thawv thiab lub zog ntawm kev siv zog los ntawm kev ua kom muaj kev nce siab ntxiv hauv kev sib tw ntawm kev sib tw ua haujlwm, qhov twg cov software siv tau ntau yam los ua kom zoo dua cov tshiab chips no qhov loj tshaj plaws ntawm kev siv computer hauv yav tom ntej. Yog tias cov neeg tsim khoom tsim tsis tau cov software tsim los siv cov kev pab cuam muab los ntawm ntau lub cores, ces lawv yuav mus txog qhov kev pab cuam uas tsis muaj kev pov hwm.


Lub lag luam kev sib txuas lus tau ua ib qho ntawm thawj zaug uas tsim nyog yuav tsum tsim ib qho qauv tshiab ntawm cov ntaub ntawv sib luag ntawm cov ntaub ntawv sib luag vim hais tias muaj kev tu me me ntawm cov tub lag luam ntau hom rau datapath thiab lub dav hlau tswj. Cov MPU no yuav hloov cov txheej txheem Network Processors uas yog los ntawm cov khoom siv microcode los yog picocode.


Cov tswv yim qhia cov txheej txheem ntawm cov kev pab cuam tau txais txiaj ntsim los ntawm ntau lub qhab nia ncaj qha. Qee cov qauv ua haujlwm nrog rau kev ua haujlwm xws li Cilk Plus, OpenMP, OpenHMPP, FastFlow, Skandium, MPI, thiab Erlang yuav siv tau rau cov tub ntxhais kawm ntau qhov chaw. Intel tau pib ib lub ntsiab lus tshiab rau C ++ parallelism hu ua TBB. Lwm cov kev tshawb fawb muaj xws li Codeplay Sieve System, Cray's Chapel, Hnub Tshav Ntuj, thiab IBM's X10.


Cov tub ntxhais ua tiav kuj tau cuam tshuam cov peev xwm ntawm kev lag luam niaj hnub niaj hnub tsim. Cov neeg tsim tawm lub programming hauv cov lus tshiab yuav pom tias lawv hom lus uas niaj hnub tsis txhawb ntau tus cwj pwm. Qhov no ces yuav tsum siv cov qiv hauv tsev kawm ntawv kom nkag tau cov cai sau ua hom lus xws li C thiab Fortran, uas ua lej lej sai dua cov lus tshiab dua C #. Intel's MKL thiab AMD's ACML yog sau hauv cov haiv neeg no thiab coj kom zoo dua ntawm cov tub ntxhais ua haujlwm. Ntsuas cov ntaub ntawv sau ua haujlwm thoob plaws cov txheej txheem yuav ua tau teeb meem, tshwj xeeb tshaj yog lawv muaj cov yam ntxwv ua txawv. Muaj ntau hom qauv sib txawv los daws qhov teeb meem, piv txwv li siv cov lus sib tham thiab cov kev pab cuam hauv tsev kawm (cov tsev qiv ntawv nyeem lossis cov haujlwm siab dua). Txhua lub thaiv tau muaj kev txawv txav ntawm txhua hom kev ua haujlwm. Cov neeg siv cov kev pab cuam siv cov npe abstractions thiab ib tus neeg ua lag luam muaj tswv yim xaiv qhov zoo tshaj plaws los ntawm lub ntsiab lus.


Kev tswj cov concurrency acquires ib txoj haujlwm tseem ceeb hauv kev tsim cov kev coj ua haujlwm sib luag. Cov kauj ruam yooj yim hauv kev tsim cov qauv siv rau kev ua haujlwm yog:


Partitioning

Cov theem ntawm cov qauv tsim yog tsim los qhia cov sijhawm rau kev ua haujlwm tiav. Vim li no, qhov ua kom pom tseeb yog muaj ntau qhov kev pabcuam me me thiaj li yuav ua li cas thiaj li muaj lub ntsiab lus zoo dua.

Kev sib txuas lus

Cov dej num uas tau tsim los ntawm kev muab faib yog tsim los rau txim rau tib lub sij hawm, tiam sis tsis muaj peev xwm, feem ntau, ua nws tus kheej. Qhov le caag nuav yuav tsum tau ua nyob huv ib teg num ua le feem ntau yuav tsum tau muab cov ntaub ntawv txuam rua lwm txuj num. Cov ntaub ntawv yuav tsum tau muab xa tawm ntawm kev paub tab thiaj li cia le caag los nce ntxiv. Cov ntaub ntawv nquag no teev nyob rau hauv kev sib txuas lus theem ntawm tus tsim.

Agglomeration

Hauv peb theem, kev loj hlob txav los ntawm cov paub daws teeb mus rau lub pob zeb. Cov neeg tsim khoom tsim kev rov qab txiav txim siab hauv cov kev faib tawm thiab kev sib txuas lus nrog rau kev nrhiav kom tau ib qho kev siv algorithm uas yuav ua rau kev ua tau zoo rau qee chav kawm ntawm lub tshuab hlwb hlau. Hauv particular, developers xav txog tias nws yog ib qho tseem ceeb los ua ke, los yog agglomerate, paub tab raws ntawm partitioning theem, thiaj li muab ib tug me me ntawm cov kev pab raws qib, txhua tus loj dua. Lawv kuj txiav txim siab seb nws puas tsim nyog rau cov ntaub ntawv thiab kev laij tawm.

Mapping

Nyob rau theem plaub thiab zaum kawg ntawm tus qauv tsim ntawm cov txheej txheem sib luag, cov neeg tsim khoom tsim kom pom qhov twg txhua txoj hauj lwm yog ua rau txim. Cov teeb meem no tsis tuaj yeem tshwm sim ntawm cov tshuab tsis ua haujlwm los sis hauv computer uas sib koom ua ke uas muab kev ua hauj lwm tsis tiav.

Ntawm qhov tod tes, ntawm tus neeg rau zaub mov, cov tub lag luam ntau hom yog qhov zoo tagnrho vim tias lawv tso ntau tus neeg siv txuas mus rau ib qhov chaw ib zaug thiab muaj kev sib nrauj ntawm kev ua tiav. Qhov no pub rau cov Web servers thiab cov neeg thov kev pabcuam uas muaj kev xa ntau dhau.


Ntawv tso cai

Cov neeg muag khoom yuav tso cai qee qhov software "ib processor". Qhov no yuav ua rau kom tsis pom tseeb, vim hais tias "processor" yuav ua rau muaj ib tus ntxhais los yog ib txwm ua ke ntawm caj dab.


Pib, rau qee qhov kev lag luam software, Microsoft tseem pheej siv qhov kev tso cai ntawm ib lub qhov (socket). Txawm li cas los, rau ib co software xws li BizTalk Server 2013, SQL neeg rau zaub mov 2014, thiab Windows Server 2016, Microsoft tau txav mus rau ib tus ntxhais tso.

Oracle Corporation suav ib AMD X2 los yog Intel dual-core CPU ua ib tus kws kho [tsim nyog] tab sis siv lwm qhov kev ntsuas rau lwm hom, tshwj xeeb tshaj yog rau cov processors nrog ntau tshaj ob lub qhwv.