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