Perfsuite An Accessible, Open Source Performance A

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

PresentedatThe6thInternationalConferenceonLinuxClusters:TheHPCRevolution2005(LCI-05).ChapelHill,NC,April2005PerfSuite:AnAccessible,OpenSourcePerformanceAnalysisEnvironmentforLinuxRickKufrinNationalCenterforSupercomputingApplicationsUniversityofIllinoisatUrbana-Champaignrkufrin@ncsa.uiuc.eduAbstractThemotivation,design,implementation,andcurrentstatusofanewsetofsoftwaretoolscalledPerfSuitethatistargetedtoperformanceanalysisofuserapplicationsonLinux-basedsystemsisdescribed.Thesetoolsemphasizeeaseofuse/deploymentandportability/reuseinimplementationdetailsaswellasdatarepresentationandformat.AfterayearofpublicbetaavailabilityandproductiondeploymentonLinuxclustersthatrankamongthelargest-scaleinthecountry,PerfSuiteisgainingacceptanceasauser-orientedandflexiblesoftwaretoolsetthatisasvaluableonthedesktopasitisonleading-edgeterascaleclusters.IntroductionIntheprefacetohisbook,TclandtheTkToolkit,JohnOusterhoutdescribeshismotivationsfordevelopingthewidelyusedTclscriptinglanguageasfollows[1]:Tclwasbornoffrustration.Intheearly1980smystudentsandIdevelopedanumberofinteractivetoolsattheUniversityofCaliforniaatBerkeley,mostlyforintegratedcircuitdesign,andwefoundourselvesspendingalotoftimebuildingbadcommandlanguages.Eachtoolneededtohaveacommandlanguageofsomesort,butourmaininterestwasinthetoolratherthanthecommandlanguage.Wespentaslittletimeaspossibleonthecommandlanguageandalwaysendedupwithalanguagethatwasweakandquirky.Furthermore,thecommandlanguageforonetoolwasneverquiterightforthenexttool,soweendedupbuildinganewbadcommandlanguageforeachtool.Thisbecameincreasinglyfrustrating.Inthefallof1987itoccurredtomethatthesolutionwastobuildareusablecommandlanguage.Ifageneral-purposescriptinglanguagecouldbebuiltasaClibrarypackage,thenperhapsitcouldbereusedformanydifferentpurposesinmanydifferentapplications…Inthespringof1988Idecidedtoimplementsuchalanguage,andtheresultwasTcl.AttheNationalCenterforSupercomputingApplications(NCSA),asatmanyotherresearchinstitutionsinboththeacademicandcorporatesectors,asimilarsituationarisesinthecontextofperformanceanalysisofsoftwareapplications.Agreatdealofmoneyisspentonacquiring,installing,andmaintainingstate-of-the-arthigh-performancecomputing(HPC)systemswiththeintentofachievingthegreatestpossibleperformanceformission-criticalapplications.Yetatthesametime,theprocessofsystematicallygathering,analyzing,storing,andsharingdatathatmeasurestherealizedperformanceoftheseapplicationscontinuestooccurlargelyinanadhocfashion,sometimeswithgreatdifficultyinevenacquiringtherelevantdata.Resultsofanalysesarefrequentlydiscardedorforgottenaftergeneratinga“scaling”or“optimization”plotortwoaftersufficientconfidenceisgainedthatperformancehasreachedasatisfactorylevelgiventheavailablehardware,supportinglibraries,andcompilertechnology.ToparaphraseOusterhout,applicationdevelopersandperformanceanalystsendupbuildinganewbadinfrastructureforacquisitionandreuseofapplicationperformancedata.Itisnotunusualtoseeeverythingbuiltfromscratchonanapplication-by-applicationbasis.PerfSuite:AnAccessible,OpenSourcePerformanceAnalysisEnvironmentforLinux2Afurtherunfortunateconsequenceofthishaphazardapproachtoapplicationperformanceanalysisisthatasubstantialproportionofdiscipline-specificcomputationalscientistsoftendonotknowtheactualperformancecharacteristicsoftheirproductionapplicationsindailyuse.Frequently,nothingmorethanbasictiminginformation(CPUorwall-clock)isusedtoassesswhetherornotanapplicationmakesefficientuseofcomputationalresources.Whiletiminginformationrepresentsthe“bottomline”intermsofabsoluteperformance,itofferslittleinsightatthemicroarchitecturallevelintoopportunitiesforperformanceimprovement.Oneoftenhearsofthegrowinggapbetweenpeakandachievedperformanceofreal-worldapplicationsonthehigh-performanceprocessorsoftoday—itmaybeequallytruethatthereisagrowinggapinawarenessoftheunderlyingcausesforperformancedeficienciesthatadverselyaffectoverallproductivity.ThisarticledescribesanefforttohelpaddressthissituationthathasresultedinthedesignandcreationofaninfrastructureforapplicationsoftwareperformanceanalysiscalledPerfSuite.Thisinfrastructurehasbenefitedgreatlyfromtheinnovationofothersaswellasfromadvancesmadeinthedevelopmentofunderlyingstandardsandportable,opensourcesoftware(OSS)foundationsthatcanreducethetimerequiredtoassemblethenecessarycomponentsintoaworkingsystemfromyearstomonths.Inturn,endusersofPerfSuiteinmanycasescanachievewithinminuteswhatmighthavepreviouslytakendays,weeks,ormoretoaccomplish.Fromtheoutset,PerfSuitehasbeendesignedwiththeenduseruppermostinmind:thethesishasbeenthatapplicationdevelopersandusersshouldnothavetobeburdenedwithbecomingexpertsinthedetailsandintricaciesoflow-levellibrariesthatenableaccesstoperformancedata.Ideally,developersshouldbeempoweredtoquicklyandeasilyreceiveaccurateanswerstofundamentalquestionssuchasthese:1.Howwellisanapplicationperforming?2.Howandwheremighteffortsbebestdirectedtoimproveanapplication’sperformance?PerfSuitehasalsobeendesignedwithareal-worldperspectiveonthechallengesofteninvolvedinsoftwaredeploymentonLinux

1 / 18
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功