Azure's ARM64 Free Tier VM
While browsing Azure's catalogue (as one does, duh), I found VM Types B2pts_v2
and B2ats_v2
which are also eligible for free tier.
Specs B2pts_v2:
2 vCPU of "Neoverse N1"
1 GiB memory
Other accessories are included, like the 64GB Premium SSD which falls under the free tier
This SKU also supports "Accelerated Networking" which we will test after the CPU benchmarks (B1s doesn't support Accelerated Networking, sad.)
Specs B2ats_v2:
Same as B2pts_v2 but with an EPYC 7763 instead
Comparing it to Standard B1s (1 vCPU, 1 GiB memory), on paper it seems like the ARM machine has more capabilities. Pricing-wise, the B1s costs me 680.20 INR, while the B2pts v2 costs 340.10 INR per month, basically half the price. The only "competitor" here for x64 is B2ats_v2 which turns in at 373.50 INR per month with 2vCPU and 1 GiB memory, and Accelerated Networking.
CPU-wise,
The B1s has 1 vCPU of Intel(R) Xeon(R) Platinum 8272CL CPU @ 2.60GHz
The B2pts_v2 has 2 vCPU of ARM Neoverse N1 @ Unknown Clock Speed [could be anywhere from 2.6GHz to 3.0GHz, not sure, CPU doesn't report]
The B2ats_v2 has 2 vCPU of AMD EPYC 7763 64-Core Processor @ 2.60GHz
So I decided to spin up all three of these instances and run cpubench1A which is a cross-platform cpu-only benchmark which measures performance based on mostly algorithmic tasks, simple enough to calculate real world usage (I guess?)
The whole test suite takes ~15-20 minutes to complete on both of these VMs, the results are as follows:
B1s:
Results
=======
Version: 5.0
Single thread
Minimum: 114.986413
Average: 115.557548
Median: 115.627941
Geo mean: 115.557263
Maximum: 115.845309
Multi-thread
Minimum: 105.384983
Average: 105.668679
Median: 105.682823
Geo mean: 105.668517
Maximum: 106.001367
B2pts v2:
Results
=======
Version: 5.0
Single thread
Minimum: 122.303005
Average: 122.593006
Median: 122.608041
Geo mean: 122.592880
Maximum: 122.902863
Multi-thread
Minimum: 230.577010
Average: 232.200380
Median: 232.200321
Geo mean: 232.198363
Maximum: 233.502032
B2ats_v2
Results
=======
Version: 5.0
Single thread
Minimum: 159.737526
Average: 159.842539
Median: 159.866512
Geo mean: 159.842527
Maximum: 159.927794
Multi-thread
Minimum: 198.829954
Average: 199.519373
Median: 199.412625
Geo mean: 199.518778
Maximum: 200.234729
Clearly, Multi-thread doesn't work on a single thread, but it clearly seems like B2pts v2 has a significant advantage for programs that can use multiple threads, and there is a ~5-10 point increase in the single threaded performance. Sadly, clocks speeds are not advertised by the B2pts v2 (atleast in Debian 12 Bookworm). B2ats v2 does outperform B2pts v2 in Single Threaded performance, but still not in Multi Threaded.
Now for the "Accelerated Networking" thing and if it really makes a difference. I will be running network-speed.xyz for this test. All machines are in the "Central India" region and under the same resource group (although I don't think that really matters here). I can't for the love of god figure out how to get Dual Stack networking on these, so IPv6 is not available (blame ms, not me.)
[Slight rant: The fucking tab-based navigation system in Termius made me kill the B2pts v2 tab atleast 3 times now (to the point that my IP got rate-limited, ugh) trying to navigate between the two VMs. A sensible UI design is having the close button on the right side of the tab, but no, its on the left side. As someone that uses Firefox, I have a habit on click on the left side of the tabs to navigate, and you can guess what's happening.]
B1s:
---------------------------------------------------------------------------
Avg DL Speed : 5403.64 Mbps
Avg UL Speed : 658.23 Mbps
Total DL Data : 220.13 GB
Total UL Data : 23.54 GB
Total Data : 243.67 GB
---------------------------------------------------------------------------
[Lost the Result link lol]
B2pts_v2:
---------------------------------------------------------------------------
Avg DL Speed : 6119.71 Mbps
Avg UL Speed : 1311.38 Mbps
Total DL Data : 239.50 GB
Total UL Data : 44.77 GB
Total Data : 284.26 GB
---------------------------------------------------------------------------
Duration : 13 min 55 sec
System Time : 08/08/2024 - 07:39:21 UTC
Total Script Runs : 77210
---------------------------------------------------------------------------
Result : https://result.nws.sh/r/1723102553_YA706S_GLOBAL.txt
---------------------------------------------------------------------------
B2ats_v2:
---------------------------------------------------------------------------
Avg DL Speed : 6071.83 Mbps
Avg UL Speed : 1390.02 Mbps
Total DL Data : 245.90 GB
Total UL Data : 43.81 GB
Total Data : 289.71 GB
---------------------------------------------------------------------------
Duration : 14 min 14 sec
System Time : 08/08/2024 - 07:13:32 UTC
Total Script Runs : 77206
---------------------------------------------------------------------------
Result : https://result.nws.sh/r/1723101004_TFDSZH_GLOBAL.txt
---------------------------------------------------------------------------
From the speed tests, it is showing that having Accelerated Networking provides a significantly better upload speed and marginally better download speed.
I think choosing B2a/pts_v2 over B1s is a significantly better choice which is both cost-effective and better performance-wise. I have no clue as to why Microsoft doesn't advertise these instead of B1s.
youtube.com/watch?v=k1BneeJTDcU
Comments
Azure free tier offers free VMs for first 12 months.
Once it's over, the end is nigh.
Accepting submissions for IPv6 less than /64 Hall of Incompetence.
I was given $300 of free credits with them a few years ago. Completely depleted in just a couple of weeks in my heavy hands, then bought some 200€ more. Those compute instances are amazingly fast, but past a certain amount of spending it becomes cheaper to own the hardware in house.
Pretty sure accel networking isn't included in the free btw
Being a MSDN professional developer member, I get $50 credit every month. That is enough for run few services and low end computing VPS.
Enabled by default, so don't know about that
I have a GitHub Education plan, and I poke Azure every time my subscription ends and they give me my credits.
youtube.com/watch?v=k1BneeJTDcU
If you verify your education status they refill the 12 months each time.