a国产,中文字幕久久波多野结衣AV,欧美粗大猛烈老熟妇,女人av天堂

使用離線profile提升JavaScript程序的類型可預測性

發(fā)布時間:2019-01-10 18:12
【摘要】:主流的JavaScript引擎(如V8)都使用了類型特化技術來優(yōu)化程序性能,這種技術需要在運行時預測各個程序點的變量的類型集合。但JavaScript語言的動態(tài)性會降低程序的類型可預測性,使得引擎對類型預測失敗(導致優(yōu)化代碼發(fā)生Deoptimization,即脫優(yōu)化)或者產(chǎn)生較差的預測結果(導致生成低質量的代碼),對程序性能造成負面影響。本文通過分析Octane、Kraken和SunSpider測試集中的程序,發(fā)現(xiàn)了提高程序類型可預測性的策略,并據(jù)此設計實現(xiàn)了基于離線profile的優(yōu)化方案。本文的主要貢獻如下:(1)分析這些測試集中的應用程序在運行過程中的行為,提出通過提高類型關聯(lián)度來提升類型可預測性的策略。本文從48個應用程序中總結出了 6種會導致Deoptimization的模式,并分析了它們和引擎類型系統(tǒng)的關聯(lián)。分析結果表明,可以通過增加類型之間的聯(lián)系(稱為類型關聯(lián)度)來提升類型可預測性。(2)根據(jù)引擎為每個屬性訪問點的對象所預測的類型集合,分析每個集合中類型之間的關聯(lián),提出通過調整對象布局來提高類型關聯(lián)度的策略。通過分析預測的類型集合大小大于1的屬性訪問點,以被訪問屬性為橋梁,將這些類型之間的關系分為4類,從而提出通過調整對象布局來增加類型關聯(lián)度的策略。(3)提出了基于離線Profile的方案來調整對象布局,并在V8中進行了實現(xiàn)。方案分成三個階段:插樁、Profiling和優(yōu)化。插樁階段會在程序中根據(jù)(2)中所提到的4種特點,識別程序點并安插收集變量類型信息的代碼;Profiling階段執(zhí)行被插樁的代碼收集這些程序點中的類型信息,并進一步生成對屬性布局的調整方案(即屬性調整參照)。優(yōu)化階段會在啟動時讀取屬性調整參照信息,再生成調整對象布局的優(yōu)化代碼以便增加類型之間的關聯(lián)度,提高類型可預測性。實驗顯示,本文的方案在所有測試集上共減少22%的Deoptimization,而且運行速度提升最高可達6%。本文提出了通過增加類型關聯(lián)度來提高程序類型可預測性的策略,并提出基于離線profile的方案來調整對象布局,以增加類型關聯(lián)度。此外,本文對常見代碼模式的分析總結,可供JavaScript程序員和語言引擎優(yōu)化工作者參考。
[Abstract]:Mainstream JavaScript engines, such as V8, use type-specific techniques to optimize program performance, which requires predicting the type set of variables at run time for each program point. But the dynamic nature of the JavaScript language reduces the type predictability of the program, causing the engine to fail to predict the type (causing the optimization code to be Deoptimization, or de-optimized) or to produce poor prediction results (resulting in the generation of low-quality code). It can have a negative effect on the procedure. Based on the analysis of programs in Octane,Kraken and SunSpider test sets, a strategy to improve the predictability of program types is found, and an optimization scheme based on offline profile is designed and implemented. The main contributions of this paper are as follows: (1) analyze the behavior of the applications in these test sets during the running process and propose a strategy to improve the predictability of the types by improving the correlation degree of the types. This paper summarizes six patterns that lead to Deoptimization from 48 applications and analyzes their association with engine type systems. The analysis results show that type predictability can be enhanced by increasing the relationship between types (called type correlation). (2) based on the type set predicted by the engine for each attribute access point object, This paper analyzes the relationship between types in each set and proposes a strategy to improve the correlation of types by adjusting the layout of objects. By analyzing the attribute access points whose size of the predicted type set is greater than 1, the relationship between these types is divided into four categories, taking the visited attributes as the bridge. Thus, the strategy of increasing type correlation by adjusting object layout is put forward. (3) A scheme based on offline Profile is proposed to adjust object layout, which is implemented in V8. The scheme is divided into three stages: pile insertion, Profiling and optimization. According to the four characteristics mentioned in (2), the program points will be identified and the code of collecting variable type information will be inserted in the program. The Profiling phase executes the code of the inserted pile to collect the type information in these program points and further generate the adjustment scheme for the property layout (that is, the attribute adjustment reference). In the optimization phase, the attribute adjustment reference information is read at startup, and the optimization code is generated to adjust the layout of the object in order to increase the correlation between the types and improve the predictability of the types. The experimental results show that the proposed scheme reduces 22% of Deoptimization, on all test sets and increases the running speed by up to 6%. This paper proposes a strategy to improve the predictability of program types by increasing the type correlation degree, and proposes a scheme based on offline profile to adjust the object layout to increase the type correlation degree. In addition, the analysis of common code patterns can be used as a reference for JavaScript programmers and language engine optimizers.
【學位授予單位】:中國科學技術大學
【學位級別】:碩士
【學位授予年份】:2017
【分類號】:TP312.2

