#cpu #cache #latency #thread #communication #core #benchmark

app core-to-core-latency-plus

This program is used to calculate the communication latency between CPU cores

3 releases

0.1.17 Oct 7, 2024
0.1.16 Oct 5, 2024
0.1.14 Oct 5, 2024

#54 in Caching

Download history 224/week @ 2024-09-30 234/week @ 2024-10-07 46/week @ 2024-10-14 28/week @ 2024-11-04

82 downloads per month

MIT license

40KB
485 lines

CPU Core-to-Core Latency Tools +

Loongson-3C5000-2.2GHz-16Cores

Description

License

This program is used to calculate the communication latency between CPU cores.

Specifically, it fixes two threads on two different CPU cores and measures the latency by having the threads perform a series of compare-and-swap operations through the CPU cache coherence protocol.

This fork aims to improve the usability of the program and collect more CPU benchmark data for display.

*** Note: Due to MacOS removing related interfaces, the core_affinity library that this program depends on cannot bind threads to specific cores on MacOS systems, nor can it obtain the current core ID at runtime. Therefore, the test results of this program on MacOS are strictly invalid (they may all be scheduled to the same one or a few cores). It is recommended that Mac users install a Linux system for testing ***

How to run

How to run:

Download pre-compiled version and run

Please download from https://github.com/KCORES/core-to-core-latency-plus/releases.

for Linux, please run:

core-to-core-latency-plus -b 1 --upload

for Windows, please open CMD, cd to file folder and run:

core-to-core-latency-plus.exe -b 1 --upload

Note that the --upload option will upload your benchmark results to https://core-to-core-latency.kcores.com.

You can view your results and generate a heatmap using the link generated after the upload is complete.

Considering the substantial size of the historical benchmark dataset (creating a Jupyter Notebook from the "results" folder results in a file of approximately 170MB), we highly recommend uploading the data to the platform for immediate heatmap visualization. For offline access to historical data, please consult History Results.

install with cargo and run

$ cargo install core-to-core-latency-plus
$ core-to-core-latency-plus -b 1 --upload

Leaderboard

For more results, please visit: https://core-to-core-latency.kcores.com

