<<

2006-274: TEACHING ARCHITECTURE PERFORMANCE ANALYSIS

Gregory Palmier, Purdue University Gregory M. Palmier Gregory Palmier was a graduate student in the College of Technology working on computer architecture and performance.

Jeffrey Honchell, Purdue University Jeffrey W. Honchell Professor Honchell is an Associate Professor in the Department of Electrical and technology at Purdue University, West Lafayette. His professional area of interest is teaching and applied research in the area of RF communications. Professor Honchell also has 10 years of combined industrial experience with IBM and The Johns Hopkins University Applied Physics Laboratory. He has also been actively involved in the ASEE and IEEE holding various positions over the last 10 years. Page 11.1202.1

© American Society for Engineering Education, 2006 TeachingComputerArchitecturePerformanceAnalysis Introduction ThefieldofComputerEngineeringcontinuestomakegreatstridesascomputerhardware consistentlyreducestoafractionofitsformersizewhileincreasinginspeedand capabilities.Educationinthisfieldisdemandingandcompetitiveasthecomplexityof today’scomputertechnologyincreasessteadily.WhiletheCollegeoftechnologyat PurdueUniversityoffersmanycoursesteachingtheuseofacomputerasatool,thereare fewclassesofferingatechnical“hands-on”approachtoanalyzingtheperformanceof differentcomputerarchitecturesandfosteringanunderstandinghowcomputersystems function.Thisfieldofeducationisdominatedbytheoreticalcomputerarchitecture classesintheSchoolofElectricalandComputerEngineeringandhaslittletooffer studentswithtechnicalbackgroundsinterestinginthesubjectofComputerengineering andPerformanceAnalysis.Thereforeameaningfullaboratorysupplementtothe theoreticalknowledgeappliedtofuturetechnologyisnecessaryforabetter understandingofacomputersystem’sarchitectureandperformance. TheroleofElectricalandComputerEngineeringTechnology(ECET325)atPurdue Universitywillprovidestudentswithlearningexperienceofintroductorycomputer architecturedesignsandtheorieswitharequiredlaboratoryexperimenteachweek.The goaloftheselaboratoryexperimentswillbetoreinforcethelecturetopicsofcomputer architecturefortechnologystudents.Studentsintechnologycurriculumsneedto establishpropermethodologiesforunderstandingcomputerperformancewithstatistical analysisusingtoolsforbenchmarkingandanalyzingcomputersystem configurations.Thiswillbeaccomplishedasapartofthelaboratoryexperience. TheseperformancemeasurementsincludeproperlyanalyzingtheCPU,memory,and operatingsystemintermsofsimilaritiesanddifferences.Conductingthelaboratory experimentswillprovidestudentswitha“realworld”viewofcomputerprocessingin real-time.Analyzingthesecharacteristicsofcomputersystemswillprovidestudentswith anunderstandingofhowtoproperlyassesstheperformanceofnewcomputersystemsfor taskspecificapplications. Theobjectiveofbenchmarkingistoattempttodefineandmeasuremachinepowerin suchawaythattheycancompareonemachinewithanother[1].Studentsinthe ComputerEngineeringTechnologyfieldneedtheexperienceofworkingonalaboratory experimenttoanswerquestionslike;“Whatisbeingmeasured?Howisperformance properlyanalyzed?Howisthisaffectedbytheoperatingsystem?”Thehumandesirefor fastertechnologyfuelstheproblemfacinganalystsinperformancetuning:itisthe adaptationofthespeedofacomputersystemtothespeedrequirementsimposedbythe realworld[2].Itisthesetopicsinperformanceanalysisthatneedtobeappliedtokeep thedesignrequirementsofcomputersystemsmovingforward. Page 11.1202.2

