Node.fz: fuzzing the server-side event-driven architecture

Node.fz: Fuzzing the server-side event-driven architecture Davis et al., EuroSys'17 This paper provides a fascinating look at common causes of concurrency bugs in server-side event driven architecture (EDA) based applications. By far the most popular framework supporting this style is Node.js of course. The Node.js package ecosystem, npm, is the largest ever, with over 400,000 ... Continue Reading

SyncPerf: Categorizing, detecting, and diagnosing synchronization performance bugs

SyncPerf: Categorizing, detecting, and diagnosing synchronization performance bugs Mejbah ul Alam et al., EuroSys'17 This paper is an investigation into the causes of synchronisation-related performance issues in concurrent systems, together with a pair of tools that can help to detect and diagnose them. The main SyncPerf detection tool is very lightweight (average overhead 2.3%). It ... Continue Reading

SGXBounds: memory safety for shielded execution

SGXBounds: memory safety for shielded execution Kuvaiskii et al., EuroSys'17 We've previously looked at a number of Intel SGX-related papers in The Morning Paper, including SCONE, which today's paper builds on. SGX comes with a memory encryption engine and seeks to protect trusted applications from an untrusted operating system, providing confidentiality and integrity guarantees. SGX, ... Continue Reading

Statistical analysis of latency through semantic profiling

Statistical analysis of latency through semantic profiling Huang et al., EuroSys'17 Unlike traditional application profilers that seek to show the 'hottest' functions where an application spends the most time, VProfiler shows you where the sources of variance in latency come from, tied to semantic intervals such as individual requests or transactions. ... an increasing number ... Continue Reading

Online reconstruction of structural information from datacenter logs

Online reconstruction of structural information from datacenter logs Chothia et al., EuroSys'17 Today's choice brings together a couple of themes that we've previously looked at on The Morning Paper: recovering system information from log files, and dataflows for stream processing. On log files (and tracing), see for example Dapper, the MysteryMachine, lprof, and Pivot tracing. ... Continue Reading