A case for lease-based, utilitarian resource management on mobile devices Hu et al., ASPLOS'19 I’ve chosen another energy-related paper to end the week, addressing a problem many people can relate to: apps that drain your battery. LeaseOS borrows the concept of a lease from distributed systems, but with a rather nice twist, and is able … Continue reading A case for lease-based, utilitarian resource management on mobile devices
Month: May 2019
Boosted race trees for low energy classification
Boosted race trees for low energy classification Tzimpragos et al., ASPLOS'19 We don’t talk about energy as often as we probably should on this blog, but it’s certainly true that our data centres and various IT systems consume an awful lot of it. So it’s interesting to see a paper using nano-Joules per prediction as … Continue reading Boosted race trees for low energy classification
CheriABI: enforcing valid pointer provenance and minimizing pointer privilege in the POSIX C run-time environment
CheriABI: enforcing valid pointer provenance and minimizing pointer privilege in the POSIX C run-time environment Davis et al., ASPLOS'19 Last week we saw the benefits of rethinking memory and pointer models at the hardware level when it came to object storage and compression (Zippads). CHERI also rethinks the way that pointers and memory work, but … Continue reading CheriABI: enforcing valid pointer provenance and minimizing pointer privilege in the POSIX C run-time environment
Compress objects, not cache lines: an object-based compressed memory hierarchy
Compress objects, not cache lines: an object-based compressed memory hierarchy Tsai & Sanchez, ASPLOS'19 Last time out we saw how Google have been able to save millions of dollars though memory compression enabled via zswap. One of the important attributes of their design was easy and rapid deployment across an existing fleet. Today’s paper introduces … Continue reading Compress objects, not cache lines: an object-based compressed memory hierarchy
Software-defined far memory in warehouse scale computers
Software-defined far memory in warehouse-scale computers Lagar-Cavilla et al., ASPLOS'19 Memory (DRAM) remains comparatively expensive, while in-memory computing demands are growing rapidly. This makes memory a critical factor in the total cost of ownership (TCO) of large compute clusters, or as Google like to call them "Warehouse-scale computers (WSCs)." This paper describes a "far memory" … Continue reading Software-defined far memory in warehouse scale computers
RPCValet: NI-driven tail-aware balancing of µs-scale RPCs
RPCValet: NI-driven tail-aware balancing of µs-scale RPCs Daglis et al., ASPLOS'19 Last week we learned about the [increased tail-latency sensitivity of microservices based applications with high RPC fan-outs. Seer uses estimates of queue depths to mitigate latency spikes on the order of 10-100ms, in conjunction with a cluster manager. Today’s paper choice, RPCValet, operates at … Continue reading RPCValet: NI-driven tail-aware balancing of µs-scale RPCs
Understanding real-world concurrency bugs in Go
Understanding real-world concurrency bugs in Go Tu, Liu et al., ASPLOS'19 The design of a programming (or data) model not only makes certain problems easier (or harder) to solve, but also makes certain classes of bugs easier (or harder) to create, detect, and subsequently fix. Today’s paper choice studies concurrency mechanisms in Go. Before we … Continue reading Understanding real-world concurrency bugs in Go
Seer: leveraging big data to navigate the complexity of performance debugging in cloud microservices
Seer: leveraging big data to navigate the complexity of performance debugging in cloud microservices Gan et al., ASPLOS'19 Last time around we looked at the DeathStarBench suite of microservices-based benchmark applications and learned that microservices systems can be especially latency sensitive, and that hotspots can propagate through a microservices architecture in interesting ways. Seer is … Continue reading Seer: leveraging big data to navigate the complexity of performance debugging in cloud microservices
An open-source benchmark suite for microservices and their hardware-software implications for cloud & edge systems
An open-source benchmark suite for microservices and their hardware-software implications for cloud & edge systems Gan et al., ASPLOS'19 Microservices are well known for producing ‘death star’ interaction diagrams like those shown below, where each point on the circumference represents an individual service, and the lines between them represent interactions. Systems built with lots of … Continue reading An open-source benchmark suite for microservices and their hardware-software implications for cloud & edge systems
Distributed consensus revised – Part III
Distributed consensus revised (part III) Howard, PhD thesis With all the ground work laid, the second half of the thesis progressively generalises the Paxos algorithm: weakening the quorum intersection requirements; reusing intersections to allow decisions to be reached with fewer participants; weakening the value selection rules; and sharing phases to take best advantage of the … Continue reading Distributed consensus revised – Part III