Background Tocreateamethodfordevelopingexercisestoanalyzecomputerperformanceand modeling,aliteraturereviewprocessisusedtoorganizeanapproachforsolvingthe problemwhileprovidingfocusonhowtheprojectsresearchwillcontributetothe technologyfieldbasedonpreviousrelatedwork.Currentcomputerengineering programscontainasignificantamountofmaterialforimplementationofcomplex hardware/softwaresystems,howevertheuseofperformancemodelingtoanalyze computerdesignalternativeshasnotmadeitswayintotheundergraduatecurriculum[3]. Theliteraturereviewprocessinvolvesfourmethodsoffindingliteraturerelevanttothe problem,purpose,significanceandmethodologyforthestudy.Thefirstgoalofthis literaturereviewistofindresourcesthatarerelevanttotheunderstandingofcomputer systembenchmarking,modeling,andanalysisasatool.Whiletherearemanyresources availabletocomputerarchitecturedesign,resourcesapplicabletotheunderstandingof thecomputer,modelingandanalysistopicsthemselvesareresearched.The topicsoftheseresourcesincludetheroleofbenchmarkingintechnology,acomparisonof differentbenchmarkingtypes,andtheinterpretationofperformancedata.Thisresearch isananalysisofthetraditionalideasandmethodsofbenchmarkingthatdonotfocus directlyonthebenchmarkprogramming,insteadhowthebenchmarkingtoolscanbe used.Thisincludesresearchingcomputersystemanalysisandthedefinitionofcomputer systemperformanceanalysisasafieldofstudy. Secondly,therepresentationofnumbersandvisualdatamustbeunderstoodtoproperly quantifytheresultsoftheanalysisofagivencomputersystem.Performancegraphsare usedtodepictdatatoahumanbeingasamethodofunderstandingwhatthenumbersare representing.Datarepresentedvisuallycanbeskewedaccordingtoamanufacturer’s, author’sorprogrammer’sbiastowardscertainarchitecturesorcomputersystemfeatures, thereforeunderstandinganalysisreportsandvisualdataisresearchedinconjunctionwith howthecomputeranalysisdataisobtained. Next,themethodsofeducationundergraduatestudents,topicsincomputerarchitecture andperformanceanalysisareresearched.Morerecentpublicationsincludingjournals andconferencepapersarehighlyrelevantbecausetheyrepresentamorerecent observationofcurrentindustrialandeducationalfocus.EducationalgoalsoftheCollege ofTechnologyprovideagreaterfocusforthisportionoftheresearchbydiscerning relevanttosolvingtheproblemofthisstudy. Thelastresearchgoalinvolvesgatheringmethodsofusingcomputersoftwaretoolsto analyzecomputersystemsinalimitedtimeinstructionalsetting.Resourcesapplicableto theuseofsoftwaretoolsincludeoperatingsystemmanuals,softwarepackagemanuals, systemperformanceguides,andinstructionalcomputeranalysisprintedworks.Theuse oftheInternetishelpfulforthehighlevelsoftwaretoolsreadilyavailabletosolvethe problemofthestudy.Thisincludesusingbenchmarkingtoolstoanalyzethecomputer systemasawholeorinpart.Moreresearchpertainingtothisareawillcomefrommore Page 11.1202.3 recentpublicationssuchasjournalarticlesandconferencepapers.Duetothefact,that

