Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1109/ISCA.2016.65acmconferencesArticle/Chapter ViewAbstractPublication PagesiscaConference Proceedingsconference-collections
research-article

CASH: supporting IaaS customers with a sub-core configurable architecture

Published: 18 June 2016 Publication History

Abstract

Infrastructure as a Service (IaaS) Clouds have grown increasingly important. Recent architecture designs support IaaS providers through fine-grain configurability, allowing providers to orchestrate low-level resource usage. Little work, however, has been devoted to supporting IaaS customers who must determine how to use such fine-grain configurable resources to meet quality-of-service (QoS) requirements while minimizing cost. This is a difficult problem because the multiplicity of configurations creates a non-convex optimization space. In addition, this optimization space may change as customer applications enter and exit distinct processing phases. In this paper, we overcome these issues by proposing CASH: a fine-grain configurable architecture co-designed with a cost-optimizing runtime system. The hardware architecture enables configurability at the granularity of individual ALUs and L2 cache banks and provides unique interfaces to support low-overhead, dynamic configuration and monitoring. The runtime uses a combination of control theory and machine learning to configure the architecture such that QoS requirements are met and cost is minimized. Our results demonstrate that the combination of fine-grain configurability and non-convex optimization provides tremendous cost savings (70% savings) compared to coarse-grain heterogeneity and heuristic optimization. In addition, the system is able to customize configurations to particular applications, respond to application phases, and provide near optimal cost for QoS targets.

References

