1 |
Effects and opportunities of native code extensions for computationally demanding web applicationsJarosch, Dennis 17 January 2012 (has links)
Das World Wide Web befindet sich im Wandel von interaktiven Webseiten hin zu Web- Applikationen. Eine steigende Zahl von Anwendern führt täglich Aufgaben ausschließlich mit Hilfe des Web-Browsers durch. Dadurch wird das Web zu einer bedeutenden Plattform für Anwendungsentwicklung. Dieser Plattform fehlt jedoch heute noch die Rechenleistung nativer Applikationen. Microsoft Xax und Google Native Client (NaCl) sind zwei neue, unabhängige Technologien zur Entwicklung nativer Web-Applikationen. Sie ermöglichen die Erweiterung herkömmlicher Web-Applikationen durch kompilierten nativen und dennoch betriebssystemunabhängigen Programmcode. Die vorliegende Dissertation untersucht die Vor- und Nachteile nativer Web-Applikationen und analysiert zudem das tatsächliche Leistungsvermögen im Vergleich zu konventionellen JavaScript Web-Applikationen. Dazu wird eine experimentelle Leistungsanalyse von nativen Applikationen in C, JavaScript Web-Applikationen und NaCl nativen Web-Applikationen anhand vier unterschiedlicher Vergleichstests durchgeführt. Dabei werden die folgenden Leistungsaspekte betrachtet: mathematische Operationen (seriell und parallel), 3D-Grafikoperationen und Datenverarbeitung. Die Ergebnisse der Leistungsanalyse zeigen, dass NaCl Stärken in mathematischen und 3D-Grafikoperationen zu Grunde liegen, jedoch erhebliche Schwächen bei der Datenverarbeitung aufweist. Entsprechende Lösungsansätze zur Optimierung der Anwendung werden erarbeitet und erörtert. Eine Bewertung anhand technischer und nicht-technischer Kriterien komplementiert die Ergebnisse der Leistungsanalyse. Darüber hinaus werden die technischen, politischen und strategischen Treiber für NaCls Marktdurchdringung diskutiert. / The World Wide Web is amidst a transition from interactive websites to web applications. An increasing number of users perform their daily computing tasks entirely within the web browser, turning the Web into an important platform for application development. The Web as a platform, however, lacks the computational performance of native applications. This problem has motivated the inception of Microsoft Xax and Google Native Client (NaCl), two independent projects that facilitate the development of native web applications. These allow the extension of conventional web applications with compiled native code, while maintaining operating system portability. This dissertation determines the benefits and drawbacks of native web applications. It also examines the actual performance capabilities of JavaScript web applications. An experimental performance analysis is undertaken in order to determine and compare the performance characteristics of native C applications, JavaScript web applications, and NaCl native web applications. Four application benchmarks consider different performance aspects: number crunching (serial and parallel), 3D graphics performance, and data processing. The results confirm that NaCl''s performance in computational tasks and 3D graphics is impeccable. On the other hand, it shows substantial limitations in data processing. These are evaluated and possible solutions are discussed. The results of the performance analysis are complemented with an evaluation on the basis of technical and non-technical criteria and a discussion of the technical, political, and strategic drivers for NaCl.
|
Page generated in 0.0544 seconds