therearemanydifferentcomputerarchitecturesandtheseanalysismethodsmayonly pertaintonew,moresophisticatedtechniquesofanalyzingperformanceproperly.There aretwotypesofcomputerbenchmarks,systemandcomponent.Theuseofbenchmark softwaredistinguishingthetwotypeswillbeup-to-datewithtoday’scurrentcomputer technology;therefore,traditionalcomputerperformanceideaswillnotaidethisportionof theliteraturefinding.. LiteratureReview Theresultsoftheliteraturesearchindicateaneedformoreconceptualizedanalysisof computersystems,tobringthecriticaltopicsofimplementingalternativecomputer systemdesignsintotechnologyeducation.Designalternativesmustbeevaluatedearlyin thedesignprocessbeforedetailedinformationaboutthesystemexists;thereforetheuse ofabstractarchitecturemodelsisusedtocreateperformancemodels[3].Therelevance ofteachingthesetopicshavebeenofinterestsincetheestablishmentofthe JointTast ForceonComputingCurricula2001 bythe ComputerSocietyoftheInstitutefor ElectricalandElectronicEngineers(IEEE) andthe AssociationforComputerMachinery (ACM) toevaluatethecomputercurriculuminundergraduateprograms.Outsideof computerengineeringprinciples,objectivesofthisevaluationincludeimportantissues fordesigners,andtoolsneededforcarryingoutresearch[4].Theeducationofcomputer systemdesignusingmodelingandevaluationmethodsnotonlyincludescomputer architectureasseenthroughtheeyesofaprogrammer,buthowtheimplementationand organizationofthecomputersystemwilldictateitsdesign[4].Implementationand organizationofacomputersystemdesignincludesallcomponentsofthesystemwhich affectthecomputerarchitecture.Thisprojectwillanalyzemultiplecomputersystem componentdesignswhichincludeoperatingsystemchoices,memoryandmotherboard architecture,filesystemsI/Odevicessuchasdatastoragedevicesandcomputerprocess handlingbestsuitedforcomputersystemdesignapplications.Toolsforperformance analysisinplacehavebeensuccessfulinanalyzinghardwareandsoftwarecomponentsof adesignforcomputerprofessionals,however,useofthesetoolsbyundergraduates requireseaseofunderstandingsothatdesignalternativesofcomputersystemscanbe applied. Inapaperdescribingtheevolutionofcomputerperformanceevaluationsincethe1960’s, benchmarkingwasdescribedastheonlytechniquetoreceiveconsistentuseasa performanceevaluationtool[5]/Researchemphasizedtheincreasingimportanceof performanceevaluationbytheestablishmentoftheACMin1971.TheACMrecognized aneedforunderstandingtherelationshipbetweencomputersystemmodelsandthetolls usefulforperformanceevaluation.Moreresearchshowsthatmostundergraduate engineeringprogramsspendsignificanttimeonimplementingcomplexhardwareand softwaredesigns,butdonotutilizeperformancemodelingasatoolforanalyzingdesign alternatives.Computermanufacturersoftenusebenchmarkswithandagendatoshow superiorityinacompetitivemarket,however,resultsoftenmisleadsystemdesignerswith inaccuratedepictionsofcomponentperformance.Researchshowsthatusingtraditional statisticalmethodscausesthesebadinterpretationsanddesignersmuchdistinguish Page 11.1202.4 betweentraditionalstatisticsandcomputer-relatedstatisticalmethodswhichaccurately

