by Jun De Vega and Rajshree Chabukswar
As industry moves towards mobile computing, resources like battery life become significantly important for system usability. This paper analyzes power consumption of a laptop while transmitting compressed and non-compressed data over wireless network to determine the most power efficient method. The study focuses on how the compression ratio or size of the file affects power consumption and not on the performance of a particular compression algorithm. Recommendations for transmitting data over wireless network are presented. This study can provide guidelines to developers for writing applications that involves data transmission.
The goal of this paper is to determine the most power efficient usage model for a laptop when transferring data over wireless LAN. It helps answer questions such as: For upload, is it better to compress the data before transmission or leave it uncompressed? Will a compressed file be better when downloading a file? How will the wireless adapter, CPU utilization, data compression ratio and transmission time affects the laptop power consumption? The power study is only done on the client side (laptop) and did not include the server side.
Fluke NetDAQ* was used to measure platform power consumption while transmitting data. Different data sets were analyzed for transmitting over wireless network with and without using the compression software. Compression algorithm used here is Gzip*.
- Target PC: Intel® Core Duo/2GHz Yonah, Customer Reference Board (CRB) with sense resistors, 2x512GB DDR2, 40GB SATA 5400 rpm (2.5” mobile), and Microsoft Windows* XP Pro SP2.
- Linksys* Router/Access Point 802.11g
- Fluke NetDAQ* (Network Data Acquisition) 2686A
- NetDAQ Logger: Fluke DAQ Software v2.2
- Compression software: Gzip* 1.2.4 (www.gzip.org*), default options
To achieve reproducible and consistent results, certain parameters were assumed.
- To minimize noise and interference, a controlled network was used
- Dedicated private network (via access point), where only one client can transfer data at a given time.
- Wireless network was set-up in an isolated environment to reduce noise and interference as much as possible.
- Data sets: Different “txt” and “tif” files with varying compression ratio.
- Compression algorithm
- Gzip 1.2.4* was selected since it is open source and easy to customize.
- Use of different compression algorithm may affect the compression ratio but the study only focuses on the size of compression ratio rather than the algorithm. Difference between Gzip 1.2.4* and other compression algorithm (efficiency, power consumed, speed), are beyond the scope of this paper.
- Test runs are scal ed to maintain workloads long enough (in duration) to minimize errors in platform power measurements. Power consumption per run is the average value of 100 iterations.
The compression ratio of a given data set plays a significant role in determining whether to send/receive uncompressed data or to use compression before transmitting the data. Five different data sets were used, with the corresponding data size and compression ratio shown below.
|Data Set||Original size (KB)||Compress Rate Gzip 1.2.4||Description|
|Tulips.tif||1179||1.2x||Med size file, very low compress ratio|
|Book1||751||2.45x||Med size file, low compress ratio|
|World95.txt||2935||5.06x||Large size file, high compress ratio|
|Pic||502||8.96x||Small size file, high compress ratio|
|Frymire.tif||3708||14.04x||Large size file, very high compress ratio|
Table 1. Data sets were from Jeff Gilchrist Archive Compression Test (ACT)* which are set of benchmarks for data compression. http://www.compression.ca/act/act-files.html*
The compression ratio ranges from low (1.2x) to high (14.04x).
The test system (Intel® Core Duo/Customer Reference Board) was network mapped (via access point) to the server’s file system. Windows™ XP internal “COPY” command was used to transfer the data from the client to the server and vice versa over the wireless network.
Each of the data sets was run with the following test included in Table 2 to determine the elapsed time and power consumed for each run. Each test, data workload was repeated for 100 times. The iteration of the workload to run around 100 times is recommended, in order to have better average of power consumption. A single workload’s power consumption is the average of 100 iterations.
The power consumption comparison will be computed as follows:
1 run = Average of 100 iterations.
Upload: (Compress data set & Upload compressed image) vs. Upload original data set
Download: (Download compressed image & Decompress data set) vs. Download original data set
|Compress and Upload compressed||Upload Uncompress File||Download Compressed and Decompress File||Download Uncompress|
Table 2. Set of tests required to be executed for each data type
Wireless Adapter Power Profile
Before looking into various case studies, let us look at the wireless adapter power profile. This section describes the test platform’s power profile when wireless adapter is disabled, searching for signal and when it is connected to the access point but not transmitting any data.
Figure 1. WLAN Adapter Average Power Consumption
As indicated in the Figure 1, the wireless adapter uses most power when actively seeking an access point (AP) although this is typically just a brief period of time. When the “radio is on” or system is connected to the network but not transmitting any data, the average power consumption is ~450mW. While, when searching for AP, the power consumption is ~ 1600mW.
Usually CPU utilization is high when compressing and decompressing the data (99-100% when compressing and 84-100% when decompressing). It drops to 4-7% when transmitting the data regardless if it is compressed or not. As expected the processor frequency goes to maximum (highest Performance Frequency State) when compressing and decompressing. For transmitting the data over network the processor remains at a lower Performance Frequency state since the CPU utilization is low (4-7%)
Upload Power Consumption
In various runs, the total power consumption of uploading uncompressed data is compared with compressing and uploading the data. Figure2 shows elapsed time comparison.
Figure 2. Upload Elapsed time (seconds)
Figure 3 shows power consumption comparison for uploading uncompressed data vs. compressing and uploading the data. The secondary Y axis in Figure 3 plots compression ratio.
Figure 3. Upload over WLAN Total Power Cons umption (Energy)
As indicated in Figure 3, the data set with higher compression ratio (higher than 1.2x) show benefit for power consumption when compressing and uploading the data set. While for data set with lower compression ratio (1.2x in this case), uploading uncompressed data is more power efficient by minimal amount.
Download Power Consumption
Similarly, the same data set is used for investigating the download power consumption. Figure 4 represents the elapsed time and Figure 5 indicates the power consumption for downloading uncompressed data vs. downloading compressed data and uncompressing it.
Figure 4. Download Elapsed time (seconds)
The graph in Figure 5 demonstrates power consumption for each data set as well as compression ratio on secondary Y axis.
Figure 5. Download over WLAN Total Power Consumption (Energy)
As indicated in the Figure 5, for data sets with higher compression ratio, downloading compressed data and uncompressing is more power efficient as compared to downloading uncompressed data. For data set with lower compression ratio (1.2x in this case), downloading uncompressed data is more power efficient. For ‘Book1’ data set (compression ratio 2.45x) the power consumption of downloading uncompressed data vs. downloading compressed data and uncompressing demonstrates minimal difference.
The size of a data being transferred over a wireless network directly affects the elapsed time to transfer, the bigger the data the longer it will take to complete the transfer. The longer you transmit over a WLAN the more power consumption you use not only for the wireless adapter but also the whole platform.
- For data set with higher compression ratio (more than 3.0x), uploading/downloading compressed data provides better power savings as compared to transmitting uncompressed data. It would be beneficial for applications to transmit compressed data for data sets having higher compression ratio.
- The experiments demonstrated that for data sets with lower compression ratio (~1.2x in this case which is hardly compressed), compressing the data before uploading/ decompressing after download adds extra overhead. It is recommended to upload/download uncompressed data in such cases.
- For data sets with compression ratio around 2.5-3.0x, it was observed that there is a minimal difference in the power saving when uploading/downloading compressed data vs. uncompressed data.