Compressibility of WML and WMLScript byte code:Initial results Eetu Ojanen and Jari Veijalainen Department of Computer Science and Information Systems.

Slides:



Advertisements
Similar presentations
IT253: Computer Organization
Advertisements

System Integration and Performance
Buffers & Spoolers J L Martin Think about it… All I/O is relatively slow. For most of us, input by typing is painfully slow. From the CPUs point.
CSE 160 – Lecture 9 Speed-up, Amdahl’s Law, Gustafson’s Law, efficiency, basic performance metrics.
Part IV: Memory Management
Instruction Set Design
CMSC 611: Advanced Computer Architecture Cache Some material adapted from Mohamed Younis, UMBC CMSC 611 Spr 2003 course slides Some material adapted from.
Data Marshaling for Multi-Core Architectures M. Aater Suleman Onur Mutlu Jose A. Joao Khubaib Yale N. Patt.
Segmentation and Paging Considerations
Esma Yildirim Department of Computer Engineering Fatih University Istanbul, Turkey DATACLOUD 2013.
Algorithms Today we will look at: what we mean by efficiency in programs why efficiency matters what causes programs to be inefficient? will one algorithm.
Disk Access Model. Using Secondary Storage Effectively In most studies of algorithms, one assumes the “RAM model”: –Data is in main memory, –Access to.
MultiPlatform Applications Module. Agneda for today Areas to be covered Assessment for the module Agenda for the module timetable Procatical sessions.
1 COMP 206: Computer Architecture and Implementation Montek Singh Mon., Sep 5, 2005 Lecture 2.
Computational Astrophysics: Methodology 1.Identify astrophysical problem 2.Write down corresponding equations 3.Identify numerical algorithm 4.Find a computer.
Computer Science 335 Data Compression.
CPSC 231 Sorting Large Files (D.H.)1 LEARNING OBJECTIVES Sorting of large files –merge sort –performance of merge sort –multi-step merge sort.
Architectural Impact of SSL Processing Jingnan Yao.
1 Today I/O Systems Storage. 2 I/O Devices Many different kinds of I/O devices Software that controls them: device drivers.
SM3121 Software Technology Mark Green School of Creative Media.
Computer ArchitectureFall 2007 © November 12th, 2007 Majd F. Sakr CS-447– Computer Architecture.
Chapter 7 Special Section Focus on Data Compression.
SAS: Managing Memory and Optimizing System Performance Jacek Czajkowski 09/29/2008.
Measuring zSeries System Performance Dr. Chu J. Jong School of Information Technology Illinois State University 06/11/2012 Sponsored in part by Deer &
An Introduction to WAP/WML. What is WAP? WAP stands for Wireless Application Protocol. WAP is for handheld devices such as mobile phones. WAP is designed.
Department of Computer and Information Science, School of Science, IUPUI Dale Roberts, Lecturer Computer Science, IUPUI CSCI.
Lecture 11: DMBS Internals
Simulation of Memory Management Using Paging Mechanism in Operating Systems Tarek M. Sobh and Yanchun Liu Presented by: Bei Wang University of Bridgeport.
1 Telematics/Networkengineering Confidential Transmission of Lossless Visual Data: Experimental Modelling and Optimization.
: Chapter 12: Image Compression 1 Montri Karnjanadecha ac.th/~montri Image Processing.
CACHE MEMORY Cache memory, also called CPU memory, is random access memory (RAM) that a computer microprocessor can access more quickly than it can access.
Uncovering the Multicore Processor Bottlenecks Server Design Summit Shay Gal-On Director of Technology, EEMBC.
« Performance of Compressed Inverted List Caching in Search Engines » Proceedings of the International World Wide Web Conference Commitee, Beijing 2008)
TECHNICAL SEMINAR Presented by :- Satya Prakash Pattnaik TECHNICAL SEMINAR By Satya Prakash Pattnaik EC Under the guidance of Mr.
Scalable Web Server on Heterogeneous Cluster CHEN Ge.
Advanced Computer Architecture 0 Lecture # 1 Introduction by Husnain Sherazi.
IT253: Computer Organization
PFPC: A Parallel Compressor for Floating-Point Data Martin Burtscher 1 and Paruj Ratanaworabhan 2 1 The University of Texas at Austin 2 Cornell University.
Lecture 9 TTH 03:30AM-04:45PM Dr. Jianjun Hu CSCE569 Parallel Computing University of South Carolina Department of.
Data Replication and Power Consumption in Data Grids Susan V. Vrbsky, Ming Lei, Karl Smith and Jeff Byrd Department of Computer Science The University.
Vertical Optimization Of Data Transmission For Mobile Wireless Terminals MICHAEL METHFESSEL, KAI F. DOMBROWSKI, PETER LANGENDORFER, HORST FRANKENFELDT,
Investigating Adaptive Compilation using the MIPSpro Compiler Keith D. Cooper Todd Waterman Department of Computer Science Rice University Houston, TX.
Computer Organization & Assembly Language © by DR. M. Amer.
DMBS Internals I. What Should a DBMS Do? Store large amounts of data Process queries efficiently Allow multiple users to access the database concurrently.
A P2P-Based Architecture for Secure Software Delivery Using Volunteer Assistance Purvi Shah, Jehan-François Pâris, Jeffrey Morgan and John Schettino IEEE.
Marwan Al-Namari 1 Digital Representations. Bits and Bytes Devices can only be in one of two states 0 or 1, yes or no, on or off, … Bit: a unit of data.
Hanyang University Hyunok Oh Energy Optimal Bit Encoding for Flash Memory.
Big traffic data processing framework for intelligent monitoring and recording systems 學生 : 賴弘偉 教授 : 許毅然 作者 : Yingjie Xia a, JinlongChen a,b,n, XindaiLu.
Unit 1 Lecture 4.
Comp 335 File Structures Data Compression. Why Study Data Compression? Conserves storage space Files can be transmitted faster because there are less.
Computer Organization Instruction Set Architecture (ISA) Instruction Set Architecture (ISA), or simply Architecture, of a computer is the.
Image Processing A Study in Pixel Averaging Building a Resolution Pyramid With Parallel Computing Denise Runnels and Farnaz Zand.
High Performance Embedded Computing © 2007 Elsevier Lecture 7: Memory Systems & Code Compression Embedded Computing Systems Mikko Lipasti, adapted from.
DMBS Internals I February 24 th, What Should a DBMS Do? Store large amounts of data Process queries efficiently Allow multiple users to access the.
DMBS Internals I. What Should a DBMS Do? Store large amounts of data Process queries efficiently Allow multiple users to access the database concurrently.
Accelerating Multi-Pattern Matching on Compressed HTTP Traffic Dr. Anat Bremler-Barr (IDC) Joint work with Yaron Koral (IDC), Infocom[2009]
REGISTER TRANSFER LANGUAGE (RTL) INTRODUCTION TO REGISTER Registers1.
The Effect of Data-Reuse Transformations on Multimedia Applications for Application Specific Processors N. Vassiliadis, A. Chormoviti, N. Kavvadias, S.
1 Lecture 16: Data Storage Wednesday, November 6, 2006.
Information Technology (IT). Information Technology – technology used to create, store, exchange, and use information in its various forms (business data,
Introduction to Computers - Hardware
PERFORMANCE EVALUATIONS
REGISTER TRANSFER LANGUAGE (RTL)
A Closer Look at Instruction Set Architectures
Lecture 16: Data Storage Wednesday, November 6, 2006.
Chapter 7 Special Section
Lecture 11: DMBS Internals
Objective of This Course
PERFORMANCE MEASURES. COMPUTATIONAL MODELS Equal Duration Model:  It is assumed that a given task can be divided into n equal subtasks, each of which.
Chapter 7 Special Section
Presentation transcript:

Compressibility of WML and WMLScript byte code:Initial results Eetu Ojanen and Jari Veijalainen Department of Computer Science and Information Systems University of Jyvaskyla Finland

Outline Introduction Experimental Compression Results Practical relevance of compression of WML and WMLScript byte code Conclusions

Introduction In this paper,it examine how much the byte code used in the WAP environment can be compressed and whether the reduced transmission time warrants the increased memory and processor overhead caused by the compression and decompression. WMLScript: scripting language similar to JavaScript. The WML contents and WMLScript applications are compiled into WML Byte code before interpretation.

Experimental Compression Results The main purpose is to check,whether the byte code generated from WML can be compressed to such an extent that possibly real compression mechanisms at terminals and servers are feasible. We just took a few well-known algorithms and ran tests with them. The test data Consist of about 90 files. Small size of byte code files: 18 ~ 1374 bytes 416 bytes in average.

Experimental Compression Results According to the principles of the compression algorithms: the bigger code files,the bigger savings can be achieved by compression. The algorithms and results Considering only lossless compression algorithm. Comparing gzip,bzip2, ELS coding,BWT and MTF. gzip: LZ 77,a dictionary-based coding algorithm. The gzip starts to rapidly increase the result file size as the source file size drops below approx. 300 bytes.

As the average of our test files is merely 416 bytes,the gzip test resulted in only 9% gain in average. CR=original /Compressed (size) Gain = 1-(1/CR)

Experimental Compression Results Arithmetic coding v.s ELS(Entropy Logarithmic Scale) The implementations of arithmetic coding often require multiplication and division operations that might be too slow or power consuming to be used in WAP terminals. The ELS approach is purely integer-based and thus better suited for environment with very limited CPU resources. Both gzip and bzip2 write file headers(with CRCs, platform information etc.) that always require a certain amount of space in the beginning of each compressed file.

Practical relevance of compression of WML and WMLScript byte code The effect of bearers on the feasibility of compression. Do compression improve performances or save resources? Example : Sending a GSM short message. Because a short message has fixed size length,160 characters, sending the same byte code compressed for this application does not reduce response time. Compression makes the overall turn-around time longer. Transmission cost : the same for compression and uncompr. If the length of the byte code is uncompressed between 161 and 320 bytes.The situation changes!

Practical relevance of compression of WML and WMLScript byte code Compress the code so that it fits into one short message. Shorten the time waiting for application to run. Makes transaction cheaper. It makes sense from customer ’ point of view. The same conclusion holds for HSCSD, and GPRS. From the mobile operator ’ s point of view Compression decreases the number of short messages. Saving bandwidth and storage disk space.

Turn-around time for sequential data transfer and decompression Assuming that the data is stored compressed at the server. Size(AC): size of the application AC in bytes. Speed_tr: average transfer speed of the network from server to client in bytes/s. Speed_dec: average decompression speed at the terminal. CR: compression ratio.

Turn-around time for sequential data transfer and decompression We assume that the decompression speed only rely on the decompression algorithm. The compressed byte code is so large that it requires several messages to be transferred. The point where both compressed and uncompressed case yield the same response time.

Turn-around time for sequential data transfer and decompression It relates the compression ratio and the diverse speeds. Eg1: cr=0.5, Speed_tr=Speed_dec. It means that the terminal is able to decompress the data with the same speed as it is transferred,in order not to slow down the system from uncompressed case. Eg2: cr=0.1, Speed_dec is about ten times faster than the Speed_tr.

Pipelining data transfer and decompression Data is transferred and decompressed in parallel. The terminal uses two buffers to transfer and decompress the data. Assume there are N blocks,N>1 Eg: cr=0.9, Speed_dec=Speed_tr, ->N=9 i.e,for file size larger than 9 compression blocks,the response time is shorter than for an uncompressed case.

Pipelining data transfer and decompression If, the equation is Letting the ratio of two speed approach 1, the limit would be the same as the previous Eq.

Time and space complexity and energy consumption The time and space complexity of decompression depends on the decompression algorithm. The practical amount of memory might be around 10-20kB, for the LZ variants. It is observed that LZB variant only need 8kB memory for decompression and reached 16kB/s speed. Nokia 7110 has almost 1MB RAM for application and data. If the estimate is correct then WAP terminals shoould be able to cope with the decompression. The decompressor code can be placed into a ROM in terminal.

Time and space complexity and energy consumption Some versions of LZ algorithms have linear time complexity both for compression and decompression. Energy consumption grows with the time complexity. The trade-off between decreased energy consumption of the RF-parts and increased energy consumption of the processor can ’ t be easily assessed without more accurate parameter values of the terminal.

Conclusion We have analyzed under which conditions the response time would not increase due to the time used to decompress the data. In average,the compression ratio in the sample was about 1.5 and the larger file the higher compression ratio. While applications tend to be larger in size, it makes compression more attractive.

Conclusion Our test material did not contain any images, since the compression method can ’ t be applied to both. It is foreseen that WBMP format for WAP images would be compressed with a special algorithm.