depictthecomputerperformance.Softwaretoolsoftensummarizecomputer performanceintoonenumberforconclusions,butcanonlybeusefultoasystemdesigner ifconsideredproperly[6].Morefindingsindicatetheuseandabuseofperformance monitoringsystems.Asimilarstudy’sresults,fromthe JointTaskForceonComputing Curricula2001(CC2001) ,revealsasemesterlongtimelineforcomputerarchitecture topicsandalsooutlinescourseobjectivesandamountoftimespentontopics.However, theCC2001studyfocusedmorespecificallyonprocessorarchitecturebylectureandhad nolaboratoryexercises.Thegoalofthisprojectistocontinuewithasimilarmodel producedbytheCC2001andreinforcethelecturetopicswithlaboratoryinstructionfor bettercomprehension.Comparedtolecture-onlyinstruction,reinforcementwith laboratoryexercisescanincreasethecomprehensionofcomputersystemperformance topics. Previousstudiesrelatedtotheeducationenvironmentofcomputerengineering undergraduateshavedeterminedthatthesuccessofthisprojectstrategydependson completingthegoalconsideringthefollowingvariables.First,thematerialmustbe understandableonalevelcomparabletothecomplexityofsimilarcomputersystem undergraduateprojects.Second,allofthereferencematerialnecessaryforcompleting laboratoryexercisesmustbeavailableinwhat[3]callsa“prefabricated”environment. Withtwohourperweektimeconstraintsasalimitationofpotentialstudentsuccess, quickaccesstomaterialreferencesaidingstudentexercisesisessential.Third,the materialneedstobeflexiblesothatitcanbeappliedtodifferentapplicationsand repeatableindifferentprojects.Limitationsofthisvariablearedefinedbythecomputer systemarchitecturesthatwillbeusedinthelaboratoryexperimentsandthebreadthof abilitiesthedifferentmodelinganalysistoolsprovideforanalyzingsystems.For instance,thereisno“allencompassing”computerbenchmarktoolavailableforany computerarchitectureandoperatingsystem,sodifferenttoolswillbeutilizedfor analyzingdifferentcomponentsofthecomputersystem.Thelaboratoryexperimentswill utilizeMicrosoftWindows,DebianLinuxandSunSolariswhicharewidelyusedforboth personalworkstationsandlargescalecomputersystems.Anothervariablerelatingtothe successofthestudent’sunderstandingofthelaboratorymaterialwillbethedepthof requirementscompletedoutsideoflabinpreparationforthelabsession.Thismethodis usedbytheECETdepartment’sstrategyforpreparingthestudentstobereadytoutilize theshorttimeinlabefficiently.Limitationsofthe“pre-lab”needtobeconcisewith providinginformationnecessarytocompletethelaboratoryexperiment,withoutrequiring theuseofanycomputerperformancetools. Variablesinselectingtheanalysissoftwareusedinthelaboratoryexperimentswill dependonthefollowingcharacteristics.Theamountoftimerunningtheanalysistools mustbeefficientandprovideforthelimitationsforthetoolsthatwillbeacceptablefor laboratoryexercises.Softwaretoolsthatrequirelargeamountsoftimearenotusefulfor laboratoryexperimentsifthestudentsarewaitingforresultsduringtheentirelaboratory session.Also,thecomputertoolsmustbeabletomeettheminimumhardware requirementsforthecomputersystem.Thislimitationincludedensuringhardware compatibilitywiththeoperatingsystemandanalysistools.Findingsofsoftwaretools Page 11.1202.5 availableshowthat sar , vmstat ,andtoolsofferedbySiSoftware®andVeritest®

companiesaresomeexamplesofsoftwarethatarefreetouseandanalyzedifferent aspectsofcomputersystemcomponents. Aftercompletingthelaboratoryexperiments,studentsshouldhaveanunderstandingof computerarchitecturebyperformingthe“hands-on”workandwereabletointegrate theoreticaldesignsandpracticalexperiencestoperformancemetrics. DefinitionofTerms Benchmark–Theprocessofperformancecomparisonfortwoormoresystemsby measurements[8]. ComputerArchitecture–Thestructureofacomputerthatamachinelanguage programmermustunderstandtowriteacorrect(timingindependent)programforthat machine[9]. Organization–Intermsofcomputer,includesthehigh-levelaspectsofacomputer’s design,suchasthememorysystem,thebusstructure,anddesignoftheinternalCPU[7]. Performanceanalysis–Asappliedtoexperimentalcomputerscienceandengineering, shouldbethoughtofasacombinationofmeasurement,interpretationandcommunication ofacomputersystem’s‘speed’or‘size’[10]. –Measureoftheamountofcomputationperformedperunittime[10]. IntroductiontotheExperimentalProcess Topreparethelaboratoryexperiments,eachcomputerarchitecturetopicpresentedin lecturewasresearched.Performanceanalysismethodsofeachtopicwerediscovered throughtheanalysisofsoftwaretools.Theanalysistoolsweregathered,testedand critiquedonthebasisofcompatibility,easeofuse,completiontimeandresults.Figure1 showsaflowchartdiagramoftheexperimentcreationprocess. Page 11.1202.6

