{"id":25053,"date":"2015-12-12T16:56:23","date_gmt":"2015-12-12T14:56:23","guid":{"rendered":"https:\/\/mamchenkov.net\/wordpress\/?p=25053"},"modified":"2015-12-12T16:56:23","modified_gmt":"2015-12-12T14:56:23","slug":"cpu-steal-time-now-on-amazon-ec2","status":"publish","type":"post","link":"https:\/\/mamchenkov.net\/wordpress\/2015\/12\/12\/cpu-steal-time-now-on-amazon-ec2\/","title":{"rendered":"CPU Steal Time. Now on Amazon EC2"},"content":{"rendered":"<!-- google_ad_section_start -->\n<p>Yesterday I wrote the blog post, trying to figure out <a href=\"https:\/\/mamchenkov.net\/wordpress\/2015\/12\/11\/cpu-steal-time\/\">what is the CPU steal time<\/a> and why it occurs. \u00a0The problem with that post was that I didn&#8217;t go deep enough.<\/p>\n<p>I was looking at this issue from the point of view of a generic virtual machine. \u00a0The case that I had to deal with wasn&#8217;t exactly like that. \u00a0I saw the CPU steal time on the Amazon EC2 instance. \u00a0Assuming that these were just my neighbors acting up or Amazon having a temporary hardware issue was a wrong conclusion.<\/p>\n<p>That&#8217;s because I didn&#8217;t know enough about Amazon EC2. \u00a0Well, I&#8217;ve learned a bunch since then, so here&#8217;s what I found.<\/p>\n<p><!--more--><\/p>\n<p>It all started with <a href=\"http:\/\/serverfault.com\/a\/582243\">this ServerFault answer<\/a>, saying:<\/p>\n<blockquote><p>Depending on the EC2 instance type and the underlying hardware, you may not be paying for access to all of the underlying CPU cycles. Amazon is not going to give you access to 100% of a modern, fast CPU if you have asked for an m1.small which is promised to be equivalent to an old, slow CPU.<\/p>\n<p>On EC2, steal doesn&#8217;t depend on the activity of other virtual machine neighbors. It is simply a matter of EC2 making sure you are not getting more CPU cycles than you are paying for.<\/p><\/blockquote>\n<p>Wait, what? I need to know more about this. \u00a0So I dig deeper, and I find <a href=\"http:\/\/www.datadoghq.com\/wp-content\/uploads\/2013\/07\/top_5_aws_ec2_performance_problems_ebook.pdf\">this PDF document<\/a> describing &#8220;The Top 5 AWS EC2 Performance Problems&#8221;. \u00a0Just for the record, they are:<\/p>\n<blockquote>\n<ol>\n<li>Unpredictable EBS Disk I\/O<\/li>\n<li>EC2 Instance ECU Mismatch and Stolen CPU<\/li>\n<li>Running out of EC2 Instance Memory<\/li>\n<li>ELB Loading Balancing Traffic Latency<\/li>\n<li>AWS Maintenance and Service Interruptions<\/li>\n<\/ol>\n<\/blockquote>\n<p>Hmm. \u00a0It&#8217;s good that I haven&#8217;t hit all five (yet?). \u00a0But the issue was having is clearly on the list. \u00a0So, scrolling down to page 11 of that document, I find a very helpful explanation, of what is an ECU:<\/p>\n<blockquote><p>While AWS has a large number of physical servers under management it does not rent them per se, rather only access to these servers in the form of virtual machines is available. The types of virtual machines are limited to a small list so as to make choosing an instance relatively easy. Somehow a virtual machine type, e.g. m1.large, can run on very different underlying hardware platforms and yet yield roughly the same performance in terms of compute.<\/p>\n<p>To standardize compute, AWS has created a logical computation unit known as an Elastic Compute Unit (ECU). ECUs equate to a certain amount of computing cycles in a way that is independent of the actual hardware \u2013 1 ECU is defined as the compute power of a 1.0-1.2Ghz of a 2007 server CPU.<\/p><\/blockquote>\n<p>&#8230; and further on down on what is &#8220;stolen&#8221; CPU:<\/p>\n<blockquote><p>Stolen CPU is a metric that\u2019s often looked at but can be hard to understand. It implies some malevolent intent from your virtual neighbors. In reality it is a relative measure of the cycles a CPU should have been able to run but could not due to the hypervisor diverting cycles away from the instance. From the point of view of your application, stolen CPU cycles are cycles that your application could have used.<\/p>\n<p>Some of these diverted cycles stem from the hypervisor enforcing a quota based on the ECU you have purchased. In other cases, such as the one shown below, the amount of diverted or stolen CPU cycles varies over time, presumably due to other instances on the same physical hardware also requesting CPU cycles from the underlying hardware.<\/p><\/blockquote>\n<p>&#8230; and as to why it occurs:<\/p>\n<blockquote><p>Since the price per instance type is the same in a given region, AWS, through the use of hypervisors, ensures that all virtual machines get a fair share of access to the underlying hardware to actually run.<\/p><\/blockquote>\n<p>Recommended problem avoidance and resolution:<\/p>\n<blockquote>\n<ul>\n<li>Buy more powerful EC2 instances<\/li>\n<li>Baseline your application compute needs<\/li>\n<li>Briefly profile your app on an EC2 instance before finalizing a deploy decision<\/li>\n<li>Re-deploy your application in another instance<\/li>\n<\/ul>\n<\/blockquote>\n<p>OK, understood. \u00a0But I want more and detailed information from the source, so I went to read the <a href=\"https:\/\/aws.amazon.com\/ec2\/details\/\">Amazon EC2 details page<\/a>. \u00a0I&#8217;ve read it before, but it&#8217;s overwhelming and, often, difficult, with all the Amazon lingo, to make sense of. \u00a0Gladly, this time it&#8217;s quite useful. \u00a0I looked for my t2 instance type, and saw this:<\/p>\n<blockquote><p><strong>General Purpose Instances<\/strong><\/p>\n<p>T2 instances are <a href=\"https:\/\/aws.amazon.com\/ec2\/instance-types#burst\">Burstable Performance Instances<\/a> that provide a baseline level of CPU performance with the ability to burst above the baseline. Instances in this family are ideal for applications that don\u2019t use the full CPU often or consistently, but occasionally need to burst (e.g. web servers, developer environments, and small databases).<\/p>\n<ul>\n<li>t2.micro: 1 GiB of memory, 1 vCPU, 6 CPU Credits\/hour, EBS-only, 32 bit or 64-bit platform<\/li>\n<li>t2.small: 2 GiB of memory, 1 vCPU, 12 CPU Credits\/hour, EBS-only, 32 bit or 64-bit platform<\/li>\n<li>t2.medium: 4 GiB of memory, 2 vCPUs, 24 CPU Credits\/hour, EBS-only, 32 bit or 64-bit platform<\/li>\n<li>t2.large: 8 GiB of memory, 2 vCPUs, 36 CPU Credits\/hour, EBS-only, 64 bit platform<\/li>\n<\/ul>\n<\/blockquote>\n<p>Hold on! What&#8217;s that burstable thing? Have I seen it before? No, I haven&#8217;t. And it&#8217;s pure gold! It&#8217;s so good that I&#8217;ll quote the whole thing in here:<\/p>\n<blockquote><p><strong>Burstable Performance Instances<\/strong><\/p>\n<p>Amazon EC2 allows you to choose between Fixed Performance Instances (e.g. M3, C3, and R3) and Burstable Performance Instances (e.g. T2). Burstable Performance Instances provide a baseline level of CPU performance with the ability to burst above the baseline. T2 instances are for workloads that don\u2019t use the full CPU often or consistently, but occasionally need to burst.<\/p>\n<p>T2 instances\u2019 baseline performance and ability to burst are governed by CPU Credits. Each T2 instance receives CPU Credits continuously, the rate of which depends on the instance size. T2 instances accrue CPU Credits when they are idle, and use CPU credits when they are active. A CPU Credit provides the performance of a full CPU core for one minute.<\/p>\n<p>For example, a t2.small instance receives credits continuously at a rate of 12 CPU Credits per hour. This capability provides baseline performance equivalent to 20% of a CPU core. If at any moment the instance does not need the credits it receives, it stores them in its CPU Credit balance for up to 24 hours. If and when your t2.small needs to burst to more than 20% of a core, it draws from its CPU Credit balance to handle this surge seamlessly. Over time, if you find your workload needs more CPU Credits than you have, or your instance does not maintain a positive CPU Credit balance, we recommend either a larger T2 size, such as the t2.medium, or a Fixed Performance Instance type.<\/p>\n<p>Many applications such as web servers, developer environments and small databases don\u2019t need consistently high levels of CPU, but benefit significantly from having full access to very fast CPUs when they need them. T2 instances are engineered specifically for these use cases. If you need consistently high CPU performance for applications such as video encoding, high volume websites or HPC applications, we recommend you use Fixed Performance Instances. T2 instances are designed to perform as if they have dedicated high speed Intel cores available when your application really needs CPU performance, while protecting you from the variable performance or other common side effects you might typically see from over-subscription in other environments.<\/p><\/blockquote>\n<p>OK. \u00a0Now, all of a sudden, it all makes sense. \u00a0My t2 instance was overusing the CPU, ran out of the CPU credits, and all the rest of the CPU time was stolen. \u00a0It wasn&#8217;t the fault of the Amzon&#8217;s hardware or my neighbors acting up. \u00a0As often, I rushed to blame other people for my own issues.<\/p>\n<p>Armed with that knowledge, I have applied some configuration optimization to the application and the server running it and now things seem to be back to normal.<\/p>\n<p>I think I should find some time and money to spend on <a href=\"https:\/\/aws.amazon.com\/training\/\">AWS Training and Certification<\/a>.<\/p>\n<!-- google_ad_section_end -->\n","protected":false},"excerpt":{"rendered":"<!-- google_ad_section_start -->\n<p>Yesterday I wrote the blog post, trying to figure out what is the CPU steal time and why it occurs. \u00a0The problem with that post was that I didn&#8217;t go deep enough. I was looking at this issue from the point of view of a generic virtual machine. \u00a0The case that I had to deal &hellip; <a href=\"https:\/\/mamchenkov.net\/wordpress\/2015\/12\/12\/cpu-steal-time-now-on-amazon-ec2\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">CPU Steal Time. Now on Amazon EC2<\/span><\/a><\/p>\n<!-- google_ad_section_end -->\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"CPU Steal Time. Now on Amazon EC2 #Amazon #AWS #SysAdmin #DevOps #hosting #cloud","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false,"_links_to":"","_links_to_target":""},"categories":[1,6,133,62,1334],"tags":[42,3270,3333,2366,1057,2289],"keyring_services":[],"class_list":["post-25053","post","type-post","status-publish","format-standard","hentry","category-general","category-linux","category-sysadmin","category-technology","category-web-work","tag-amazon","tag-amazon-aws","tag-amazon-ec2","tag-cloud-computing","tag-performance","tag-web-hosting"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"Yesterday I wrote the blog post, trying to figure out what is the CPU steal time and why it occurs. The problem with that post was that I didn&#039;t go deep enough. I was looking at this issue from the point of view of a generic virtual machine. The case that I had to deal\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Leonid Mamchenkov\"\/>\n\t<meta name=\"google-site-verification\" content=\"VHvdD0_usx1_4DzKy_QCVcICVgX2EgA2ybELT-wl7kQ\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/mamchenkov.net\/wordpress\/2015\/12\/12\/cpu-steal-time-now-on-amazon-ec2\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Leonid Mamchenkov - Life, universe, and everything else\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"CPU Steal Time. Now on Amazon EC2 - Leonid Mamchenkov\" \/>\n\t\t<meta property=\"og:description\" content=\"Yesterday I wrote the blog post, trying to figure out what is the CPU steal time and why it occurs. The problem with that post was that I didn&#039;t go deep enough. I was looking at this issue from the point of view of a generic virtual machine. The case that I had to deal\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/mamchenkov.net\/wordpress\/2015\/12\/12\/cpu-steal-time-now-on-amazon-ec2\/\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"1024\" \/>\n\t\t<meta property=\"og:image:height\" content=\"1024\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2015-12-12T14:56:23+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2015-12-12T14:56:23+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/MamchenkovBlog\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:site\" content=\"@mamchenkov\" \/>\n\t\t<meta name=\"twitter:title\" content=\"CPU Steal Time. Now on Amazon EC2 - Leonid Mamchenkov\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Yesterday I wrote the blog post, trying to figure out what is the CPU steal time and why it occurs. The problem with that post was that I didn&#039;t go deep enough. I was looking at this issue from the point of view of a generic virtual machine. The case that I had to deal\" \/>\n\t\t<meta name=\"twitter:creator\" content=\"@mamchenkov\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BlogPosting\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2015\\\/12\\\/12\\\/cpu-steal-time-now-on-amazon-ec2\\\/#blogposting\",\"name\":\"CPU Steal Time. Now on Amazon EC2 - Leonid Mamchenkov\",\"headline\":\"CPU Steal Time. Now on Amazon EC2\",\"author\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#person\"},\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2015\\\/12\\\/12\\\/cpu-steal-time-now-on-amazon-ec2\\\/#articleImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g\",\"width\":96,\"height\":96,\"caption\":\"Leonid Mamchenkov\"},\"datePublished\":\"2015-12-12T16:56:23+02:00\",\"dateModified\":\"2015-12-12T16:56:23+02:00\",\"inLanguage\":\"en-US\",\"commentCount\":10,\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2015\\\/12\\\/12\\\/cpu-steal-time-now-on-amazon-ec2\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2015\\\/12\\\/12\\\/cpu-steal-time-now-on-amazon-ec2\\\/#webpage\"},\"articleSection\":\"All, Linux, Sysadmin, Technology, Web work, Amazon, Amazon AWS, Amazon EC2, cloud computing, performance, web hosting\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2015\\\/12\\\/12\\\/cpu-steal-time-now-on-amazon-ec2\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/#listItem\",\"name\":\"Technology\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/#listItem\",\"position\":2,\"name\":\"Technology\",\"item\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/linux\\\/#listItem\",\"name\":\"Linux\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/linux\\\/#listItem\",\"position\":3,\"name\":\"Linux\",\"item\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/linux\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2015\\\/12\\\/12\\\/cpu-steal-time-now-on-amazon-ec2\\\/#listItem\",\"name\":\"CPU Steal Time. Now on Amazon EC2\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/#listItem\",\"name\":\"Technology\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2015\\\/12\\\/12\\\/cpu-steal-time-now-on-amazon-ec2\\\/#listItem\",\"position\":4,\"name\":\"CPU Steal Time. Now on Amazon EC2\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/linux\\\/#listItem\",\"name\":\"Linux\"}}]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#person\",\"name\":\"Leonid Mamchenkov\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2015\\\/12\\\/12\\\/cpu-steal-time-now-on-amazon-ec2\\\/#personImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g\",\"width\":96,\"height\":96,\"caption\":\"Leonid Mamchenkov\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\",\"url\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/\",\"name\":\"Leonid Mamchenkov\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2015\\\/12\\\/12\\\/cpu-steal-time-now-on-amazon-ec2\\\/#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g\",\"width\":96,\"height\":96,\"caption\":\"Leonid Mamchenkov\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2015\\\/12\\\/12\\\/cpu-steal-time-now-on-amazon-ec2\\\/#webpage\",\"url\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2015\\\/12\\\/12\\\/cpu-steal-time-now-on-amazon-ec2\\\/\",\"name\":\"CPU Steal Time. Now on Amazon EC2 - Leonid Mamchenkov\",\"description\":\"Yesterday I wrote the blog post, trying to figure out what is the CPU steal time and why it occurs. The problem with that post was that I didn't go deep enough. I was looking at this issue from the point of view of a generic virtual machine. The case that I had to deal\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2015\\\/12\\\/12\\\/cpu-steal-time-now-on-amazon-ec2\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\"},\"datePublished\":\"2015-12-12T16:56:23+02:00\",\"dateModified\":\"2015-12-12T16:56:23+02:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#website\",\"url\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/\",\"name\":\"Blog of Leonid Mamchenkov\",\"description\":\"Life, universe, and everything else\",\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#person\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"CPU Steal Time. Now on Amazon EC2 - Leonid Mamchenkov","description":"Yesterday I wrote the blog post, trying to figure out what is the CPU steal time and why it occurs. The problem with that post was that I didn't go deep enough. I was looking at this issue from the point of view of a generic virtual machine. The case that I had to deal","canonical_url":"https:\/\/mamchenkov.net\/wordpress\/2015\/12\/12\/cpu-steal-time-now-on-amazon-ec2\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"google-site-verification":"VHvdD0_usx1_4DzKy_QCVcICVgX2EgA2ybELT-wl7kQ","miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BlogPosting","@id":"https:\/\/mamchenkov.net\/wordpress\/2015\/12\/12\/cpu-steal-time-now-on-amazon-ec2\/#blogposting","name":"CPU Steal Time. Now on Amazon EC2 - Leonid Mamchenkov","headline":"CPU Steal Time. Now on Amazon EC2","author":{"@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author"},"publisher":{"@id":"https:\/\/mamchenkov.net\/wordpress\/#person"},"image":{"@type":"ImageObject","@id":"https:\/\/mamchenkov.net\/wordpress\/2015\/12\/12\/cpu-steal-time-now-on-amazon-ec2\/#articleImage","url":"https:\/\/secure.gravatar.com\/avatar\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g","width":96,"height":96,"caption":"Leonid Mamchenkov"},"datePublished":"2015-12-12T16:56:23+02:00","dateModified":"2015-12-12T16:56:23+02:00","inLanguage":"en-US","commentCount":10,"mainEntityOfPage":{"@id":"https:\/\/mamchenkov.net\/wordpress\/2015\/12\/12\/cpu-steal-time-now-on-amazon-ec2\/#webpage"},"isPartOf":{"@id":"https:\/\/mamchenkov.net\/wordpress\/2015\/12\/12\/cpu-steal-time-now-on-amazon-ec2\/#webpage"},"articleSection":"All, Linux, Sysadmin, Technology, Web work, Amazon, Amazon AWS, Amazon EC2, cloud computing, performance, web hosting"},{"@type":"BreadcrumbList","@id":"https:\/\/mamchenkov.net\/wordpress\/2015\/12\/12\/cpu-steal-time-now-on-amazon-ec2\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress#listItem","position":1,"name":"Home","item":"https:\/\/mamchenkov.net\/wordpress","nextItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/#listItem","name":"Technology"}},{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/#listItem","position":2,"name":"Technology","item":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/","nextItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/linux\/#listItem","name":"Linux"},"previousItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/linux\/#listItem","position":3,"name":"Linux","item":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/linux\/","nextItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/2015\/12\/12\/cpu-steal-time-now-on-amazon-ec2\/#listItem","name":"CPU Steal Time. Now on Amazon EC2"},"previousItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/#listItem","name":"Technology"}},{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/2015\/12\/12\/cpu-steal-time-now-on-amazon-ec2\/#listItem","position":4,"name":"CPU Steal Time. Now on Amazon EC2","previousItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/linux\/#listItem","name":"Linux"}}]},{"@type":"Person","@id":"https:\/\/mamchenkov.net\/wordpress\/#person","name":"Leonid Mamchenkov","image":{"@type":"ImageObject","@id":"https:\/\/mamchenkov.net\/wordpress\/2015\/12\/12\/cpu-steal-time-now-on-amazon-ec2\/#personImage","url":"https:\/\/secure.gravatar.com\/avatar\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g","width":96,"height":96,"caption":"Leonid Mamchenkov"}},{"@type":"Person","@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author","url":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/","name":"Leonid Mamchenkov","image":{"@type":"ImageObject","@id":"https:\/\/mamchenkov.net\/wordpress\/2015\/12\/12\/cpu-steal-time-now-on-amazon-ec2\/#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g","width":96,"height":96,"caption":"Leonid Mamchenkov"}},{"@type":"WebPage","@id":"https:\/\/mamchenkov.net\/wordpress\/2015\/12\/12\/cpu-steal-time-now-on-amazon-ec2\/#webpage","url":"https:\/\/mamchenkov.net\/wordpress\/2015\/12\/12\/cpu-steal-time-now-on-amazon-ec2\/","name":"CPU Steal Time. Now on Amazon EC2 - Leonid Mamchenkov","description":"Yesterday I wrote the blog post, trying to figure out what is the CPU steal time and why it occurs. The problem with that post was that I didn't go deep enough. I was looking at this issue from the point of view of a generic virtual machine. The case that I had to deal","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/mamchenkov.net\/wordpress\/#website"},"breadcrumb":{"@id":"https:\/\/mamchenkov.net\/wordpress\/2015\/12\/12\/cpu-steal-time-now-on-amazon-ec2\/#breadcrumblist"},"author":{"@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author"},"creator":{"@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author"},"datePublished":"2015-12-12T16:56:23+02:00","dateModified":"2015-12-12T16:56:23+02:00"},{"@type":"WebSite","@id":"https:\/\/mamchenkov.net\/wordpress\/#website","url":"https:\/\/mamchenkov.net\/wordpress\/","name":"Blog of Leonid Mamchenkov","description":"Life, universe, and everything else","inLanguage":"en-US","publisher":{"@id":"https:\/\/mamchenkov.net\/wordpress\/#person"}}]},"og:locale":"en_US","og:site_name":"Leonid Mamchenkov - Life, universe, and everything else","og:type":"article","og:title":"CPU Steal Time. Now on Amazon EC2 - Leonid Mamchenkov","og:description":"Yesterday I wrote the blog post, trying to figure out what is the CPU steal time and why it occurs. The problem with that post was that I didn't go deep enough. I was looking at this issue from the point of view of a generic virtual machine. The case that I had to deal","og:url":"https:\/\/mamchenkov.net\/wordpress\/2015\/12\/12\/cpu-steal-time-now-on-amazon-ec2\/","og:image":"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg","og:image:secure_url":"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg","og:image:width":1024,"og:image:height":1024,"article:published_time":"2015-12-12T14:56:23+00:00","article:modified_time":"2015-12-12T14:56:23+00:00","article:publisher":"https:\/\/www.facebook.com\/MamchenkovBlog","twitter:card":"summary_large_image","twitter:site":"@mamchenkov","twitter:title":"CPU Steal Time. Now on Amazon EC2 - Leonid Mamchenkov","twitter:description":"Yesterday I wrote the blog post, trying to figure out what is the CPU steal time and why it occurs. The problem with that post was that I didn't go deep enough. I was looking at this issue from the point of view of a generic virtual machine. The case that I had to deal","twitter:creator":"@mamchenkov","twitter:image":"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg"},"aioseo_meta_data":{"post_id":"25053","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"ai":null,"created":"2023-07-20 03:38:53","updated":"2026-01-15 11:56:45","seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/mamchenkov.net\/wordpress\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/\" title=\"Technology\">Technology<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/linux\/\" title=\"Linux\">Linux<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tCPU Steal Time. Now on Amazon EC2\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/mamchenkov.net\/wordpress"},{"label":"Technology","link":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/"},{"label":"Linux","link":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/linux\/"},{"label":"CPU Steal Time. Now on Amazon EC2","link":"https:\/\/mamchenkov.net\/wordpress\/2015\/12\/12\/cpu-steal-time-now-on-amazon-ec2\/"}],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack-related-posts":[{"id":25077,"url":"https:\/\/mamchenkov.net\/wordpress\/2015\/12\/26\/amazon-makes-it-almost-impossible-to-calculate-their-virtual-cpu-equivalent\/","url_meta":{"origin":25053,"position":0},"title":"Amazon Makes It Almost Impossible To Calculate Their &#8220;Virtual CPU&#8221; Equivalent","author":"Leonid Mamchenkov","date":"December 26, 2015","format":false,"excerpt":"So, it looks like I'm not the only one trying to figure out Amazon EC2 virtual CPU allocation. \u00a0Slashdot runs the story (and a heated debate, as usual) on the subject of Amazon's non-definitive virtual CPUs: ECU's were not the simplest approach to describing a virtual CPU, but they at\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":25199,"url":"https:\/\/mamchenkov.net\/wordpress\/2016\/02\/25\/upgrading-amazon-ec2-instance-type\/","url_meta":{"origin":25053,"position":1},"title":"Upgrading Amazon EC2 instance type","author":"Leonid Mamchenkov","date":"February 25, 2016","format":false,"excerpt":"By now everybody knows that one of the major benefits to using cloud services rather than hosting on your own hardware is the ease to scale quickly. \u00a0Many web applications and large companies benefit from this, but what about smaller customers? \u00a0How about a single server? Well, today one of\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":25032,"url":"https:\/\/mamchenkov.net\/wordpress\/2015\/12\/11\/cpu-steal-time\/","url_meta":{"origin":25053,"position":2},"title":"CPU Steal Time","author":"Leonid Mamchenkov","date":"December 11, 2015","format":false,"excerpt":"Here's something that happens once in a blue moon - you get a server that seems overloaded while doing nothing. \u00a0There are several reasons for why that can happen, but today I'm only going to look at one of them. \u00a0As it happened to me very recently. Firstly, if you\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"web1","src":"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2015\/12\/web1-500x292.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":24618,"url":"https:\/\/mamchenkov.net\/wordpress\/2015\/08\/21\/wordpress-benchmark-of-mysql-server-on-amazon-ec2\/","url_meta":{"origin":25053,"position":3},"title":"WordPress Benchmark of MySQL server on Amazon EC2","author":"Leonid Mamchenkov","date":"August 21, 2015","format":false,"excerpt":"I have a friend who is a newcomer to the world of WordPress. \u00a0Until recently, he was mostly working with custom-built systems and a PostgreSQL database engine, so there are many topics to cover. One of the topics that came up today was the performance of the database engine. \u00a0A\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":25061,"url":"https:\/\/mamchenkov.net\/wordpress\/2015\/12\/17\/amazon-ec2-t2-nano-instances\/","url_meta":{"origin":25053,"position":4},"title":"Amazon EC2 t2.nano instances","author":"Leonid Mamchenkov","date":"December 17, 2015","format":false,"excerpt":"If you thought t2.micro was a tiny machine, I have news for you - Amazon announced t2.nano instance type. \u00a0It features 512 MB of RAM, 1 vCPU, and up to two Elastic network interfaces. \u00a0Price for on-demand instance - $0.0065 per hour. This instance type is perfect for small websites,\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":23425,"url":"https:\/\/mamchenkov.net\/wordpress\/2015\/01\/29\/on-amazon-ec2-instances\/","url_meta":{"origin":25053,"position":5},"title":"On Amazon EC2 instances","author":"Leonid Mamchenkov","date":"January 29, 2015","format":false,"excerpt":"I am staring at the t2.micro (the smallest available instance type) server running MySQL 5.5.40 (using the my-huge.cnf example configuration shipped with MySQL, which ironically matches t2.micro specs). \u00a0Here's why (as reported by Nagios for the last few hours): Queries per second avg: 12888.839 The number is fluctuating between about\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"jetpack_sharing_enabled":true,"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts\/25053","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/comments?post=25053"}],"version-history":[{"count":0,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts\/25053\/revisions"}],"wp:attachment":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/media?parent=25053"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/categories?post=25053"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/tags?post=25053"},{"taxonomy":"keyring_services","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/keyring_services?post=25053"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}