Timing side-channels in modern CPUs + PySpark at bare-metal speed


Details
# Tech Talks
- Timing side-channels in modern CPUs
- PySpark at bare-metal speed
## Timing side-channels in modern CPUs
The Meltdown and Spectre CPU bugs (CVE-2017-5753, CVE-2017-5715, CVE-2017-5754) have hit the news recently. They are interesting because they affect multiple hardware platforms (AMD, ARM and Intel) and operating systems. In this talk we will give an overview of the technicalities behind these flaws and discuss the implications of such bugs (or rather, the hardware features which allow them)
for code compilation.
## PySpark at bare-metal speed
Data analytics has become the driving force for many industries and scientific research. More and more decisions are made based on statistical analysis of large datasets and machine learning. Big data processing frameworks, such as Apache Spark, provide an easy-to-use out-of-the-box solution, scalable to large machine clusters. Python is the most widespread programming language in the data science field due to its simplicity and the abundance of analytical tools developed for it. Many Spark users would prefer its Python frontend in their daily work. Multiple studies indicate, however, that there is a wide gap between Spark's performance and the best handwritten code. With this project we bring the functional data-flow programs' performance closer to the bare-metal speeds and show that it is possible to write productively high performance code.
What:
Swiss LLVM Compiler and Code Generation Social! Talk about Compilers, Code Generation, and Programming Languages.
Where:
ETH Zurich, CAB, E72
The building closes at 19:00. If you are late, you need to write us to be let in.
What is LLVM:
LLVM (http://www.llvm.org/) is an open source project that provides a collection of modular compiler and toolchain technologies. It is centered around a modern SSA-based compiler around which an entire ecosystem of compiler technology was developed. Most well know is the clang C++ compiler, which is e.g. used to deploy iOS. Beyond this a diverse set of projects is developed under the umbrella of LLVM. These include code generators and assemblers for various interesting architectures, a jit compiler, a debugger, run-time libraries (C++ Standard Library, OpenMP, Opencl library), program sanity checkers, and many more. LLVM has itself grown out of a research project more than 10 years ago and is the base of many exciting research projects today:
https://scholar.google.ch/scholar?cites=7792455789532680075&as_sdt=2005&sciodt=0,5&hl=de
Contact:
Tobias Grosser (https://www.inf.ethz.ch/personal/tgrosser/)

Timing side-channels in modern CPUs + PySpark at bare-metal speed