Figure1:ProcedureCreationProcess Eachofthelabproceduresfocusontheeaseofgatheringbasicdata.Theuseofthe script commandundertheLinuxplatformisusedconsistentlytoallowuserstorecord andimportdataeasilyintoananalysisprogram(e.g.MicrosoftExcel).Theabilityto gatherdataeasilywasafocusinthisprojectconsideringthetimeallottedandstudent knowledgerequiredfortheexperimentstobecompleted. Experimentsonethroughfourweredesignedforstudentstobecomeacquaintedwiththe computerandoperatingsystemsbeforebeingabletoanalyzetheoperation.Experiments fivethrougheightweredesignedtounderstandtheimportanceandpurposeofcomputer performanceanalysis.Table1showsthesemesterlonglaboratoryexperimentplanwith duration. Page 11.1202.7

Table1:ECET325LaboratoryExperiments

Asimposingapurposeoftheperformancetest,analysisofwhatthedatarepresents becomesmoreapparentinsteadofseeingarbitrarynumberreportsfromanalysis software.Thefinalclassofexperimentsfocusedanalysisofsinglecomponents(e.g. CPU,memory)thatcanbepedagogicallysuccessfulaftercreatingcompetencewiththe computerenvironment.Forbrevityonlytwooftheexperimentsarediscussedindetail. DataTypesandTime-Keeping TheobjectiveofthisexperimentistoidentifydifferencesinCPUinstructiontimeand becomeacquaintedwithsystemanalysistools.Apre-laboratoryassignmentwascreated topreparestudentstorunaprogramandkeeptrackofitsexecutiontime.Thelaboratory proceduresaretomodify,compileandrunasmall‘C’languageprogramusedto calculatethetimeofintegerandfloatingpointprocessingpowerofeachplatform.The programisasimplenumberadditionloop,increasingthenumberofadditionoperations throughloopiterationbyafactorof10.Figure2displaysthesyntaxtocompilethecode forLinux.Figure3displaysthecompilesyntaxintheWindowsenvironment.

Figure2:CompilingTwoProgramsUnderLinux

Figure3:CompilingProgramsUnderWindows Thedurationoftheintegerandfloatingpointcalculationswererecordedusingatimerin aCprogram.Thelab3integerbenchmarkprogramswererunundertheLinuxand Windowsoperatingsystems.TheresultsforeachprogramareshowninFigure4and Figure5.

Page 11.1202.8

Figure4:LinuxIntegeranalysis

Figure5:WindowsIntegerAnalysis Next,thestudentswereinstructedtomodifythecodetoanalyzebothintegerand floatingpointfunctions.Figure6andfigure7displaytheresultsoftheintegerand floatingpointprogramundereachoperatingsystem.

Page 11.1202.9 Figure6:LinuxIntegerandFloatingPointResults

Figure7:WindowsIntegerandFloatingPointResults ThebaseinstallofDebianispackageswiththeGCCcompilerandafreeBorland compilerwasconfiguredforWindows.UsingGCCunderWindowswouldhave involvedconfiguringCygwin,aLinux-likeenvironmentforWindowsonthetest ,butthiswasn’tdonetogiveamorebroaddifferenceinresultsforcomparison inthelaboratoryreport.Notonlyarecomputerperformanceresultsskewedduetothe platform,butalsothecompilerstoo,dependingonhowthefunctionsoftheprocessorare utilizedbythecompiler.Theresultsoftheintegerandfloatingpointtestsonthetwo differentplatformsusingdifferentcompilerswereverysignificant,whichshowedthe floatingpointcalculationstotakeuptotentimeslongerwiththeBorlandcompileron WindowsversustheGCCcompilerusingLinux.Theresultsoftheseproceduresshow thatthereismorethanonewaytomanagethearchitectureofacomputersystemnotonly bytheoperatingsystem,butalsothecompilerandthesubtledifferencesindatatypes. Thelaboratoryreportincludespresentingintegerandfloatingpointperformanceresults. Thedataisanalyzed,detailingthedifferencesbetweenusingthetwoplatformsfor analysis. FilesystemPerformanceAnalysis Theobjectivesofthisexperimentareforthestudenttobenchmarkandanalyzethe performanceoftheharddiskdriveandtoquantifytheperformancemetricsofharddrive performancecharacteristics.Thefirstprocedure[appendix]involvesinstallingtheI/O performancetoolsusedintheexperiment.Retrievingthe tiobench,systat, and hdparm softwaretoolsrequiresusingtheinternettoinstallthesoftware.Figure8showsthe syntaxrequiredtoinstallthesoftware. Page 11.1202.10

