会员注册 | 登录 | 微信快捷登录 支付宝快捷登录 QQ登录 微博登录 | 帮助中心 人人文库renrendoc.com美如初恋!
站内搜索 百度文库

热门搜索: 直缝焊接机 矿井提升机 循环球式转向器图纸 机器人手爪发展史 管道机器人dwg 动平衡试验台设计

   首页 人人文库网 > 资源分类 > PDF文档下载

47-How to Make a Multiprocessor Computer That Correctly Executes Multiprocess Programs.pdf

  • 资源星级:
  • 资源大小:465.94KB   全文页数:2页
  • 资源格式: PDF        下载权限:注册会员/VIP会员
您还没有登陆,请先登录。登陆后即可下载此文档。
  合作网站登录: 微信快捷登录 支付宝快捷登录   QQ登录   微博登录
友情提示
2:本站资源不支持迅雷下载,请使用浏览器直接下载(不支持QQ浏览器)
3:本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰   

47-How to Make a Multiprocessor Computer That Correctly Executes Multiprocess Programs.pdf

IEEETRANSACTIONSONCOMPUTERS,VOL.C28,NO.9,SEPTEMBER1979REFERENCES1C.Black,C.E.Sundberg,andW.K.S.Walker,Developmentofaspacebornememorywithasingleerroranderasurecorrectionscheme,inConf.Rec.,1977FaultTolerantComputingSymp.,FTCS7,June1977,pp.5055.2C.Blacketal.,Highlyreliablesemiconductormemoryfortheonboardcomputer,FinalRep.ESTECContr.2528/75/HP,BritishAircraftCorp.,Bristol,England.3R.W.Lucky,J.Salz,andE.J.Weldon,Jr.,PrinciplesofDataCommunication.NewYorkMcGrawHill,1968.4W.W.PetersonandE.J.Weldon,Jr.,ErrorCorrectingCodes,2ndEd.Cambridge,MAMITPress,1972.5M.Y.Hsiao,AclassofoptimalminimumoddweightcolumnSEC/DEDcodes,IBMJ.Res.Develop.,pp.395401,July1970.6G.Longo,AlgebraiccodingandcombinatoricsAtutorialsurvey,NATOAdvancedStudyInstitute,Darlington,England,Aug.820,1977,Conf.Rec.,SijthoffNoordhoff,1978,seriesE,no.25,pp.151169.7E.R.Berlekamp,AlgebraicCodingTheory.NewYorkMcGrawHill,1968.8R.P.Capece,Memoryrichminisgetaggressive,Electronics,pp.6970,Aug.18,1977.9H.J.HelgertandR.D.Stinaff,Minimumdistanceboundsforbinarylinearcodes,IEEETrans.InformationTheory,vol.IT19,pp.344356,May1973.10C.E.Sundberg,Sometransparentshortenedcodesforsemiconductormemories,TelecommunicationTheory,Univ.ofLund,Lund,Sweden,Tech.Rep.TR91,Sept.1977.11Erasuresanderrorsdecodingforsemiconductormemories,IEEETrans.Comput.,vol.C27,pp.696705,Aug.1978.12W.C.CarterandC.E.McCarthy,Implementationofanexperimentalfaulttolerantmemorysystem,IEEETrans.Comput.,vol.C25,pp.557568,June1976.ofeachindividualprocessordoesnotguaranteethatthemultiprocessorcomputerissequentiallyconsistent.Inthisbriefnote,wedescribeamethodofinterconnectingsequentialprocessorswithmemorymodulesthatinsuresthesequentialconsistencyoftheresultingmultiprocessor.Weassumethatthecomputerconsistsofacollectionofprocessorsandmemorymodules,andthattheprocessorscommunicatewithoneanotheronlythroughthememorymodules.Anyspecialcommunicationregistersmayberegardedasseparatememorymodules.Theonlyprocessoroperationsthatconcernusaretheoperationsofsendingfetchandstorerequeststomemorymodules.Weassumethateachprocessorissuesasequenceofsuchrequests.Itmustsometimeswaitforrequeststobeexecuted,butthatdoesnotconcernus.Weillustratetheproblembyconsideringasimpletwoprocessmutualexclusionprotocol.Eachprocesscontainsacriticalsection,andthepurposeoftheprotocolistoinsurethatonlyoneprocessmaybeexecutingitscriticalsectionatanytime.Theprotocolisasfollows.process1ifb0thencriticalsectionelse...fiHowtoMakeaMultiprocessorComputerThatCorrectlyExecutesMultiprocessProgranmLESLIELAMPORTAbstractManylargesequentialcomputersexecuteoperationsinadifferentorderthanisspecifiedbytheprogram.Acorrectexecutionisachievediftheresultsproducedarethesameaswouldbeproducedbyexecutingtheprogramstepsinorder.Foramultiprocessorcomputer,suchacorrectexecutionbyeachprocessordoesnotguaranteethecorrectexecutionoftheentireprogram.Additionalconditionsaregivenwhichdoguaranteethatacomputercorrectlyexecutesmultiprocessprograms.IndexTermsComputerdesign,concurrentcomputing,hardwarecorrectness,multiprocessing,parallelprocessing.Ahighspeedprocessormayexecuteoperationsinadifferentorderthanisspecifiedbytheprogram.Thecorrectnessoftheexecutionisguaranteediftheprocessorsatisfiesthefollowingconditiontheresultofanexecutionisthesameasiftheoperationshadbeenexecutedintheorderspecifiedbytheprogram.Aprocessorsatisfyingthisconditionwillbecalledsequential.Consideracomputercomposedofseveralsuchprocessorsaccessingacommonmemory.Thecustomaryapproachtodesigningandprovingthecorrectnessofmultiprocessalgorithms13forsuchacomputerassumesthatthefollowingconditionissatisfiedtheresultofanyexecutionisthesameasiftheoperationsofalltheprocessorswereexecutedinsomesequentialorder,andtheoperationsofeachindividualprocessorappearinthissequenceintheorderspecifiedbyitsprogram.Amultiprocessorsatisfyingthisconditionwillbecalledsequentiallyconsistent.ThesequentialityManuscriptreceivedSeptember28,1977revisedMay8,1979.TheauthoriswiththeComputerScienceLaboratory,SRIInternational,MerlsPark,CA94025.process2b1ifa0thencriticalsectionb0else..fiTheelseclausescontainsomemechanismforguaranteeingeventualaccesstothecriticalsection,butthatisirrelevanttothediscussion.Itiseasytoprovethatthisprotocolguaranteesmutuallyexclusiveaccesstothecriticalsections.Devisingaproofprovidesaniceexerciseinusingtheassertionaltechniquesof2and3,andislefttothereader.Hence,whenthistwoprocessprogramisexecutedbyasequentiallyconsistentmultiprocessorcomputer,thetwoprocessorscannotbothbeexecutingtheircriticalsectionsatthesametime.Wefirstobservethatasequentialprocessorcouldexecutetheb1andfetchboperationsofprocess1ineitherorder.Whenprocesslsprogramisconsideredbyitself,itdoesnotmatterinwhichorderthesetwooperationsareperformed.However,itiseasytoseethatexecutingthefetchboperationfirstcanleadtoanerrorbothprocessescouldthenexecutetheircriticalsectionsatthesametime.Thisimmediatelysuggestsourfirstrequirementforamultiprocessorcomputer.RequirementRlEachprocessorissuesmemoryrequestsintheorderspecifiedbyitsprogram.SatisfyingRequirementRIiscomplicatedbythefactthatstoringavalueispossibleonlyafterthevaluehasbeencomputed.Aprocessorwilloftenbereadytoissueamemoryfetchrequestbeforeitknowsthevaluetobestoredbyaprecedingstorerequest.Tominimizewaiting,theprocessorcanissuethestorerequesttothememorymodulewithoutspecifyingthevaluetobestored.Ofcourse,thestorerequestcannotactuallybeexecutedbythememorymodule,untilitreceivesthevaluetobestored.00189340/79/0900069000.75C1979IEEE690IEEETRANSACTIONSONCOMPUTERS,VOL.c28,NO.9,SEPTEMBER1979RequirementRIisnotsufficienttoguaranteecorrectexecution.Toseethis,supposethateachmemorymodulehasseveralports,andeachportservicesoneprocessororI/Ochannel.Letthevaluesofaandbbestoredinseparatememorymodules,andconsiderthefollowingsequenceofevents.1Processor1sendsthea1requesttoitsportinmemorymodule1.ThemoduleiscurrentlybusyexecutinganoperationforsomeotherprocessororI/Ochannel.2Processor1sendsthefetchbrequesttoitsportinmemorymodule2.Themoduleisfree,andexecutionisbegun.3Processor2sendsitsb1requesttomemorymodule2.Thisrequestwillbeexecutedafterprocessorlsfetchbrequestiscompleted.4Processor2sendsitsfetcharequesttoitsportinmemorymodule1.Themoduleisstillbusy.Therearenowtwooperationswaitingtobeperformedbymemorymodule1.Ifprocessor2sfetchaoperationisperformedfirst,thenbothprocessescanentertheircriticalsectionsatthesametime,andtheprotocolfails.Thiscouldhappenifthememorymoduleusesaroundrobinschedulingdisciplineinservicingitsports.Inthissituation,anerroroccursonlyifthetworequeststomemorymodule1arenotexecutedinthesameorderinwhichtheywerereceived.Thissuggeststhefollowingrequirement.RequirementR2MemoryrequestsfromallprocessorsissuedtoanindividualmemorymoduleareservicedfromasingleFIFOqueue.Issuingamemoryrequestconsistsofenteringtherequestonthisqueue.ConditionRIimpliesthataprocessormaynotissueanyfurthermemoryrequestsuntilafteritscurrentrequesthasbeenenteredonthequeue.Hence,itmustwaitifthequeueisfull.Iftwoormoreprocessorsaretryingtoenterrequestsinthequeueatthesametime,thenitdoesnotmatterinwhichordertheyareserviced.Note.Ifafetchrequeststhecontentsofamemorylocationforwhichthereisalreadyawriterequestonthequeue,thenthefetchneednotbeenteredonthequeue.Itmaysimplyreturnthevaluefromthelastsuchwriterequestonthequeue.ORequirementsRIandR2insurethatiftheindividualprocessorsaresequential,thentheentiremultiprocessorcomputerissequentiallyconsistent.Todemonstratethis,onefirstintroducesarelationonmemoryrequestsasfollows.DefineABifandonlyif1AandBareissuedbythesameprocessorandAisissuedbeforeB,or2AandBareissuedtothesamememorymodule,andAisenteredinthequeuebeforeBandisthusexecutedbeforeB.ItiseasytoseethatRIandR2implythatisapartialorderingonthesetofmemoryrequests.Usingthesequentialityofeachprocessor,onecanthenprovethefollowingresulteachfetchandstoreoperationfetchesorstoresthesamevalueasifalltheoperationswereexecutedsequentiallyinanyordersuchthatABimpliesthatAisexecutedbeforeB.Thisinturnprovesthesequentialconsistencyofthemultiprocessorcomputer.RequirementR2statesthatamemorymodulesrequestqueuemustbeservicedinaFIFOorder.Thisimpliesthatthememorymodulemustremainidleiftherequestattheheadofitsqueueisastorerequestforwhichthevaluetobestoredhasnotyetbeenreceived.ConditionR2canbeweakenedtoallowthememorymoduletoserviceotherrequestsinthissituation.Weneedonlyrequirethatallrequeststothesamememorycellbeservicedintheorderthattheyappearinthequeue.Requeststodifferentmemorycellsmaybeservicedoutoforder.Sequentialconsistencyispreservedbecausesuchaservicepolicyislogicallyequivalenttoconsideringeachmemorycelltobeaseparatememorymodulewithitsownrequestqueue.Thefactthatthesemodulesmaysharesomehardwareaffectstherateatwhichtheyservicerequestsandthecapacityoftheirqueues,butitdoesnotaffectthelogicalpropertyofsequentialconsistency.Therequirementsneededtoguaranteesequentialconsistencyruleoutsometechniqueswhichcanbeusedtospeedupindividualsequentialprocessors.Forsomeapplications,achievingsequentialconsistencymaynotbeworththepriceofslowingdowntheprocessors.Inthiscase,onemustbeawarethatconventionalmethodsfordesigningmultiprocessalgorithmscannotbereliedupontoproducecorrectlyexecutingprograms.Protocolsforsynchronizingtheprocessorsmustbedesignedatthelowestlevelofthemachineinstructioncode,andverifyingtheircorrectnessbecomesamonumentaltask.REFERENCES1E.W.Dijkstra,Hierarchicalorderingofsequentialprocesses,ActaInformatica,vol.1,pp.115138,1971.2L.Lamport,Provingthecorrectnessofmultiprocessprograms,IEEETrans.SoftwareEng.,vol.SE3,pp.125143,Mar.1977.3S.OwickiandD.Gries,Verifyingpropertiesofparallelprogramsanaxiomaticapproach,Commun.Assoc.Comput.Mach.,vol.19,pp.279285,May1976.CommentsonAnApproachtoHighlyIntegratedComputerMaintainedCellularArraysVISHWANID.AGRAWALAbstractTheabovepaperdescribesmachinesconstructedonfaultylogicarrays.Thesemachinesusesomeorallofthegoodcellsthatformaconnectivecluster.Itispointedoutherethatwhenthefaultycellsarerandomlydistributedoverthearray,thepropagationofafreelyexpandingsignal,whichmustavoidthefaultycells,isapercolationprocess.Thepercolationprocessdeterminesthelimittothesizeofamachineembeddedinafaultyarray.Someusefulcharacteristicsofthisprocessarediscussed.IndexTermsCellulararrays,faultsinlogicarrays,percolationprocess,programmablelogic,randomprocesses.Manning,inarecentpaper,hasdescribedtheembeddedmachineswhichareconfiguredinalogicarraycontainingsomeflawedcells.Inarectangulararray,eachcellcommunicatesthroughitsfourneighborsandhencebecomesinaccessibleifallthefourneighborsareflawed.Theembeddedmachinethususesaconnectiveclusteroflogiccellsboundedwithinthearrayboundariesandtheflawedcells.Asthenumberofflawedcellsincreases,thesizeofagoodcellclusterbecomesrestricted.Thepurposeofthiscommunicationistoillustratethattheformationofanembeddedclusterinanarrayofflawedcellsisapercolationprocesswhichhasbeenextensivelystudiedintheliterature1.ManuscriptreceivedNovember20,1977revisedApril20,1979.TheauthorwaswithTRWDefenseandSpaceSystemsGroup,RedondoBeach,CA90278.HeisnowwiththeBellLaboratories,MurrayHill,NJ07974.IF.B.Manning,IEEETrans.Comput.,vol.C26,pp.536552,June1977.00189340/79/0900069100.75C1979IEEE691

注意事项

本文(47-How to Make a Multiprocessor Computer That Correctly Executes Multiprocess Programs.pdf)为本站会员(baixue100)主动上传,人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知人人文库网([email protected]),我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。

copyright@ 2015-2017 人人文库网网站版权所有
苏ICP备12009002号-5