Eleanor McHugh discusses writing virtual machines using hardware emulation, including code snippets in Go and C.
Maciej Maciejewski discusses persistent memory, storage devices, and DRAM, accessing persistent memory with ACPI 6.0 extensions, existing support in the Linux kernel and the NVM library.
Gil Tene explores the underlying mechanics that power HTM on current platforms, focusing on things developers need to understand when contemplating the use of HTM in new and existing code.
Ajit Jaokar discusses data science and IoT: sensor data, real-time processing, cognitive computing, integration of IoT analytics with hardware, IoT’s impact on healthcare, automotive, wearables, etc.
Justin Mclean introduces the Open Source Hardware, its communication protocols (RF, ZigBee, WiFi, Bluetooth) and the software/API layer (HTTP, WebSockets, Can Bus, COAPI and MQTT) used.
Julien Vermillard discusses challenges in IoT security regarding hardware, upgrade, transport, credentials, and cloud.
Melissa Pierce discusses the history and present of CS culture, gender relations, and tensions between hardware and software engineering.
Tore Martin Hagen shares from his experience on how to compile and build software for multiple hardware platforms.
Andreas Olofsson reviews the history of processors and outlines some of the challenges ahead, introducing project Parallella meant to speed up the transition to massively parallel computing.
Kathryn S. McKinley discusses research approaches and results that abstract, choose, and exploit hardware heterogeneity providing computational power at low energy consumption levels.
Chuck Moore discusses coding techniques for power savings: tight coding to minimize the number of instructions executed, reducing instruction fetches, transistor switching, and duty cycle.
David Greenberg introduces Piplin, a DSL that allows a subset of Clojure to be automatically converted into a hardware description, which can then be placed onto an FPGA or made into a silicon chip.