[1]
O. Agmon Ben-Yehuda et al. "The Resource-as-a-service (RaaS) Cloud". In: HotCloud'12. Boston, MA, 2012, pp. 12--12.
[2]
Amazon. "Amazon EC2 Pricing". 2014.
[3]
Apache:HTTP server project. httpd.apache.org. 2014.
[4]
S. Bell et al. "TILE64 Processor: A 64-Core SoC with Mesh Interconnect". In: ISSCC. 2008.
[5]
C. Bienia. "Benchmarking Modern Multiprocessors". PhD thesis. Princeton University, 2011.
[6]
N. Binkert et al. "The GEM5 Simulator". In: SIGARCH Comput. Archit. News 39.2 (Aug. 2011), pp. 1--7.
[7]
R. Bitirgen et al. "Coordinated Management of Multiple Interacting Resources in Chip Multiprocessors: A Machine Learning Approach". In: MICRO 41. 2008, pp. 318--329.
[8]
S. Bradley et al. Applied mathematical programming. Addison-Wesley Pub. Co., 1977.
[9]
D. Burger et al. "Scaling to the end of silicon with EDGE architectures". In: Computer 37.7 (2004), pp. 44--55.
[10]
L. Cao and H. M. Schwartz. "Analysis of the Kalman filter based estimation algorithm: an orthogonal decomposition approach". In: Automatica 40.1 (2004), pp. 5--19.
[11]
J. Chen et al. "Modeling Program Resource Demand Using Inherent Program Characteristics". In: SIGMETRICS '11. 2011, pp. 1--12.
[12]
R. Coker. Postal. doc.coker.com.au/projects/postal. 2009.
[13]
Q. Deng et al. "MemScale: Active Low-power Modes for Main Memory". In: ASPLOS XVI. 2011, pp. 225--238.
[14]
Q. Deng et al. "CoScale: Coordinating CPU and Memory System DVFS in Server Systems". In: MICRO-45. 2012, pp. 143--154.
[15]
C. Dubach et al. "A Predictive Model for Dynamic Microarchitectural Adaptivity Control". In: MICRO '43. 2010, pp. 485--496.
[16]
S. J. Eggers et al. "Simultaneous multithreading: a platform for next-generation processors". In: IEEE Micro 17.5 (1997), pp. 12--19.
[17]
A. Filieri et al. "Automated design of self-adaptive software with control-theoretical formal guarantees". In: ICSE. 2014.
[18]
A. Goel et al. "SWiFT: A Feedback Control and Dynamic Reconfiguration Toolkit". In: 2nd USENIX Windows NT Symposium. 1998.
[19]
X. Gu et al. "Application-driven Energy-efficient Architecture Explorations for Big Data". In: Proceedings of the 1st Workshop on Architectures and Systems for Big Data. ASBD '11. Galveston Island, Texas: ACM, 2011, pp. 34--40.
[20]
F. Guo et al. "A Framework for Providing Quality of Service in Chip Multi-Processors". In: MICRO 40. Washington, DC, USA, 2007, pp. 343--355.
[21]
J. L. Hellerstein et al. FCCS. John Wiley & Sons, 2004.
[22]
H. Hoffmann. "JouleGuard: energy guarantees for approximate applications". In: SOSP. 2015.
[23]
H. Hoffmann et al. "Remote Store Programming". In: HiPEAC (2010).
[24]
H. Hoffmann et al. "A Generalized Software Framework for Accurate and Efficient Managment of Performance Goals". In: EMSOFT. 2013.
[25]
C. Imes et al. "POET: A portable approach to minimizing energy under soft real-time constraints". In: Real-Time and Embedded Technology and Applications Symposium (RTAS), 2015 IEEE. 2015.
[26]
E. Ipek et al. "Self-Optimizing Memory Controllers: A Reinforcement Learning Approach". In: ISCA '08. 2008, pp. 39--50.
[27]
E. Ipek et al. "Core Fusion: accommodating software diversity in chip multiprocessors". In: San Diego, California, USA, 2007, pp. 186--197.
[28]
R. Iyer et al. "QoS policies and architecture for cache/memory in CMP platforms". In: SIGMETRICS '07. San Diego, California, USA, 2007, pp. 25--36.
[29]
B. Jeff. "Big.LITTLE system architecture from ARM: saving power through heterogeneous multiprocessing and task context migration". In: DAC. 2012, pp. 1143--1146.
[30]
D. H. Kim et al. "Racing and Pacing to Idle: Theoretical and Empirical Analysis of Energy Optimization Heuristics". In: CPSNA. 2015.
[31]
O. Kocberber et al. "Meet the Walkers: Accelerating Index Traversals for In-memory Databases". In: MICRO-46. 2013, pp. 468--479.
[32]
R. Kumar et al. "Processor Power Reduction Via Single-ISA Heterogeneous Multi-Core Architectures". In: Computer Architecture Letters 2.1 (2003), p. 2.
[33]
B. C. Lee and D. M. Brooks. "Accurate and Efficient Regression Modeling for Microarchitectural Performance and Power Prediction". In: SIGPLAN Not. 41.11 (Oct. 2006), pp. 185--194.
[34]
W. Levine. The control handbook. Ed. by W. Levine. CRC Press, 2005.
[35]
B. Li and K. Nahrstedt. "A control-based middleware framework for quality-of-service adaptations". In: IEEE Journal on Selected Areas in Communications 17.9 (Sept. 1999).
[36]
D. Lo et al. "Towards Energy Proportionality for Large-scale Latency-critical Workloads". In: ISCA '14. Minneapolis, Minnesota, USA, 2014, pp. 301--312.
[37]
P. Lotfi-Kamran et al. "Scale-out processors". In: ISCA '12. 2012, pp. 500--511.
[38]
M. Maggio et al. "Power Optimization in Embedded Systems via Feedback Control of Resource Allocation". In: IEEE Trans. Contr. Sys. Techn. 21.1 (2013), pp. 239--246.
[39]
D. Meisner et al. "PowerNap: Eliminating Server Idle Power". In: ASPLOS XIV. Washington, DC, USA: ACM, 2009, pp. 205--216.
[40]
N. Mishra et al. "A Probabilistic Graphical Model-based Approach for Minimizing Energy Under Performance Constraints". In: ASPLOS. 2015.
[41]
R. Nagarajan et al. "A Design Space Evaluation of Grid Processor Architectures". In: MICRO. Dec. 2001, pp. 40--51.
[42]
P. Petrica et al. "Flicker: A Dynamically Adaptive Architecture for Power Limited Multicore Systems". In: ISCA '13. 2013, pp. 13--23.
[43]
A. Putnam et al. "A Reconfigurable Fabric for Accelerating Large-Scale Datacenter Services". In: ISCA 41. 2014.
[44]
M. K. Qureshi and Y. N. Patt. "Utility-Based Cache Partitioning: A Low-Overhead, High-Performance, Runtime Mechanism to Partition Shared Caches". In: MICRO 39. 2006, pp. 423--432.
[45]
S. Ren et al. "Exploiting Processor Heterogeneity in Interactive Services". In: ICAC 13. USENIX, 2013, pp. 45--58.
[46]
K. Sankaralingam et al. "Exploiting ILP, TLP, and DLP with the polymorphous TRIPS architecture". In: ISCA. 2003, pp. 422--433.
[47]
K. Sankaralingam et al. "Distributed Microarchitectural Protocols in the TRIPS Prototype Processor". In: MICRO-39. 2006, pp. 480--491.
[48]
A. Sharifi et al. "METE: Meeting End-to-end QoS in Multicores Through System-wide Resource Management". In: SIGMETRICS '11. 2011, pp. 13--24.
[49]
D. C. Snowdon et al. "Koala: A Platform for OS-level Power Management". In: EuroSys. 2009.
[50]
SPEC. "CINT2006 (Integer Component of SPEC CPU2006)".
[51]
D. C. Steere et al. "A Feedback-driven Proportion Allocator for Real-rate Scheduling". In: OSDI '99. 1999, pp. 145--158.
[52]
G. Suh et al. "A new memory monitoring scheme for memory-aware scheduling and partitioning". In: HPCA. 2002, pp. 117--128.
[53]
R. S. Sutton and A. G. Barto. Introduction to Reinforcement Learning. Cambridge, MA, USA: MIT Press, 1998.
[54]
S. Swanson et al. "WaveScalar". In: MICRO 36. 2003, pp. 291--.
[55]
M. Taylor et al. "Scalar operand networks: on-chip interconnect for ILP in partitioned architectures". In: HPCA. 2003, pp. 341 --353.
[56]
G. Urdaneta et al. "Wikipedia workload analysis for decentralized hosting". In: Computer Networks 53.11 (2009), pp. 1830 --1845.
[57]
Y. Watanabe et al. "WiDGET: Wisconsin decoupled grid execution tiles". In: SIGARCH Comput. Archit. News 38.3 (June 2010), pp. 2--13.
[58]
G. Welch and G. Bishop. An Introduction to the Kalman Filter. Tech. rep. TR 95-041. UNC Chapel Hill, Department of Computer Science.
[59]
D. Wentzlaff et al. "On-Chip Interconnection Architecture of the Tile Processor". In: IEEE Micro 27.5 (Sept. 2007), pp. 15--31.
[60]
D. Wentzlaff et al. "Configurable fine-grain protection for multicore processor virtualization". In: International Symposium on Computer Architecture (ISCA). 2012, pp. 464--475.
[61]
H. Yang et al. "Bubble-flux: Precise Online QoS Management for Increased Utilization in Warehouse Scale Computers". In: ISCA '13. 2013, pp. 607--618.
[62]
J. J. Yi et al. "A Statistically Rigorous Approach for Improving Simulation Methodology". In: HPCA '03. 2003, pp. 281--.
[63]
R. Zhang et al. "ControlWare: A Middleware Architecture for Feedback Control of Software Performance." In: ICDCS. 2002, pp. 301--310.
[64]
Y. Zhou and D. Wentzlaff. "The Sharing Architecture: Sub-core Configurability for IaaS Clouds". In: ASPLOS '14. 2014, pp. 559--574.
[65]
Y. Zhou and D. Wentzlaff. "MITTS: Memory Inter-Arrival Time Traffic Shaping". In: ISCA. 2016.

