SGXTuner: Performance Enhancement of Intel SGX Applications Via Stochastic Optimization
Research output: Contribution to journal › Research article › Contributed › peer-review
Contributors
Abstract
Intel SGX has started to be widely adopted. Cloud providers (Microsoft Azure, IBM Cloud, Alibaba Cloud) are offering new solutions, implementing data-in-use protection via SGX. A major challenge faced by both academia and industry is providing transparent SGX support to legacy applications. The approach with the highest consensus is linking the target software with SGX-extended libc libraries. Unfortunately, the increased security entails a dramatic performance penalty, which is mainly due to the intrinsic overhead of context switches, and the limited size of protected memory. Performance optimization is non-trivial since it depends on key parameters whose manual tuning is a very long process. We present the architecture of an automated tool, called SGXTuner , which is able to find the best setting of SGX-extended libc library parameters, by iteratively adjusting such parameters based on continuous monitoring of performance data. The tool is — to a large extent — algorithm agnostic. We decided to base the current implementation on a particular type of stochastic optimization algorithm, specifically Simulated Annealing . A massive experimental campaign was conducted on a relevant case study. Three client-server applications — Memcached , Redis , and Apache — were compiled with SCONE's sgx-musl and tuned for best performance. Results demonstrate the effectiveness of SGXTuner .
Details
Original language | English |
---|---|
Pages (from-to) | 2595-2608 |
Number of pages | 14 |
Journal | IEEE Transactions on Dependable and Secure Computing |
Volume | 19 |
Issue number | 4 |
Publication status | Published - 2022 |
Peer-reviewed | Yes |
External IDs
Scopus | 85102613461 |
---|
Keywords
Keywords
- Optimization, Libraries, Tools, Software, Security, Simulated annealing, Cloud computing, Cloud security, Intel SGX, stochastic optimization, simulated annealing