【相似文獻】

相關期刊論文 前10條

1 周輝騰;用JavaScript自動選擇留言板[J];上海微型計算機;2000年Z3期

2 孫小淋;;基于JavaScript的消息管理機制探討[J];軟件;2013年07期

3 洪留榮,賀蘊普,于娟;用JavaScript實現(xiàn)WEB數(shù)據(jù)庫的交并集查詢[J];計算機系統(tǒng)應用;1999年04期

4 張志遠;JavaScript與客戶端安全[J];東莞理工學院學報;2002年02期

5 陳曉勇,沈良瓊;JavaScript在科學設計與計算中的應用[J];西南科技大學學報(自然科學版);2002年03期

6 柯琦;;JavaScript程序設計基礎課程教學淺析[J];教育教學論壇;2013年05期

7 ;千里之堤會毀于一穴嗎? Java、JavaScript的漏洞既有可能減小障礙,也會發(fā)生重大問題[J];每周電腦報;1997年37期

8 汪迎春;;基于JavaScript技術的網(wǎng)頁課程設計項目設計[J];信息與電腦(理論版);2013年10期

9 田會;;JavaScript與Java在Web開發(fā)中的應用與區(qū)別[J];電子技術與軟件工程;2014年09期

10 李軼;;基于JavaScript的面向對象程序設計研究[J];江漢大學學報(自然科學版);2010年03期

相關會議論文 前1條

1 段壽建;張旭潔;胡紹波;李忠態(tài);;基于JavaScript和PHP的多級聯(lián)動下拉菜單的設計與實現(xiàn)[A];AECC專題學術研討會論文集[C];2007年

相關重要報紙文章 前4條

1 浙江 潘賢林;用 JavaScript 批量瀏覽圖片[N];電腦報;2001年

2 趙澤欣;老道的JavaScript精華子集[N];中華讀書報;2012年

3 鄧飛;JavaScript網(wǎng)頁特效[N];中國電腦教育報;2002年

4 于翔;JavaScript升級引發(fā)微軟、Mozilla論戰(zhàn)[N];網(wǎng)絡世界;2007年

相關碩士學位論文 前8條

1 林水明;不透明謂詞在JavaScript代碼保護的應用研究[D];廣東工業(yè)大學;2016年

2 黎遇軍;使用離線profile提升JavaScript程序的類型可預測性[D];中國科學技術大學;2017年

3 吳通;基于程序分析和機器學習的JavaScript代碼推薦研究[D];上海交通大學;2014年

4 郭小福;嵌入式JavaScript引擎的優(yōu)化與實現(xiàn)[D];電子科技大學;2012年

5 柯宏;嵌入式JavaScript解釋器在機頂盒中的設計與實現(xiàn)[D];華中科技大學;2007年

6 張銳;嵌入式JavaScript引擎即時編譯器的研究與設計[D];電子科技大學;2011年

7 徐青;JavaScript惡意代碼檢測技術研究[D];西南交通大學;2014年

8 余啟洋;嵌入式JavaScript引擎并行化研究與設計[D];電子科技大學;2013年



本文編號:2406631

資料下載
論文發(fā)表

本文鏈接:http://www.wukwdryxk.cn/shoufeilunwen/xixikjs/2406631.html


Copyright(c)文論論文網(wǎng)All Rights Reserved | 網(wǎng)站地圖 |

版權申明:資料由用戶ac680***提供,本站僅收錄摘要或目錄,作者需要刪除請E-mail郵箱bigeng88@qq.com
丁香天五香天堂综合| 亚洲AV成人WWW永久无码精品| 久久a级片| 天天影视色| 99精品久久久久久久婷婷 | 国产粉嫩高中无套进入| 日本一区二区在线高清观看| 妺妺窝人体色www在线| 国产精品乱子乱XXXX| 国产成人精品综合久久久久性色| 久久精品国产亚洲AV麻豆王友容| 日日摸夜夜添AA夜夜添高潮出水| 荥阳市| 和静县| 永春县| 丰满少妇被猛烈进AV毛片 | 高清一区二区三区免费视频| 一本之道中文日本高清| 激情国产Av做激情国产爱| 国产自国产自愉自愉免费24区| 无码中文字幕人妻在线一区| 日日澡夜夜澡人人高潮| 午夜福利无码免费专区| 亚洲成av人片在www鸭子| 国产成人午夜福利在线观看视频| 亚洲精品国产精品乱码不卡| 拍国产乱人伦偷精品视频| 2021亚洲va在线va天堂va国产| 老熟女多次高潮露脸视频| 18禁裸乳啪啪无遮裆网站| 日日狠狠久久偷偷色综合免费| 光棍天堂在线播放免费| 国产av丝袜一区二区三区| 久久久久久亚洲AV成人无码国产| 亚洲中文字幕久久无码| 久久精品国产久精国产思思| 亚洲国产精品lv| 精品国产福利久久久| 欧美性猛交xxxx免费看蜜桃| 国产精品无码一区二区三区不卡 | 99精品视频在线观看婷婷|