Export Citations
Welcome to LCTES 2022, the 23rd ACM SIGPLAN/SIGBED Conference on Languages, Compilers, Tools and Theory for Embedded Systems. This year’s LCTES conference is co-located with PLDI 2022.
Proceeding Downloads
Co-mining: a processing-in-memory assisted framework for memory-intensive PoW acceleration
Recently, HBM (High Bandwidth Memory) and PIM (Processing in Memory) integrated technology such as Samsung function-in-memory DRAM opens a new door for memory-intensive PoW acceleration by jointly exploiting GPU, PIM and HBM. In this paper, we for the ...
Implicit state machines
Finite-state machines (FSM) are a simple yet powerful abstraction widely used for modeling, programming and verifying real-time and reactive systems that control modern factories, power plants, transportation systems and medical equipment.
However, ...
JAX based parallel inference for reactive probabilistic programming
ProbZelus is a synchronous probabilistic language for the design of reactive probabilistic models in interaction with an environment. Reactive inference methods continuously learn distributions over the unobserved parameters of the model from ...
TCPS: a task and cache-aware partitioned scheduler for hard real-time multi-core systems
Shared caches in multi-core processors seriously complicate the timing verification of real-time software tasks due to the task interference occurring in the shared caches. Explicitly calculating the amount of cache interference among tasks and cache ...
ISKEVA: in-SSD key-value database engine for video analytics applications
- Yi Zheng,
- Joshua Fixelle,
- Nagadastagiri Challapalle,
- Pingyi Huo,
- Zhaoyan Shen,
- Zili Shao,
- Mircea Stan,
- Vijaykrishnan Narayanan
Key-value databases are widely used to store the features or metadata generated from the neural network based video processing platforms. Due to the large volumes of video data, these databases use solid state drives (SSDs) as the primary data storage ...
Optimizing data reshaping operations in functional IRs for high-level synthesis
FPGAs (Field Programmable Gate Arrays) have become the substrate of choice to implement accelerators. They deliver high performance with low power consumption, while offering the flexibility of being re-programmable. But they are notoriously hard to ...
Trace-and-brace (TAB): bespoke software countermeasures against soft errors
Lower voltage levels and higher clock frequencies together with a tight hardware area budget make modern processors more susceptible to soft errors. Existing generic software countermeasures against soft errors are application-agnostic or applied ...
An old friend is better than two new ones: dual-screen Android
Dual-screen foldable Android smartphones such as Microsoft Surface Duo are emerging. However, due to its internal design, the Android framework cannot support combined mode, by which two screens can be integrated into one, without modifications, thus ...
RollBin: reducing code-size via loop rerolling at binary level
Code size is an increasing concern on resource constrained systems, ranging from embedded devices to cloud servers. To address the issue, lowering memory occupancy has become a priority in developing and deploying applications, and accordingly compiler-...
Cache-coherent CLAM (WIP)
Traditional caches are automatic and cannot be controlled directly by software. A recent design called CLAM manages a cache using leases and lets a program specify these leases. The lease cache is mostly controlled by software. This paper extends CLAM ...
Scalable size inliner for mobile applications (WIP)
Inlining is critical for both performance and size in mobile apps. When building large mobile apps, ThinLTO, a scalable link-time optimization is imperative in order to achieve both optimal size and build scalability. However, inlining with ThinLTO is ...
Tighten rust’s belt: shrinking embedded Rust binaries
- Hudson Ayers,
- Evan Laufer,
- Paul Mure,
- Jaehyeon Park,
- Eduardo Rodelo,
- Thea Rossman,
- Andrey Pronin,
- Philip Levis,
- Johnathan Van Why
Rust is a promising programming language for embedded software, providing low-level primitives and performance similar to C/C++ alongside type safety, memory safety, and modern high-level language features. We find naive use of Rust leads to binaries ...
Code generation criteria for buffered exposed datapath architectures from dataflow graphs
Many novel processor architectures expose their processing units (PUs) and internal datapaths to the compiler. To avoid an unnecessary synchronization of PUs, the datapaths are often buffered which results in buffered exposed datapath (BED) ...
A memory interference analysis using a formal timing analyzer (WIP)
Safety-critical applications require well-defined and documented timing behavior. These requirements shape the design and implementation of a timing analyzer based on a formal Instruction-Set Architecture (ISA) semantics and formal micro-architecture ...
Automated kernel fusion for GPU based on code motion
Applications implemented for GPU are important in various fields. GPU has many parallel computing cores and high arithmetic throughput, enabling GPU applications to work efficiently. However, the throughput of GPU memory, of which global memory is the ...
Index Terms
- Proceedings of the 23rd ACM SIGPLAN/SIGBED International Conference on Languages, Compilers, and Tools for Embedded Systems