Cited By

View all
  • (2019)Getting more performance with polymorphism from emerging memory technologiesProceedings of the 12th ACM International Conference on Systems and Storage10.1145/3319647.3325826(8-20)Online publication date: 22-May-2019
  • (2019)Generative and multi-phase learning for computer systems optimizationProceedings of the 46th International Symposium on Computer Architecture10.1145/3307650.3326633(39-52)Online publication date: 22-Jun-2019
  • (2018)CALOREEACM SIGPLAN Notices10.1145/3296957.317318453:2(184-198)Online publication date: 19-Mar-2018
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ISCA '16: Proceedings of the 43rd International Symposium on Computer Architecture
June 2016
756 pages
ISBN:9781467389471

Sponsors

Publisher

IEEE Press

Publication History

Published: 18 June 2016

Check for updates

Qualifiers

  • Research-article

Conference

ISCA '16
Sponsor:

Acceptance Rates

Overall Acceptance Rate 543 of 3,203 submissions, 17%

Upcoming Conference

ISCA '25

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)11
  • Downloads (Last 6 weeks)1
Reflects downloads up to 12 Sep 2024

Other Metrics

Citations

Cited By

View all
  • (2019)Getting more performance with polymorphism from emerging memory technologiesProceedings of the 12th ACM International Conference on Systems and Storage10.1145/3319647.3325826(8-20)Online publication date: 22-May-2019
  • (2019)Generative and multi-phase learning for computer systems optimizationProceedings of the 46th International Symposium on Computer Architecture10.1145/3307650.3326633(39-52)Online publication date: 22-Jun-2019
  • (2018)CALOREEACM SIGPLAN Notices10.1145/3296957.317318453:2(184-198)Online publication date: 19-Mar-2018
  • (2018)CALOREEProceedings of the Twenty-Third International Conference on Architectural Support for Programming Languages and Operating Systems10.1145/3173162.3173184(184-198)Online publication date: 19-Mar-2018
  • (2018)CABLEProceedings of the 51st Annual IEEE/ACM International Symposium on Microarchitecture10.1109/MICRO.2018.00033(312-325)Online publication date: 20-Oct-2018
  • (2017)Memory cocktail therapyProceedings of the 50th Annual IEEE/ACM International Symposium on Microarchitecture10.1145/3123939.3124548(232-244)Online publication date: 14-Oct-2017
  • (2016)GRAPEThe 49th Annual IEEE/ACM International Symposium on Microarchitecture10.5555/3195638.3195657(1-13)Online publication date: 15-Oct-2016
  • (2016)MITTSACM SIGARCH Computer Architecture News10.1145/3007787.300119344:3(532-544)Online publication date: 18-Jun-2016
  • (2016)Availability KnobProceedings of the Seventh ACM Symposium on Cloud Computing10.1145/2987550.2987556(42-56)Online publication date: 5-Oct-2016
  • (2016)MITTSProceedings of the 43rd International Symposium on Computer Architecture10.1109/ISCA.2016.53(532-544)Online publication date: 18-Jun-2016
  • Show More Cited By

View Options

Get Access

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media