{"title":"GLZSS: LZSS Lossless Data Compression Can Be Faster","authors":"Yuan Zu, Bei Hua","doi":"10.1145/2588768.2576785","DOIUrl":"https://doi.org/10.1145/2588768.2576785","url":null,"abstract":"The need for data compression has grown for better utilization of network bandwidth and data storage space. LZ77 is the most widely used data compression method, which has many variants in practical applications. The biggest obstacle that prevents data compression from being used in high-speed applications is its high computation overhead. In this paper, we focus on parallelizing LZSS that is a derivative of LZ77 on GPU using the NVIDIA CUDA framework to improve the compression speed. Based on in-depth understanding of LZSS's dictionary-based compression mechanism and GPU's architectural features, we propose an effective method to parallelize LZSS compression algorithm on GPU. The biggest merit of this method is that it eliminates threads serialization by carefully redesign the algorithm process. Experiments on an NVIDIA GTX 590 machine with 13 benchmark files from real world demonstrate the effectiveness of our method, which achieves 2x speedup over existing work.","PeriodicalId":394600,"journal":{"name":"Proceedings of Workshop on General Purpose Processing Using GPUs","volume":"104 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-03-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"117175778","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"APR: A Novel Parallel Repacking Algorithm for Efficient GPGPU Parallel Code Transformation","authors":"Yulong Yu, Xubin He, He Guo, Sihui Zhong, Yuxin Wang, Xin Chen, Weijun Xiao","doi":"10.1145/2588768.2576789","DOIUrl":"https://doi.org/10.1145/2588768.2576789","url":null,"abstract":"General-purpose graphics processing units (GPGPU) brings an opportunity to improve the performance for many applications. However, exploiting parallelism is low productive in current programming frameworks such as CUDA and OpenCL. Programmers have to consider and deal with many GPGPU architecture details; therefore it is a challenge to trade off the programmability and the efficiency of performance tuning. Parallel Repacking (PR) is a popular performance tuning approach for GPGPU applications, which improves the performance by changing the parallel granularity. Existing code transformation algorithms using PR increase the productivity, but they do not cover adequate code patterns and do not give an effective code error detection. In this paper, we propose a novel parallel repacking algorithm (APR) to cover a wide range of code patterns and improve efficiency. We develop an efficient code model that expresses a GPGPU program as a recursive statement sequence, and introduces a concept of singular statement. APR building upon this model uses appropriate transformation rules for singular and non-singular statements to generate the repacked codes. A recursive transformation is performed when it encounters a branching/loop singular statement. Additionally, singular statements unify the transformation for barriers and data sharing, and enable APR to detect the barrier errors. The experiment results based on a prototype show that out proposed APR covers more code patterns than existing solutions such as the automatic thread coarsening in Crest, and the repacked codes using the APR achieve effective performance gain up to 3.28X speedup, in some cases even higher than manually tuned repacked codes.","PeriodicalId":394600,"journal":{"name":"Proceedings of Workshop on General Purpose Processing Using GPUs","volume":"11 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-03-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128479515","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}