We introduce “asynchronized concurrency (ASCY),” a paradigm consisting of four complementary programming patterns. ASCY calls for the design of concurrent search data structur...
Motivated by rapid software and hardware innovation in warehouse-scale computing (WSC), we visit the problem of warehouse-scale network design evaluation. A WSC is composed of abo...
Zhangxi Tan, Zhenghao Qian, Xi Chen, Krste Asanovi...
Non-CPU devices on a modern system-on-a-chip (SoC), ranging from accelerators to I/O controllers, account for a significant portion of the chip area. It is therefore vital for sy...
Chao Xu 0012, Felix Xiaozhu Lin, Yuyang Wang, Lin ...
Processor implementation errata remain a problem, and worse, a subset of these bugs are security-critical. We classified 7 years of errata from recent commercial processors to un...
Matthew Hicks, Cynthia Sturton, Samuel T. King, Jo...
Software-defined radio (SDR) brings the flexibility of software to wireless protocol design, promising an ideal platform for innovation and rapid protocol deployment. However, i...
Gordon Stewart, Mahanth Gowda, Geoffrey Mainland, ...
Finite State Machine (FSM) is the backbone of an important class of applications in many domains. Its parallelization has been extremely difficult due to inherent strong dependen...
Data races are common. They are difficult to detect, avoid, or eliminate, and programmers sometimes introduce them intentionally. However, shared-memory programs with data races ...
Task graphs or dependence graphs are used in runtime systems to schedule tasks for parallel execution. In problem domains such as dense linear algebra and signal processing, depen...
Muhammad Amber Hassaan, Donald D. Nguyen, Keshav P...
All software in use today relies on libraries, including standard libraries (e.g., C, C++) and application-specific libraries (e.g., libxml, libpng). Most libraries are loaded in ...
Varun Agrawal, Abhiroop Dabral, Tapti Palit, Yongm...