Skip to content

Commit 07adaa4

Browse files
Merge pull request #251150 from iamwilliew/docs-editor/b-series-cpu-creditmodel-1694539358
Create article b-series-cpu-creditmodel
2 parents 7762135 + b855615 commit 07adaa4

File tree

2 files changed

+61
-0
lines changed

2 files changed

+61
-0
lines changed

articles/virtual-machines/TOC.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -191,6 +191,8 @@
191191
href: av2-series.md
192192
- name: B-series burstable
193193
items:
194+
- name: B-series CPU Credit Model
195+
href: ./b-series-cpu-credit-model/b-series-cpu-credit-model.md
194196
- name: B-series V1
195197
href: sizes-b-series-burstable.md
196198
- name: Bsv2-series
Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
---
2+
title: B Series CPU Credit Model
3+
description: Overview of B Series CPU Credit Model
4+
author: iamwilliew
5+
ms.author: wwilliams
6+
ms.service: virtual-machines
7+
ms.subservice: sizes
8+
ms.topic: conceptual
9+
ms.date: 09/12/2023
10+
---
11+
12+
# B Series CPU Credit Model
13+
14+
While traditional Azure virtual machines provide fixed CPU performance, B-series virtual machines are the only VM type that use credits for CPU performance provisioning. B-series VMs utilize a CPU credit model to track how much CPU is consumed - the virtual machine accumulates CPU credits when a workload is operating below the base CPU performance threshold and, uses credits when running above the base CPU performance threshold until all of its credits are consumed. Upon consuming all the CPU credits, a B-series virtual machine is throttled back to its base CPU performance until it accumulates the credits to CPU burst again.
15+
16+
## Credit concepts and definitions
17+
- Base CPU performance = The minimum CPU performance threshold a VM will have available always. This level sets the bar for net credit accumulation when the CPU utilization is below the base CPU performance level and, net credit consumption when the CPU utilization is above the base CPU performance.
18+
19+
- Initial Credits = The number of credits allocated to a B-series virtual machine when a VM is deployed.
20+
21+
- Credits banked/hour = The number of credits a B-seires virtual machine accumulates per hour if the VM is idle (no CPU performance consumption).
22+
23+
- Max Banked Credits = The maximum number/upper limit of credits a B-seires virtual machine can accumulate. Upon reaching this upper limit, a B-series VM can no longer accumulate more credits.
24+
25+
- CPU Credits Consumed = The number of CPU credits spent during the measurement time-period.
26+
27+
- CPU Credits Remaining = The number of CPU credits available to consume for a given B-series VM.
28+
29+
- Percentage CPU = CPU performance of a given VM during a measurement period.
30+
31+
32+
## Credits accumulation and consumption
33+
The credit accumulation and consumption rates are set such that a VM running at exactly its base performance level will have neither a net accumulation or consumption of bursting credits. A VM has a net credit increase whenever it's running below its base CPU performance level and will have a net decrease in credits whenever the VM is utilizing the CPU more than its base CPU performance level.
34+
35+
To conduct calculations on credit accumulations and consumptions, customers can utilize the holistic 'credits banked per minute' formula =>
36+
`((Base CPU performance * number of vCPU)/2 - (Percentage CPU * number of vCPU)/2)/100`.
37+
38+
Putting this calculation into action, let's say that a customer deploys the Standard_B2ts_v2 VM size and their workload demands 10% of the 'Percentage CPU' or CPU performance, then the 'credits banked per minute' calculation will be as follows: `((20%*2)/2 - (10%*2)/2)/100 = 0.1 credits/minute`. In such a scenario, a B-series VM is accumulating credits given the 'Percentage CPU'/ CPU performance requirement is below the 'Base CPU performance' of the Standard_B2ts_v2.
39+
40+
Similarly, utilizing the example of a Standard_B32as_v2 VM size, if the workload demands 60% of the CPU performance for a measurement of time - then the 'credits banked per minute' calculation will be as follows: `((40%*32)/2 - (60%*32)/2)/100 = (6.4 - 9.6)/100 = -3.2 credits per minute`. Here the negative result implies the B-series VM is consuming credits given the 'Percentage CPU'/CPU performance requirement is above the 'Base CPU performance' of the Standard_B32as_v2.
41+
42+
43+
## Credit monitoring
44+
To monitor B-series specific credit metrics, customers can utilize the Azure monitor data platform, see [Overview of metrics in Microsoft Azure](../../azure-monitor/data-platform.md). Azure monitor data platform can be accessed via Azure portal and other orchestration paths, and via programmatic API calls to Azure monitor.
45+
Via Azure monitor data platform, customers can access B-series credit model specific metrics such as 'CPU Credits Consumed', 'CPU Credits Remaining' and 'Percentage CPU' for their given B-series size in real time.
46+
47+
48+
## Other sizes and information
49+
50+
- [General purpose](../sizes-general.md)
51+
- [Compute optimized](../sizes-compute.md)
52+
- [Memory optimized](../sizes-memory.md)
53+
- [Storage optimized](../sizes-storage.md)
54+
- [GPU optimized](../sizes-gpu.md)
55+
- [High performance compute](../sizes-hpc.md)
56+
57+
Pricing Calculator: [Pricing Calculator](https://azure.microsoft.com/pricing/calculator/)
58+
59+
More information on Disks Types: [Disk Types](../disks-types.md#ultra-disks)

0 commit comments

Comments
 (0)