Runtime Optimizations for a Java DSM Implementation ABSTRACT
Jackal is a fine-grained distributed shared memory implementation of the Java programming language. Jackal implements Java’s memory model and allows multithreaded Java programs to run unmodified on distributed-memory systems. This paper focuses on Jackal
RuntimeOptimizationsforaJavaDSMImplementation
R.Veldema
R.F.H.Hofman
R.A.F.Bhoedjang
H.E.Bal
DepartmentofComputerScience
VrijeUniversiteit
Amsterdam,TheNetherlands
rveldema,rutger,bal@cs.vu.nl
DepartmentofComputerScience
CornellUniversityIthaca,NY,USAraoul@cs.cornell.edu
objectorasectionofaJavaarray.Incontrastwithpage-basedDSMs,Jackalusessoftwareaccesscheckstodetermineifaregionispresentinlocalmemoryandup-to-date.Ifanaccesscheckdetectsthataregionisabsentorout-of-date,itinvokesJackal’sruntimesystemwhichimplementsamultiple-writercachecoherenceprotocolthatresolvesreadandwritemisses.Aregionismanagedbyitshomenode,whichistheproces-sorthatcreatedtheassociatedobject.Jackaldoesnotuseasingle-writerprotocol,becausethatwouldrequirethecom-pilertoinformtheruntimesystemwhenaread/writeoperationhas nished;thatwouldincreasecodesizeandprotocolover-head,andposecomplicationsforthecompilerin(re)movingaccesschecks.
JackalconformstotheJavamemorymodel,whichallowscachingofobjectsin(thread)localmemoryandlogicallyre-quirescomplete ushingoflocalmemoryuponeachentryandexitofasynchronizedblock.Inoursystem,mainmemoryequatestoanobject’shomenode,andlocalmemorytotherequestingmachine’smemory.Flushingregionsandsubse-quentlyrequestingthemagainmaycausealargeoverheadun-deranaiveimplementation(especiallyusingtheclasslibrarieswhichperformmanyunnecessarysynchronizations[1]).Toreducethisoverhead,weinvestigatepossibilitiesofferedbytheJavamemorymodeltocacheregionsacrossasynchroniza-tionoperation.Thisispossibleforregionsthatareread-sharedandregionsthatareaccessedbyasinglemachine.
JackalusesanoptimizingJavacompilertogenerateaccesschecks.Intheoptimizationpassesofthecompiler,accesschecksmayberemoved,liftedorcombined.Forexample,arrayaccessesmaybecombinedandliftedfromaloopthat(partially)traversesthearray,oraccessesmaybeaggregatedwhenthecompilerdeterminesthatanobjectisusedtogetherwithitsreferencedsubobjects.Thecompileropimizationsaredescribedindetailin[24].
Thecontributionsofthispaperareasfollows:
WedescribevariousRTSoptimizationstoreducethenum-berofregion ushes.
WemeasuretheimpactoftheRTSoptimizationsforsev-eralJavaapplicationsandcomparethemtotheimpactofcompileroptimizations.
Thepaperisstructuredasfollows.Section2treatsJava’smemorymodel.Section3describesJackalanditsimplemen-tation.Section4summarizesJackal’scompileroptimizationsanddescribesournewRTSoptimizations.Section3andanex-tendedversionofSubsection4.1appearedearlierin[24],butwerepeattheseintroductorysectionsheretomakethispaper
ABSTRACT
Jackalisa ne-graineddistributedsharedmemoryimplemen-tationoftheJavaprogramminglanguage.JackalimplementsJava’smemorymodelandallowsmultithreadedJavaprogramstorununmodi edondistributed-memorysystems.
ThispaperfocusesonJackal’sruntimesystem,whichim-plementsamultiple-writer,home-basedconsistencyprotocol.ProtocolactionsaretriggeredbysoftwareaccesschecksthatJackal’scompilerinsertsbeforeobjectandarrayreferences.WedescribeoptimizationsforJackal’sruntimesystem,whichmainlyconsistofdiscoveringopportunitiestodispensewith ushingofcacheddata.Wegiveperformanceresultsfordif-ferentruntimeoptimizations,andcomparetheirimpactwiththeimpactofonecompileroptimization.We ndthatourrun-timeoptimizationsarenecessaryforgoodJackalperformance,butonlyinconjunctionwiththeJackalcompileroptimizationsdescribedin[24].Asayardstick,wecomparetheperformanceofJavaapplicationsrunonJackalwiththeperformanceofequivalentapplicationsthatuseafastimplementationofJava’sRemoteMethodInvocation(RMI)insteadofsharedmemory.
1.INTRODUCTION
Jackalisacompiler-supported, ne-graineddistributedsharedmemory(DSM)systemforJava.Thesystemcanrununmodi- ed,multithreadedJavaprogramsonaclusterofworkstations.Together,Jackal’scompilerandruntimesystem(RTS)hidethedistributednatureofthecluster:Jackalprogramsusethreadsandsharedvariablesinsteadofmessage-passingabstractionslikeRemoteMethodInvocation[19].ThispaperfocusesontheimplementationoftheRTSanditsoptimizations,whichmainlyconsistofdiscoveringopportunitiestodispensewith ushingofcacheddatatomainmemory.
Jackalresembles ne-grainedDSMsystemslikeShasta[22]andSirocco[13]inthatitusesasmallunitofcoherencethatismanagedentirelybysoftware.InJackal,theunitofcoherenceiscalledaregion.EachregioncontainseitheracompleteJava
Permissiontomakedigitalorhardcopiesofallorpartofthisworkforpersonalorclassroomuseisgrantedwithoutfeeprovidedthatcopiesarenotmadeordistributedforpro torcommercialadvantageandthatcopiesbearthisnoticeandthefullcitationonthe rstpage.Tocopyotherwise,torepublish,topostonserversortoredistributetolists,requirespriorspeci cpermissionand/orafee.
Copyright2000ACM0-89791-88-6/97/05..$5.00
Jackal is a fine-grained distributed shared memory implementation of the Java programming language. Jackal implements Java’s memory model and allows multithreaded Java programs to run unmodified on distributed-memory systems. This paper focuses on Jackal
self-contained.Section5studiestheimpactoftheRTSopti-mizationsonJackal’sperformanceonaMyrinet-basedclustercomputer.Section6discussesrelatedwork.Finally,Section7concludes.
2.JAVA’SMEMORYMODEL
Webrie ysummarizeJava’smemorymodel;foradetaileddescriptionwerefertothelanguagespeci cation[10]andPugh’scritiqueofthememorymodel[21].
Java’smemorymodelspeci esthateachthreadhasawork-ingmemory,whichcanbeconsideredathread-privatecache.Theentireprogramhasamainmemorywhichisusedforcom-municationbetweenthreads.Thedatamodi edbyathreadis ushedtomainmemoryuponencounteringasynchronizationpoint.(Inthisrespect,themodelresemblesreleaseconsis-tency[8,16].)SynchronizationpointsinJavacorrespondtotheentryan …… 此处隐藏:38919字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [行业范文]美好的法语句子
- [行业范文]描写露珠的句子
- [行业范文]精彩禅语句子图片
- [行业范文]关于满嘴谎言的句子
- [行业范文]关于安静的句子48句
- [行业范文]关于小河的句子
- [行业范文]描写稻田的句子
- [行业范文]思念好朋友的句子
- [行业范文]赞美雪的句子
- [行业范文]早上激励人心的句子
- [行业范文]失恋忧伤的句子
- [行业范文]努力积极向上的句子
- [行业范文]对工作心灰意冷的句子
- [行业范文]失恋让人心疼的句子
- [行业范文]描写珍惜青春的句子
- [行业范文]表达思念的句子简短
- [行业范文]关于父爱的句子范例
- [行业范文]浪漫的英语句子
- [行业范文]关于周末的句子
- [行业范文]思念牵挂的句子
- 有关感恩班会课件简短(二篇)(感恩班会
- 2025年初二下乡军训心得体会800字(15篇
- 关于新员工培训方案汇编(关于新员工培
- 精选高考生寒假学习计划书(精)(高考生
- 毕业实训报告心得体会(3篇)(实训报告心
- 银行工作感悟及心得范文怎么写(四篇)(
- 精选领导干部个人政治画像报告通用(七
- 精选超市11.11活动促销方案(精品超市品
- 2025年怎么做自我介绍汇总(5篇)(至2025
- 最新企业错峰生产方案(26篇)(山西企业
- 最新暑期三下乡社会实践调研报告范本(
- 最新幼儿园大班教育教学总结怎么写(最
- 最新教师节主持词小学(优秀9篇)(教师节
- 关于小学安全教育教学方案(推荐)(关于
- 员工信模板范文怎么写(五篇)(员工信息
- 最新保险销售离职申请书(十六篇)(最新
- 最新XX小学防校园欺凌工作方案怎么写(2
- 有关特岗教师辞职信范文(推荐)(特岗教
- 精选党的建设工作要点简短(党的建设的
- 如何写安康杯竞赛活动总结汇总(4篇)(安