Figure8:InstallingHardDiskAnalysisTools The systat softwaresuiteincludesmorethanoneprogramforperformanceanalysis, thereforeverifyingvmstatinstallationisrequiredforthisexperiment.Theinstallationof thesoftwaretoolswasthenverifiedandisshowninfigure9.

Figure9:SoftwareToolInstallationVerified Thefirstperformanceanalysistesttobefunincludedusingthe tiotest benchmark program.ThedatageneratedbythisprogramisshowninFigure10. Page 11.1202.11

Figure10: Tiotest BenchmarkResults

Toanalyzedifferentperformanceenhancingfeaturesoftheharddisk,thediskwrite- cachingfeatureisdisabledandthe tiotest benchmarkisre-analyzed.Figure11shows howwrite-cachingisdisabledandFigure12displaysthe tiotest results.

Figure11:DisablingHardDiskWrite-Caching

Figure12: Tiotest ResultswithWrite-CachingDisabled Bydisablingthewrite-cachingfeaturesontheharddisk,thewriteprocesstimeincreased over100%for40MBofwritedata.ThenettaskwastodisabletheDirectMemory Access(DMA)featureonthecomputersystem.TheDMAfunctiononthecomputercan beenabledanddisabledbytypingthecommandsshowninFigure13.

Figure13:EnablingandDisablingDMA Page 11.1202.12

AcomparisonoftheeffectDMAhadonharddiskperformancewasthencomparedusing hdparm ,amuchsimplerharddrivetool,availablefornearlyallUNIXandLinuxbased computersystems.Figure14displaystheperformanceresultswithDMAenabledand disabled.

Figure14:DMAPerformanceImpactusing Hdparm Analyzingthedata,theperformanceimpactofenablinganddisablingtheDMAfeature ontheharddiskwasverysignificant,increasingthetransferrateupto195%when enabled. Thenexttestconductedanalyzedthedifferencesbetweentransferringdatasequentially andsynchronously.Thedifferencebetweensequentialandsynchronousdatawriteisthat theprocessordoesnotwaitfortheharddrivetocompletethewritefunctionbefore startingthenextprocessthreadinthesequentialmodetransfersothedataisintheexact orderaswastransferredtotheharddiskfromtheCPU.Inasynchronoustransfer,the dataistransferredtomemoryandiswrittenwithmultipleprocessthreads,butcausesa sifnificantperformancedecreaseandfragmentationduetomultipleconcurrentwrite functions.Figure15displaystheperformanceresultsofasequentialdatatransfer comparedtoasynchronousdatatransfershowninFigure16. Page 11.1202.13

Figure15:SynchronousHardDiskTransferPerformance

Figure16:SequentialHardDiskTransferPerformance Thenextprocedurewastoanalyzetherandomprocessusageoftheharddiskwhenusing Page 11.1202.14 thecomputersystemtocheckemail,browsetheinternetanduseotherrandomcomputer functions.Thisdatawasanalyzedoverafifteenminutetimeperiodandrecordedusing the vmstat performanceanalyzer.The vmstat toolanalyzerthetransferofI/Oblock

