欢迎来到天天文库
浏览记录
ID:40554804
大小:2.85 MB
页数:52页
时间:2019-08-04
《209 - fast-code-is-always-in-fashion》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、WebLanguagesandVMsorwhyfastcodeisalwaysinfashionLarsBak&KasperLundSoftwareEngineersatGoogleInc.HackingonVMssidebysidethelast13years...SoWhyAreWeHere?SpeedfuelsapplicationinnovationWebbrowsersarefasterthanever,butaretheyfastenough?WewillconvinceyouthatDarttakesperformancetothenextlevelRe
2、membertheBrowsersof2006?199820002002200520062008Firefox2.0InternetExplorer7.0Safari2.0Opera9.0BrowserPerformanceBeliefsin2006Browserswerebelievedtobe"fastenough"●WebappslikeGmailandGoogleMapsranfine●JavaScriptwasinherentlytooslowforheavyclientsidecomputations●JavaScriptexecutionwasnotpe
3、rceivedasabottleneckPerformancewasevaluatedusingmicro-benchmarks●Emphasiswasputonloopsandsimplearithmetic●DynamicdispatchingandmemorymanagementweresadlyneglectedSunSpider:bitwise-andBenchmarkfromSunSpiderversion0.9.1JavaScriptbitwiseAndValue=4294967296;for(vari=0;i<600000;i++)bitwiseAnd
4、Value=bitwiseAndValue&i;SunSpider:bitwise-andBenchmarkfromSunSpiderversion0.9.1JavaScriptbitwiseAndValue=4294967296;for(vari=0;i<600000;i++)bitwiseAndValue=bitwiseAndValue&i;...butthisalwaysyieldszero?SunSpider:bitwise-andBenchmarkfromSunSpiderversion1.0JavaScriptbitwiseAndValue=4294967
5、296;for(vari=0;i<600000;i++)bitwiseAndValue=bitwiseAndValue&i;if(bitwiseAndValue!=0)throw"ERROR:badresult...";...andthisalwaysyieldszero!V8DesignChoice:WhattoOptimizeFor?(1)Optimizeforcurrentappsandbenchmarks●Simpleandincrementalapproach●Attempttomakethings10%better(2)Optimizefortheapps
6、ofthefuture●Supportheavyclientsidecomputations●Turnthebrowserintoascalableapplicationplatform●EnablesanewclassofwebappsV8BenchmarkSuiteConsistsofbenchmarksthatare●Structuredandmostlyobject-oriented●Designedtopushthelimits●ProvenvaluableinthecontextofotherlanguagesMeasurestheperformanceo
7、f●Dynamicmethodcallsandpropertyaccesses●Memorymanagement●ClosurecreationandinvocationUp,UpandAway!Performanceimprovementsfrom2006-2013●JavaScriptexecutesmorethan100xfaster●AverageheapsizesareupandGCpausesaredown●BenchmarknumbersarefrequentlyreportedinthepressWebappshavebecomehu
此文档下载收益归作者所有