Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Ziria: a DSL for wireless systems programming
Stewart G., Gowda M., Mainland G., Radunovic B., Vytiniotis D., Agullo C.  ASPLOS 2015 (Proceedings of the 20th International Conference on Architectural Support for Programming Languages and Operating Systems, Istanbul, Turkey, Mar 14-18, 2015)415-428.2015.Type:Proceedings
Date Reviewed: Jul 20 2015

Software-defined radio (SDR) facilitates innovation in various wireless protocol designs and deployments. In SDR, a lot of conventional radio hardware components are replaced by efficient software components such as modulators-demodulators, mixers, filters, and many other signal processing capabilities. In existing works and platforms for SDR programming, the low-level codes require manual optimizations that affect the ease and flexibility of programming. In this situation, this work proposes Ziria, a new high-level programming language for SDR. As claimed, this work is probably the first to design a high-level programming language for SDR that can concisely capture and optimize for reconfigurations of pipelines in the physical (PHY) layer.

Ziria is designed with domain-specific abstractions. This is suitable for wireless protocols programming in SDR with reconfigurable pipelines and an efficient compilation scheme. The compilation supports limited coarse-grained pipeline parallelism and generates efficient executables for use on commodity central processing units (CPUs). Ziria implements a novel algorithm for vectorization that optimizes the data widths of components in processing pipelines in the PHY layer. This has been shown to provide a combined 10 to 100 times speedup over baseline, amplifying the effects of other optimizations.

In the main body of this paper, first the description of programming in Ziria explains stream programming abstractions, which can compose two types of computations together: stream transformers (with input and output streams) and stream computers (with input and output streams, and also additional control value return). Then, the compositions of control path and data path are described. This description is followed by a Wi-Fi receiver pipeline example and a detailed description of Ziria pipeline execution. Second, the vectorization transformation is described in detail, which is the main optimization in the Ziria compiler. The designed decentralized vectorization algorithm identifies sets of feasible vectorizations for transformers and computers in a top-down fashion, and then composes feasible vectorization candidates together in a bottom-up fashion. Finally, some other type- and semantics-preserving optimizations by Ziria are also described. This involves static scheduling optimizations and lookup table generation.

Ziria has been demonstrated with an implementation of the rate-compliant PHY layer for Wi-Fi 802.11a/g. Ziria framework performance is evaluated on various digital signal processing (DSP) algorithms belonging to standard Wi-Fi transceivers. It also often showed to outperform hand-tuned C++ implementations on commodity CPUs of existing works in SDR.

Overall, this is a great work of very high quality for the SDR platform and language. Relevant readers are highly encouraged to read this work. The compiler, test suite, and Wi-Fi implementations of this work are also publicly available in the GitHub repository (reference [1] in paper).

Reviewer:  Debraj De Review #: CR143631 (1510-0891)
Bookmark and Share
 
Specialized Application Languages (D.3.2 ... )
 
 
Wireless Communication (C.2.1 ... )
 
Would you recommend this review?
yes
no
Other reviews under "Specialized Application Languages": Date
An experimental study of people creating spreadsheets
Brown P., Gould J. ACM Transactions on Information Systems 5(3): 258-272, 1987. Type: Article
Jul 1 1988
Types and persistence in database programming languages
Atkinson M., Buneman O. ACM Computing Surveys 19(2): 105-170, 1987. Type: Article
Apr 1 1989
Programming languages for distributed computing systems
Bal H., Steiner J., Tanenbaum A. ACM Computing Surveys 21(3): 261-322, 1989. Type: Article
Aug 1 1990
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy