The volume of mobile web browsing traffic has significantly increased as well as the complexity of the mobile websites mandating high-performance web page rendering engines to be used on mobile devices. Although there...
详细信息
ISBN:
(纸本)9781450344838
The volume of mobile web browsing traffic has significantly increased as well as the complexity of the mobile websites mandating high-performance web page rendering engines to be used on mobile devices. Although there has been a significant improvement in performance of web page rendering on mobile phones in recent years, the power consumption reduction has not been addressed much. A main contribution of this work is a thread level analysis of the workload generated by Google's Chrome browser on a heterogeneous multi-processing (HMP) platform found in many smartphones. We analyze the detailed traces of the thread workload generated by the web browser, especially the rendering engine, and discuss the power saving potentials in relation to power management policies in Android. Moreover, we propose power management strategies based on the results. All trace data and measurement results have been collected on a real HMP platform integrating the Samsung Exynos5422 SoC, also used in the Samsung Galaxy S5 smartphone. Our work shows that there is a considerable scope for power savings and outlines directions for future research. We believe that it will lead to development of practical power management techniques considering thread allocation, dynamic voltage and frequency scaling (DVFS) and power gating.
Reducing the loading time of a web app is important for better user experience. The loading time includes a large amount of javascript execution, often composed of the execution of the global code in the script tags f...
详细信息
ISBN:
(纸本)9781450362771
Reducing the loading time of a web app is important for better user experience. The loading time includes a large amount of javascript execution, often composed of the execution of the global code in the script tags followed by the execution of event handlers. One approach to accelerate the app loading is saving the already-loaded execution state of javascript objects in a file called the snapshot in advance. Then, we start an app by copying the objects in the snapshot to the javascript heap directly, instead of executing javascript code to create them. Unfortunately, existing works save only the execution state of the global code in the snapshot, not that of the event handlers. Also, the javascript code whose execution may change the DOM (Document Object Model) tree is not saved in the snapshot, limiting the coverage of the snapshot. In this paper, we introduce snapshot+, an extended version of the snapshot where we save the execution state of the event handlers as well as that of the global code. Unlike the global code whose execution order is statically determined, the event handlers have a more dynamic execution order, depending on the triggering order of the events and the registration order of the event handlers. This makes it somewhat complicated to decide when to create and restore the snapshot. Snapshot+ provides a new API for the app developer to specify and register the event handlers eligible for snapshot so that the browser can create and restore the snapshot at the right place automatically. Also, snapshot+ can save a changed DOM tree in a serialized HTML string and restore it during app loading, allowing the DOM-changing javascript executions to be saved in the snapshot. Our experimental results show that snapshot+ can improve the app loading time by 52% (AngularJS apps), 42% (Ext JS apps), 48% (jQuery apps), and 18% (MooTools apps), compared to the original snapshot.
javascript execution is heavily used during the loading of web apps, taking a substantial portion of the app loading time. To accelerate javascript execution, snapshot-based app loading has been proposed [5, 17]. We t...
详细信息
ISBN:
(纸本)9781450366748
javascript execution is heavily used during the loading of web apps, taking a substantial portion of the app loading time. To accelerate javascript execution, snapshot-based app loading has been proposed [5, 17]. We take a snapshot of the javascript objects in the heap at some point during app loading (which we call snapshot point) and save them in a file in advance. Then, we start app loading by copying the objects in the snapshot to the heap directly, skipping javascript execution to create those objects. One issue is that the javascript execution state at the snapshot point should be the same at every app loading. If javascript execution included in the snapshot is involved with some nondeterminism (e.g., use random function or current time/location), snapshot-based app loading might be inapplicable since the loaded state might differ each time. In this paper, we perform an empirical study for the nondeterministic behavior of web apps during app loading. The result shows that nondeterminism is used frequently, but its impact is small from the user's perspectives. Based on this observation, we propose two techniques that can increase the applicability of snapshot. First, we propose two types of snapshot point, which allows saving as much execution state as possible in the snapshot, just before the nondeterministic execution affects the user's perception. Second, we develop a tool to identify those snapshot points by static and dynamic analysis, so that the developer can easily identify them. Our experimental results show that the techniques can accelerate the app loading by 1.81 times, by applying the snapshot that would otherwise be inapplicable, achieving a performance comparable to that of a snapshot that completely ignores the nondeterminism issues.
Diplomová práca sa zaoberá využitím technológií Blazor a WebAssembly s frameworkom DotVVM. Práca obsahuje fundamentálne informácie a teoretický rozbor webových te...
详细信息
Diplomová práca sa zaoberá využitím technológií Blazor a WebAssembly s frameworkom DotVVM. Práca obsahuje fundamentálne informácie a teoretický rozbor webových tech- nológií a princípov. Tieto technológie sú prerekurzormi technológii WebAssembly, Blazor a DotVVM. Práca sa detailne zameriava na WebAssembly, ktorá umožňuje diverzifiká- ciu na poli klientských webových technológií. V tejto práci sa využíva časť technológie Blazor, konkrétne CLI runtime Mono, ktorý je skompilovaný do WebAssembly formátu a tým umožňuje beh IL kódu v prehliadači. Práca sa zameriava na minimalizáciu po- čtu PostBackov medzi klientom a serverom, ktorá je možná vďaka vyššie spomínanému Mono runtime.
This paper, aimed at the practical demand on the application development and deployment, proposes a new hybrid model that combines the advantages of the B/S model and C/S model. It focuses on the implementation of the...
详细信息
ISBN:
(纸本)9781629939254
This paper, aimed at the practical demand on the application development and deployment, proposes a new hybrid model that combines the advantages of the B/S model and C/S model. It focuses on the implementation of the Third-party Service Provider tier and Presentation tier based on the multi-tier architecture with the elaboration of technology selections for this model. The performance optimization is discussed in the end, which utilizes a new javascript engine named V8 in WebKit. The hybrid model achieves a satisfied performance according to the benchmarks and has been applied in the actual project.
暂无评论