Skip to content

Measures the latency between CPU cores, forkd from nviennot/core-to-core-latency

License

Notifications You must be signed in to change notification settings

KCORES/core-to-core-latency-plus

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

76 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CPU Core-to-Core Latency Tools +

Loongson-3C5000-2.2GHz-16Cores

Desc

License

README in English

该程序用来计算 CPU 核心间通信延迟.

具体方式为, 将两个线程固定在两个不同的 CPU 核心上, 通过CPU缓存一致性协议, 让线程执行一系列比较交换操作来测量延迟.

该 fork 旨在提升程序的易用性并收集更多 CPU benckmark 数据来进行展示.

*** 注意, 由于 MacOS 已经移除了相关接口, 导致本程序依赖的 core_affinity 库无法在 MacOS 系统上将线程绑定到特定的核心上运行, 同时也无法在运行时获取当前核心 ID. 因此本程序在MacOS 上的测试结果严格来说是无效的 (可能都被调度到了相同的一个或几个核心上). 建议 Mac 用户安装 Linux 系统进行测试 ***

How to run

如何运行:

下载预编译版本并运行

请到 https://github.com/KCORES/core-to-core-latency-plus/releases 下载.

下载完毕后, Linux 系统运行:

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

Windows 系统需要打开 CMD, cd 到文件所在目录并运行:

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

注意, --upload 选项会上传您的 benchmark 结果到 https://core-to-core-latency.kcores.com.

您可以根据上传完毕后生成的链接来查看您的结果并生成 heapmap.

由于 history benchmark 结果过大 (results 文件夹内的内容生成 jupyter notebook 会达到 170MB), 因此强烈建议上传 benchmark 结果到该网站并实时生成 heapmap. 如果您需要手动查看历史结果可以访问 History Results 并安装 python 相关环境后, 使用 jupyter notebook 打开并生成.

使用 cargo 安装并运行

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

Leaderboard

更多结果欢迎访问: 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

About

Measures the latency between CPU cores, forkd from nviennot/core-to-core-latency

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Rust 74.2%
  • Jupyter Notebook 15.0%
  • Python 10.8%