现代计算机体系结构.ppt
现代计算机体系结构1现代计算机体系结构主讲教师:张钢教授天津大学计算机学院通信邮箱:提交作业邮箱:2016年
2TheMainContents课程主要内容Chapter1.FundamentalsofQuantitativeDesignandAnalysisChapter2.MemoryHierarchyDesignChapter3.Instruction-LevelParallelismandItsExploitationChapter4.Data-LevelParallelisminVector,SIMD,andGPUArchitecturesChapter5.Thread-LevelParallelismChapter6.Warehouse-ScaleComputerstoExploitRequest-LevelandData-LevelParallelismAppendixA.Pipelining:BasicandIntermediateConcepts
3.4/3.5/3.6课堂讨论
AdvantagesofDynamicSchedulingDynamicschedulingHardwarerearrangestheinstructionexecutiontoreducestallswhilemaintainingdataflowandexceptionbehaviorWhat’sthemeaningthatmaintainingdataflowandexceptionbehavior?
AdvantagesofDynamicSchedulingAdvantagesIthandlescaseswhendependencesunknownatcompiletimeitallowstheprocessortotolerateunpredictabledelayssuchascachemisses,byexecutingothercodewhilewaitingforthemisstoresolveItallowscodethatcompiledforonepipelinetorunefficientlyonadifferentpipelineItsimplifiesthecompilerWhy?
HWSchemes:InstructionParallelismKeyidea:Allowinstructionsbehindstalltoproceed
DIVD F0,F2,F4
ADDD F10,F0,F8
SUBD F12,F8,F14Enablesout-of-orderexecutionandallowsout-of-ordercompletion(e.g.,SUBD)Inadynamicallyscheduledpipeline,allinstructionsstillpassthroughissuestageinorder(in-orderissue)Whatarethemeaningthatin-orderissue,out-of-orderexecution,out-of-ordercompletion?
HWSchemes:InstructionParallelisilldistinguishwhenaninstructionbeginsexecutionandwhenitcompletesexecution;between2times,theinstructionisinexecutionWhenandWhereinapipeline?Note:DynamicexecutioncreatesWARandWAWhazardsandmakesexceptionsharderWhyitcancreateWARandWAW?
DynamicSchedulingStep1Simplepipelinehad1stagetocheckbothstructuralanddatahazards:InstructionDecode(ID),alsocalledInstructionIssueSplittheIDpipestage