Research Statement
- 格式:pdf
- 大小:45.17 KB
- 文档页数:5
ResearchStatement
RajeshKrishnaBalan
rajesh@cs.cmu.edu
http://www.cs.cmu.edu/˜rajesh/research/
Myinterestslieattheintersectionofmobilecomputing,operatingsystems,softwareengineering,andusability
testing.Mythesisresearchhasconcentratedontheproblemofallowinglargecomputationallyintensiveapplications
torunonresourcelimitedmobiledevicessuchascellphones,PDAs,andwristwatches.Inadditiontothiswork,I
havealsodevelopedadistributedinfrastructuretosupportmassivelymultiplayeronlinegamesanddesignedvarious
extensionstoTCPthatmakeiteithermoreenergyefficientorworkbetterinwirelessenvironments.
1ResearchPhilosophy
Myresearchphilosophyrevolvesaroundthebeliefthatsuccessfulsystemsresearchhastodemonstratetwothings:1)
anovelandinterestingapproachtoanimportantresearchproblem,and2)usability.Istronglybelievethatforasystem
tobesuccessful,ithastobeusablebythetargetaudience.Ontheotherhand,ahighlyusablesystemthatdoesn’t
advancethestateoftheartinanywayisnotparticularlyinterestingfromaresearchperspectiveeither.
Myresearchstyleisstronglysystems-orientedwithalargeemphasisonhands-onsystemimplementation.A
realimplementationiscrucial,inmyopinion,fortestingcomplicateddistributedsystemsasthecomplexityinherent
inthesesystemsisincrediblyhardtocapturebysimulationstudiesalone.Arealimplementationisalsovitalin
validatingtheusabilityofthesystem.Inaddition,thesoftwareartifactsfromsuchimplementationsareimportant
contributionsthatdrivefutureresearchandevenproductdevelopmentinthearea.Iamalsoastrongproponentof
collaborativeresearch.Modernsystemsaresocomplicatedthatitisimpossibleforonepersontohavealltheanswers
toeveryproblemencountered.Assuch,Itendtoworkwithabout2-4otherpeople,eachwithslightlydifferentskills
andbackgrounds,totacklealargesystemsproblem.
ThisphilosophyandstyleisevidentinalltheresearchprojectsIhavebeeninvolvedwith.Forexample,mythesis
usesanovelinsight,calledtactics,tobuildapowerfulremoteexecutionsystem,calledChroma,formobiledevices.
ChromausesremoteexecutiontoallowlargeapplicationstorunonlimitedmobiledevicesandIconductednumerous
experimentstovalidateitsperformance.Inaddition,Ialsodevelopedasoftwareengineeringprocess,calledRapidRe,
thatallowssoftwaredeveloperstorapidlyretargettheirapplicationstouseChroma.TovalidateRapidRe,Iconducted,
usingHumanComputerInteractiontechniques,arigoroussoftwareusabilitystudy.
Ibelievethatmyskillsetofarigoroussystemsbackgroundcoupledwithsoftwareengineeringanddetailedusabil-
itytestingexperienceleavemeuniquelyplacedtodevelopnovelhighperformancesoftwaresystemsthatareprovably
usablebydevelopersandendusers.Thenextfewsectionsdescribesomeofmyrecentwork.
2ADynamicAdaptiveRuntimeSystemforMobileComputing
Akeychallengeinmobilecomputingistoenableresourcelimitedmobiledevicestorunlargecomputationallyinten-
sive,yethighlyuseful,applicationssuchaslanguagetranslatorsandspeechrecognizers.Onesolutionistouseremote
executiontoaugmenttheresourcecapabilitiesofthesemobiledevices.Formythesis,Iaddressedthefollowingtwo
keyresearchquestionsinvolvedinbuildingaremoteexecutionsystemformobiledevices:
•Whataretheviablewaystopartitionanapplicationforremoteexecution?
•Atruntime,howshouldwedecidewhichoftheviablepartitionsshouldbeselected?Thefirstproblemwastodeterminetheviablepartitionsofanapplication.Ingeneral,anapplicationcanbe
partitionedinarbitrarilymanyways.Clearly,arbitrarypartitioningisintractableinpracticeforadynamicruntime
system.However,acarefulstudyofalargeclassofusefulmobileapplicationsrevealedthatthenumberofuseful
applicationpartitionsisactuallyverysmall.Thesepartitionsareusefulbecausea)theypartitionthecomputationally
intensiveportionsoftheapplication,andb)theyarelargeenoughtoamortizethepartitioningoverheads.Icallthese
usefulpartitionsthetacticsofanapplication.Thesetacticsdifferintheamountofresourcestheyuseandinapplication
quality.Forexample,tacticAmayrequirelessmemorythantacticBbutgeneratealessaccurateresult.
However,howcananapplication’stacticsbeidentified?Doweneedtoexaminelargeamountsofapplication
codetoidentifythesesmallnumberoftactics?Fortunately,thisisnotthecase.Myexperimentshaveshownthat
applicationdeveloperscanspecifythetacticsforlargeunfamiliarapplicationsinaveryshortamountoftime.Tactics
makedynamicallydecidingtheappropriateapplicationpartitioningatractableproposition.Toutilizethiscapability,I
builtanadaptiveruntimesystemformobiledevices,calledChroma,thatdynamicallypartitionslargeapplications.
AttheheartofChromaisasmartsolverthatdecidesatruntimewhichapplicationtactictouse.Thesolveruses
threeinputs(inadditiontothelistoftactics)tomakeitsdecision.First,itusesanumberofresourcemeasurersto
obtainthecurrentresourceavailabilityintheenvironment.Forexample,thenumberofavailableremoteserversand
theavailablememoryandCPUcyclesoneachoftheseservers.Next,thesolverpredictstheresourceusageofthe