CPU Name Min Latency Median Latency Max Latency
AMD Ryzen 5 5600X 6-Core Processor 7.6818 17.6634 21.6557
AMD Ryzen 7 5700X 7.8170 18.0319 20.5132
AMD Ryzen 9 5900HX @ 3.3 GHz 7.5602 18.4311 20.8740
AMD Ryzen 7 5800U 7.7068 18.9389 21.3417
AMD Ryzen 5 5500 6-Core Processor 10.3052 18.9881 22.6321
AMD Ryzen 7 PRO 5850U 8-Core Processor 7.7522 19.2608 22.7955
Intel Core i7-6700K 6.8767 19.4800 23.3867
Intel Xeon E-2176M 2.7GHz 6.8374 20.2670 23.0518
AMD Ryzen 7 5800X3D 8-Core Processor 7.8564 20.3614 25.6054
Intel Core i5-10310U 7.2062 20.4074 21.6365
Intel Core i9-9900K CPU @ 3.60GHz 5.9833 20.5833 24.4833
AMD Ryzen 5800X3D 8-Core Processor 5.0000 20.6667 26.0000
AMD Ryzen 9 5900HX 8-Core Processor 5.0000 20.6667 26.0000
Intel Core i7-9700K 3.6GHz 15.6667 20.6667 26.0000
Intel Core i3-4150 3.5GHz 5.3333 20.6667 26.0000
IntelR CoreTM i5-4590 CPU @ 3.30GHz 20.4767 21.1527 21.5759
Intel Core 2 Duo CPU T7500 2.2GHz 22.5429 22.5429 22.5429
Intel Core i9-9980HK 2.40GHz 18.7117 22.5849 28.2760
IntelR CoreTM i7-1165G7 @ 2.80GHz 5.7327 26.9433 29.4373
Intel Core i5-1135G7 2.40GHz 6.8352 27.3317 30.7376
Intel Core i7-12700K 4.3645 32.2228 49.7734
ZHAOXIN KaiXian KX-6640A 2.6GHz 4 Cores 2019-Q2 32.5470 32.5487 33.0574
Intel Core i7-13700KF 3.4GHz 4.0925 33.9537 53.8947
Intel Celeron 1005M 1.90GHz 34.0033 34.0033 34.0033
Intel Core i5-8600T 2.3GHz 32.8742 34.1638 35.8292
Intel Core i5-12600K 3.7GHz 4.4808 34.4223 53.2846
Intel Core i7-12700H 2.3GHz 4.6497 35.8870 56.8566
Intel Core i7-14700K 3.4GHz 4.1059 36.3691 99.6469
Broadcom BCM2837 4-Core 1.2GHz Raspberry Pi 3B 36.6658 36.6658 53.3321
Intel Core i9-12900K 4.3483 37.1367 50.7033
MCST Elbrus-8C2 8Cores 1.55GHz elbrus-v5 34.0720 37.5935 50.0501
Loongson 3A6000HV 2.5GHz 4 Cores 2023-Q4 31.8685 38.5869 38.7137
Apple.M1.Air 35.9917 38.7749 47.7950
Intel Xeon E5-2697v3 HT-off 29.3343 39.2609 47.1590
Loongson 3A5000HV 2.5GHz 4 Cores 2021-Q3 39.4932 39.5098 39.5285
AMD Custom APU 0405 Valve Steam Deck APU Zen 2 4 cores SMT enabled 10.5481 40.5395 50.6295
AWS Graviton3 from-AWS-c7g.16xlarge 29.6008 46.4012 56.8015
AWS Graviton2 from-AWS-c6gd.metal 30.3997 47.1996 58.3994
IntelR Xeon Gold 6242 @ 2.8GHz 7.3351 47.4590 58.5769
Intel Core 2 Quad Processor Q9550 2.83GHz 0.0000 51.6667 53.3333
Loongson 3C5000 2.2GHz 16 Cores 2022-Q2 47.1933 53.2741 57.1524
Apple M1 Ultra 39.6561 53.3572 84.1167
m1.ultra.16p4e 39.6561 53.3572 84.1167
Intel Xeon W9-3475X 2.2GHz 36Cores 2023-Q2 36.3929 55.3493 72.3715
Dual Intel Xeon Platinum 8360Y 2.40GHz 7.5606 56.7837 119.8123
Qualcomm Snapdragon850 57.5972 64.2396 73.3261
Qualcomm Snapdragon 855 60.8146 65.6601 364.8424
AMD Ryzen 9 7950X 16-Core Processor 5.0000 67.6667 73.0000
AMD Ryzen 9 7950X 5.0000 67.6667 73.0000
Dual IntelR XeonR CPU X5650 @ 2.67GHz 7.1077 70.2779 79.6748
HiSilicon Kunpeng 920-6426 @ 2.6GHz 29.9564 71.7844 87.6526
AMD Ryzen 5 2600 6-Core Processor 10.3333 72.6667 99.0000
AMD Ryzen 9 9950X 16-Core Processor 17.2814 76.3930 82.6227
AMD Ryzen 9 7900X 12-Core Processor 7.0333 77.0833 80.7333
AMD Ryzen 9 5950X 3.40GHz 7.3642 82.5303 88.2414
AMD Ryzen 9 5900X 7.5500 82.5500 86.9833
SpacemiT K1 1.60GHz 8-Core 32.5704 85.3937 85.7814
IntelR AtomTM CPU D510 @ 1.66GHz 10.6665 85.9986 86.6652
AMD Ryzen 9 3900X 12-Core Processor 6.7759 87.2548 95.8354
Broadcom BCM2711 Quad core Cortex-A72 ARM v8 64-bit SoC 1.8GHz Raspberry Pi 4B 88.9931 89.8020 89.9820
AMD Ryzen 7 2700X Eight-Core Processor 9.5963 90.7295 94.2679
IntelR Xeon PhiTM CPU 7210 @ 1.30GHz 40.9553 91.0294 112.4597
AMD Ryzen Threadripper 3960X 3.80GHz 24 Cores Zen 2 3rd Gen 2019-Q4 6.3958 94.6282 104.0642
IntelR XeonR Platinum 8375C CPU @ 2.90GHz from-AWS-c6i.metal 7.9685 98.6915 116.8181
AMD EPYC 74F3 24-Core Processor 8.9649 98.8013 107.1125
Dual Intel Xeon Platinum 8358 CPU 2.60GHz 41.0048 98.9467 124.8291
Dual Intel Xeon Gold 6336Y 2.40GHz 7.3638 99.7868 114.1930
AMD Ryzen Threadripper 3990X 64-Core Processor 19.1909 102.9295 112.4265
AMD Ryzen Threadripper PRO 3945WX 12-Core Processor 6.1877 105.0442 112.1279
Intel Xeon Phi 7210 1.30GHz 53.1602 105.3218 113.0751
Dual IntelR XeonR CPU E5-2690 0 @ 2.90GHz 8.2683 105.4716 171.7845
IntelR XeonR CPU E5-2695 v4 @ 2.10GHz 7.4887 107.2264 126.9100
Dual IntelR XeonR CPU E5-2630 v4 @ 2.20GHz 8.0845 107.8309 129.0857
AMD EPYC 9754 128-Core Processor 28.8509 109.3847 119.6138
AMD EPYC 7773X 9.9268 114.8502 139.9596
AMD EPYC 7773X 64-Core Processor 9.9268 114.8502 139.9596
Dual IntelR XeonR CPU E5-2680 v4 @ 2.40GHz 7.8932 117.5104 144.9577
Dual Intel Xeon E5-2698v3 2.3GHz 5.0000 119.6667 224.0000
AMD Ryzen 5 3500X 6-Core Processor 47.0000 120.0000 140.6667
Intel Xeon CPU E5-2695v4 2.10GHz 35.1843 120.1341 161.3051
IntelR XeonR Platinum 8275CL CPU @ 3.00GHz from-AWS-c5.metal 7.4651 128.6704 139.7132
Dual Intel Xeon E5 2620V2 2.10GHz 11.2104 130.1963 201.5718
Dual IntelR Xeon Gold 6242 @ 2.8GHz 7.2657 135.1955 146.1889
Apple M1 Pro 38.3332 144.1669 156.5817
AMD Ryzen Threadripper 1950X 9.9778 150.9642 160.0195
AMD Ryzen Threadripper 1950X 16-Core Processor 9.9395 152.7651 165.8613
Dual Ampere Altra Processor Q80-30 CPU 3.0GHz 67.9924 156.2753 210.6564
Quad Intel Xeon E5-4650v2 2.4GHz 10.7816 157.4775 176.0418
Apple M2 Max 37.0688 172.0697 181.8459
Dual Ampere Altra Processor Q80-30 CPU 3.0GHz NUMA-off 78.4478 179.9726 239.3343
Dual AMD EPYC 9654 96-Core Processor 24.1957 184.6257 200.9054
AMD Ryzen 9 9950X 16-Core Processor 17.0227 190.4729 235.5363
AMD EPYC 7R13 48-Core Processor from-AWS-c6a.metal 9.7475 194.5823 208.5112
Dual AMD EPYC 9454 48-Core Processor 10.3170 196.7665 207.1196
Dual AMD EPYC 9754 128-Core Processor 12.6618 202.4880 216.0390
Phytium D2000 8-Core 58.6155 211.9101 223.8014
Dual AMD EPYC 7302 16-Core Processor 8.3712 227.2905 249.2347
Dual AMD EPYC 7702 64-Core Processor 24.1273 228.9297 251.3631
MCST Elbrus-8C 8Cores 1.2GHz elbrus-v4 42.7973 253.2212 320.5725
NXP LX2160A-RDB 16x Arm Cortex-A72 2.2GHz 60.0019 260.0081 273.3420
Dual AMD EPYC 7742 64-Core Processor 8.0196 260.6432 290.4366
AMD FX-8300 8-Core Processor 41.9496 267.5885 339.6446
Dual AMD EPYC 7763 64-Core Processor 10.1847 289.4902 337.3357
Dual AMD EPYC 7601 32-Core Processor 11.4781 354.8678 429.9534
Dual Sun-Oracle SPARC T4 8 cores@2.85 GHz 97.3333 355.6667 356.3333
Dual Loongson 3B4000 1.8GHz 8 Cores 2019-Q4 123.0064 368.8299 547.2583
Dual IBM Power7 8 cores@3.3 GHz 2010-Q1 156.6639 433.3258 449.9958
Dual IBM Power9 8335-GTH 16-core 2.7GHz 0.0000 683.3050 883.2968

History Results

History Results

License

MIT

Dependencies

~9–21MB
~300K SLoC