dataandreportssamplesaccordingtouserinputparameters.The vmstat program samplerate(inseconds)isinitiatedbyappendinganumberparametertothecommand. Figure17displaysanexampleof vmstat samplereportingwhereI/Oisreportedwith datablocksin(bi)anddatablocksout(bo).AsidefromstrictI/Ousage,the vmstat programalsoreportsusageoftheswappartition.

Figure17: Vmstat I/OStatisticalanalysis Thereportdatawasthengraphedshowingblocksinandblocksoutversustimeforeach labgroup.Eachstudentexecuteddifferentfunctionsofthecomputerduringthefifteen minutetimeperiod;thereforeallofthedatabetweenthegroupswasdifferent.Figure18 showsavmstat analysisplotofharddiskusageuseversustimewhilerunningthe databaseupdateprogram, updatedb .

Figure18:I/OUsageVersusTime Thegoalofthisportionofthelaboratoryprocedurewastoreinforcetherandomprocess usageofcomputersystemsandhowthisiseffectedbystudentinteraction. Attheendofthelab,thestudentscouldquantifytheperformancemetricsofaharddisk byusingtheformulashowninFigure19. tracks / sec tors ⋅ RPM ⋅ 512 Page 11.1202.15 Speed = 60 s = MB / s [2] 1000000 Figure19:QuantifyingHardDiskSpeed

Thedifferentfunctionsofharddriveoperationswereeasilymanipulatedandanalyzed withasmallsetofbasictoolstomodifysystemparametersandinitiatingshort,simple performancetestsinsteadofmerelyusingacomplexdatatransfertoolanalyzingthe defaultsystemconfigurationperformance.Thestudentsunderstoodharddrivewriting andreadingfunctiondifferencessuchassequential,synchronous,cachedwriteanddirect memoryaccessbymodifyingthesesystemparametersandanalyzingtheperformance resultsindividually.Whilemostsingleharddrivecomputersystemsutilizethesame read/writemethodstomaximizeperformance,thestudentsunderstoodhowandwhyeach ofthesedesignmethodsareutilizedbymodifyingtheparametersandseeingdirect resultsfromperformanceanalysis. ConclusionsandRecommendations Whilewritingthelabproceduresandtestingthetoolsusedforperformanceanalysis, testingthetoolsusedtogatherdataforcomputersystemanalysisdidn’trequiretoomuch downtimewaitingforresults.Students’knowledgeofLinuxwasgaugedtobeverylow, aftergatheringresponsesfromquestionsaboutcomputerknowledgeandobserving responsetoearlycomputertests.Overthecourseofthesemesterwhenwritingthelabs, moreincorporationofcommonusagesofLinuxanddatarecordedoverlongerperiodsof timegatheredbysimpleanalysistoolswereimplemented.Doingso,thestudentscould moreeasilyinterprethowacomputerisengineeredbyhowthesoftwareusedthe systems.Bytheendofthesemester,thestudentswerecomfortableediting,compiling andrunningcode,usingtheinternet,configuringthenetworkinterface,andtransferring filestoeachotherforlateranalysis.Incorporationofexperimentsearlyinthesemester provedtobeagoodfoundationofcomputercomponentunderstanding.Observationof thecomponentorientationonthemotherboardreinforcedthecomputeroperationby visualizingthemodelofprocessoperation.Minimizingwaitingtimeforresultsofthe performanceanalysisprogramskeptstudentsinvolvedandattentivetowhattheywere tryingtoaccomplish.Studentslearnedhowdatatypesandcomputerarchitecture affectedtheresultsshownbecausethestudentsunderstoodtheoperationoftheirown programsandconnectedthemeaningoftheirresultstothecharacteristicsofthe computerarchitectureregardlessofhowtedioustheprocedurestepswere.Each objectivewascompletedusingsmallstepswhichkeepstudentsconstantlythinkingof whattheyweretryingtoaccomplish,nomatterhowmundaneorpredictabletheresults were.Thiscoincidedwiththeapproachforwritingthelabprocedures,whichwere originallyplannedtoincludeonlysevenoverthecourseofthesemesterbutturnedinto ten.Thesingle-weeklaboratoryexperimentsprovedtobemorebeneficialbecausethe previousweek’sworkwasn’tforgottenoverthecourseoftheweek.Theperformance testsweremoreconciseandthetopiccoverageprovedmoreeffectivewhencompleted duringonelabsession.Thisalsolendsthelabmaterialmoreflexibilitybymanagingthe smallerpartsforfuturesemesterofECET325.

