DigitalOcean & Others Still Working On Core Scheduling To Make Hyper Threading Safer
With vulnerabilities like L1TF and Microarchitectural Data Sampling (MDS) prominently showing the insecurities of Intel Hyper Threading, DigitalOcean and other organizations continue spearheading a core scheduling implementation for Linux that could allow HT to remain enabled but with reducing the security risk.
DigitalOcean has been working on Linux core scheduling for more than one year as a means of ensuring only trusted applications get scheduled to run on siblings of a core. At the same time, the scheduler aims to try to avoid using SMT/HT in areas where it could degrade the performance.
DigitalOcean engineers presented at Linux Plumbers Conference 2019 on their core scheduling work and now for LPC 2020 they still are working on it -- and with hopes of seeing it upstreamed. Other organizations like SUSE have also been engaged in core scheduling.
Public cloud computing companies like DigitalOcean are particularly interested in core scheduling as they rely on selling "virtual CPUs" and thus generally take advantage of SMT/HT for squeezing the most out of each server. Being forced to disable Hyper Threading would be detrimental to their bottom line while at least with core scheduling they can provide some safer guarantees around HT.
DigitalOcean engineers sent out their sixth version of the core scheduling patches at the end of June. With it the performance has improved compared to the early versions last year so it's at least not as bad as disabling Hyper Threading, but still at a performance loss compared to an unmitigated system.
It depends upon the workload for the overall cost of Linux core scheduling, but at least generally is more palatable than just outright disabling SMT/HT.
Linux core scheduling will be discussed more this week at the virtual Linux Plumbers Conference but for those interested in the DigitalOcean presentation it can be found here (PDF).
On Tuesday is when they plan to discuss more on their steps for hopefully upstreaming core scheduling into the Linux kernel.
DigitalOcean has been working on Linux core scheduling for more than one year as a means of ensuring only trusted applications get scheduled to run on siblings of a core. At the same time, the scheduler aims to try to avoid using SMT/HT in areas where it could degrade the performance.
DigitalOcean engineers presented at Linux Plumbers Conference 2019 on their core scheduling work and now for LPC 2020 they still are working on it -- and with hopes of seeing it upstreamed. Other organizations like SUSE have also been engaged in core scheduling.
Public cloud computing companies like DigitalOcean are particularly interested in core scheduling as they rely on selling "virtual CPUs" and thus generally take advantage of SMT/HT for squeezing the most out of each server. Being forced to disable Hyper Threading would be detrimental to their bottom line while at least with core scheduling they can provide some safer guarantees around HT.
DigitalOcean engineers sent out their sixth version of the core scheduling patches at the end of June. With it the performance has improved compared to the early versions last year so it's at least not as bad as disabling Hyper Threading, but still at a performance loss compared to an unmitigated system.
It depends upon the workload for the overall cost of Linux core scheduling, but at least generally is more palatable than just outright disabling SMT/HT.
Linux core scheduling will be discussed more this week at the virtual Linux Plumbers Conference but for those interested in the DigitalOcean presentation it can be found here (PDF).
On Tuesday is when they plan to discuss more on their steps for hopefully upstreaming core scheduling into the Linux kernel.
4 Comments