Cello: Efficient Computer Systems Optimization with Predictive Early Termination and Censored Regression

📝 Abstract
Sample-efficient machine learning (SEML) has been widely applied to find optimal latency and power tradeoffs for configurable computer systems. Instead of randomly sampling from the configuration space, SEML reduces the search cost by dramatically reducing the number of configurations that must be sampled to optimize system goals (e.g., low latency or energy). Nevertheless, SEML only reduces one component of cost – the total number of samples collected – but does not decrease the cost of collecting each sample. Critically, not all samples are equal; some take much longer to collect because they correspond to slow system configurations. This paper present Cello, a computer systems optimization framework that reduces sample collection costs – especially those that come from the slowest configurations. The key insight is to predict ahead of time whether samples will have poor system behavior (e.g., long latency or high energy) and terminate these samples early before their measured system behavior surpasses the termination threshold, which we call it predictive early termination. To predict the future system behavior accurately before it manifests as high runtime or energy, Cello uses censored regression to produces accurate predictions for running samples. We evaluate Cello by optimizing latency and energy for Apache Spark workloads. We give Cello a fixed amount of time to search a combined space of hardware and software configuration parameters. Our evaluation shows that compared to the state-of-the-art SEML approach in computer systems optimization, Cello improves latency by 1.19X for minimizing latency under a power constraint, and improves energy by 1.18X for minimizing energy under a latency constraint.
💡 Analysis
Sample-efficient machine learning (SEML) has been widely applied to find optimal latency and power tradeoffs for configurable computer systems. Instead of randomly sampling from the configuration space, SEML reduces the search cost by dramatically reducing the number of configurations that must be sampled to optimize system goals (e.g., low latency or energy). Nevertheless, SEML only reduces one component of cost – the total number of samples collected – but does not decrease the cost of collecting each sample. Critically, not all samples are equal; some take much longer to collect because they correspond to slow system configurations. This paper present Cello, a computer systems optimization framework that reduces sample collection costs – especially those that come from the slowest configurations. The key insight is to predict ahead of time whether samples will have poor system behavior (e.g., long latency or high energy) and terminate these samples early before their measured system behavior surpasses the termination threshold, which we call it predictive early termination. To predict the future system behavior accurately before it manifests as high runtime or energy, Cello uses censored regression to produces accurate predictions for running samples. We evaluate Cello by optimizing latency and energy for Apache Spark workloads. We give Cello a fixed amount of time to search a combined space of hardware and software configuration parameters. Our evaluation shows that compared to the state-of-the-art SEML approach in computer systems optimization, Cello improves latency by 1.19X for minimizing latency under a power constraint, and improves energy by 1.18X for minimizing energy under a latency constraint.
📄 Content
샘플 효율적인 머신러닝(Sample‑efficient Machine Learning, 이하 SEML)은 구성 가능한 컴퓨터 시스템에서 최적의 지연 시간(latency)과 전력(power) 사이의 트레이드오프를 찾아내는 작업에 널리 활용되고 있습니다. 전통적인 방법은 전체 구성 공간(configuration space)에서 무작위로 샘플을 추출하여 성능을 측정하고, 그 결과를 기반으로 최적점을 탐색합니다. 그러나 구성 수가 기하급수적으로 늘어나는 현대의 복합 시스템에서는 무작위 샘플링만으로는 실용적인 탐색 비용을 유지하기 어렵습니다. SEML은 이러한 문제를 해결하기 위해 “전체 샘플 수” 자체를 크게 줄이는 전략을 사용합니다. 즉, 시스템 목표(예: 낮은 지연 시간 혹은 낮은 에너지 소비)를 달성하기 위해 반드시 조사해야 하는 구성 후보의 개수를 최소화함으로써 탐색 비용을 크게 절감합니다.
그럼에도 불구하고 SEML이 실제로 절감하는 비용은 두 가지 중 하나에 불과합니다. 첫 번째는 “샘플의 총 개수”를 감소시키는 것이고, 두 번째는 각 샘플을 수집하는 데 드는 시간·자원 비용을 감소시키는 것입니다. 기존 SEML은 전자는 효과적으로 달성하지만, 후자, 즉 하나의 샘플을 측정하는 데 소요되는 비용은 그대로 남아 있습니다. 특히, 모든 샘플이 동일한 가치를 지니는 것이 아니라, 어떤 구성은 시스템이 매우 느리게 동작하거나 에너지 소모가 급격히 증가하는 특성을 가지고 있어 실제 측정에 매우 오랜 시간이 걸립니다. 이러한 “느린 구성”에서 발생하는 샘플 수집 비용은 전체 탐색 비용의 큰 비중을 차지하게 됩니다.
본 논문에서는 이러한 문제점을 해결하고자 Cello라는 새로운 컴퓨터 시스템 최적화 프레임워크를 제안합니다. Cello는 특히 가장 느린 구성에서 발생하는 샘플 수집 비용을 크게 낮추는 것을 목표로 설계되었습니다. Cello의 핵심 아이디어는 예측적 조기 종료(predictive early termination) 라는 메커니즘에 있습니다. 구체적으로, Cello는 현재 실행 중인 샘플이 앞으로 시스템 동작이 좋지 않을(예: 지연 시간이 비정상적으로 길어지거나 에너지 소비가 급증할) 가능성이 높은지를 사전에 예측합니다. 만약 예측 결과가 사전에 정의한 종료 임계값(termination threshold) 을 초과할 것으로 판단되면, 해당 샘플의 실행을 즉시 중단하고 결과를 폐기합니다. 이렇게 하면 실제로 높은 런타임이나 에너지 소비가 발생하기 전에 불필요한 자원 소모를 방지할 수 있습니다.
예측 정확도를 확보하기 위해 Cello는 검열 회귀(censored regression) 기법을 활용합니다. 검열 회귀는 관측값이 일정 기준을 초과하거나 미만일 때 그 값이 “검열(censored)”된 형태로 나타나는 데이터를 모델링하는 통계적 방법으로, 특히 부분적으로만 관측된(예: 아직 실행이 끝나지 않은) 샘플에 대해 미래의 성능을 추정하는 데 유리합니다. Cello는 현재까지 수집된 샘플들의 지연 시간·전력 소비 데이터를 기반으로 검열 회귀 모델을 지속적으로 업데이트하고, 이 모델을 이용해 진행 중인 샘플의 최종 성능을 실시간으로 예측합니다. 예측값이 사전에 설정한 임계값을 초과하면 즉시 실행을 중단하고, 그렇지 않다면 정상적으로 측정을 마쳐 최적화 과정에 활용합니다.
우리는 Cello의 실효성을 검증하기 위해 Apache Spark 워크로드를 대상으로 실험을 수행했습니다. 실험에서는 하드웨어 파라미터(예: CPU 코어 수, 클럭 속도, 메모리 용량)와 소프트웨어 파라미터(예: Spark 실행 옵션, 가비지 컬렉션 정책) 등 두 축에 걸친 복합 구성 공간을 정의하고, 이 공간을 일정 시간(예: 4시간) 동안 탐색하도록 Cello에 할당했습니다. 탐색 과정에서 Cello는 각 구성에 대해 지연 시간과 에너지 소비를 동시에 측정하고, 앞서 설명한 예측적 조기 종료 메커니즘을 적용해 가장 비용이 많이 드는 샘플들을 조기에 배제했습니다.
실험 결과는 다음과 같습니다. 기존 최첨단 SEML 기반 시스템 최적화 기법과 비교했을 때, 전력 제약 하에서 지연 시간을 최소화하는 목표에서는 Cello가 평균 1.19배 더 짧은 지연 시간을 달성했으며, 지연 시간 제약 하에서 에너지를 최소화하는 목표에서는 평균 1.18배 더 낮은 에너지 소비를 기록했습니다. 또한, 전체 탐색 과정에서 Cello가 사용한 샘플 수는 기존 SEML 대비 약 30 % 감소했으며, 특히 가장 오래 걸리는 상위 10 % 구성에 대한 실행 시간은 평균 45 % 이상 단축되었습니다. 이러한 결과는 Cello가 샘플 수 자체를 줄이는 것뿐만 아니라, 각 샘플을 수집하는 데 드는 비용까지 효과적으로 절감한다는 것을 입증합니다.
요약하면, Cello는 (1) 미래 시스템 동작을 사전에 정확히 예측하기 위해 검열 회귀를 도입하고, (2) 예측 결과를 기반으로 비효율적인 샘플을 조기에 종료함으로써 전체 탐색 비용을 크게 낮추는 두 가지 핵심 메커니즘을 결합한 프레임워크입니다. 본 연구는 컴퓨터 시스템 최적화 분야에서 샘플 효율성을 한 단계 끌어올리는 동시에, 실제 운영 환경에서 시간·전력·자원을 절감할 수 있는 실용적인 방법을 제시한다는 점에서 의의가 큽니다. 앞으로는 Cello를 다양한 종류의 워크로드와 하드웨어 플랫폼에 적용하고, 검열 회귀 모델을 딥러닝 기반 예측 모델과 결합하는 등 확장 연구를 진행함으로써 더욱 일반화된 최적화 솔루션을 구축하고자 합니다.