Aftercompletingalloftheexperiments,thestudentschangedtheirperspectiveof Page 11.1202.16 computerperformancetoadegreebasedontheirexperienceinthelaboratory.Eachof thesystemswerecomparableintermsofrawprocessingpowerbuthadsubtledifference

whichincludedstability,compilingcode,transferringdata,userinterfaces,etc.Agreat majorityhadneverusedeitherLinuxorSunsothisexperiencewaseyeopeningtothe worldofcomputerengineeringoutsideofwebpagebrowsingandmedia.Someofthe experimentswereveryhardtocompleteusingtheWindowsenvironment,whileothers wereverychallengingwithLinux,sotheiroptionsdefinitelychangedregardingwhich computersystemisbestsuitedforacertainapplication. Inthefuture,usingtheSargereleaseofDebianLinxwouldprovidethestudentswithan easierinstallationprocessalongwithamoreupdatedkernelandsoftwarepackages.This wasn’tselectedbecauseduringtestphasestheusedoftheinternetwasrequired.Alabof 5+computerswouldsaturatethenetworkandextendpasttheallottedlabtime. References [1]Benwell,N.(1975). Benchmarking:ComputerEvaluationandMeasurement. Washington,D.C.HemispherePublishingCorporation. [2]Musumeci,G.D.,Loukides,M.(2002). SystemPerformanceTuning. Sebastopol,CA: O’Reilly&Associates,Inc. [3]Klenke,R.H.,Belvins,J.M.,Aylor,J.H.,Hein,J.J.(2003).APerformanceModeling andDesignEnvironmentforSeniorComputerEngineeringUndergraduates, ProceedingsofASEE/IEEEFrontiersinEducation2003Conference,F2F-23- F2F-28. [4]Nelson,V.P.,Theys,M.D.,Clements,A.(2003).ComputerArchitectureand OrganizationintheModelComputerEngineeringCurriculum,Proceedingsof ASEE/IEEEFrontiersinEducation2003Conference,F2F-11–F2F-16. [5]Lewis,B.C.,Crews,A.E.(1985).TheEvolutionofBenchmarkingasaComputer PerformanceEvaluationTechnique. MISQuarterly 9(1),7-16. [6]Fleming,P.J.,Wallace,J.J.(1986).HowNotToLieWithStatistics:TheCorrect WaytoSummarizeBenchmarkResults. CommunicationsoftheACM 29(3),218- 221. [7]Hennessy,J.L.&Patterson,D.A.(2003).ComputerArchitecture:AQuantitative Approach.SanFrancisco,CA:MorganKaufmann. [8]Jain,R.(1991). TheArtofcomputerSystemsPerformanceAnalysis. NewYork,NY: JohnWiley&Sons,Inc. [9]Amdahl,G.M.,Blaauw,G.A.,BrooksJr.,F.P.(1964).ArchitectureoftheIBM

System360.IBMJ.ResearchandDevelopment8,2(April)87-101. Page 11.1202.17 [10]Lilja,D.J.(2000). MeasuringcomputerPerformance:APractitioner’sGuide.

Cambridge,MA:CambridgeUniversityPress. Page 11.1202.18