OpenAtomFoundation / pika

Pika is a Redis-Compatible database developed by Qihoo's infrastructure team.
BSD 3-Clause "New" or "Revised" License
5.91k stars 1.19k forks source link

Get command performance downgrade on 32 core machine. #2465

Closed zhangh43 closed 8 months ago

zhangh43 commented 9 months ago

Is this a regression?

Yes

Description

On 16 cores machine (EC2 c7g.4xlarge) Get command can reach 500K+ ops.

But on 32 cores machine, Get command ops drops to 240K.

The thread-num on 16 cores machine is set to 14, while on 32 core machine is set to 28

Please provide a link to a minimal reproduction of the bug

No response

Screenshots or videos

images

Please provide the version you discovered this bug in (check about page for version information)

3.5.2

Anything else?

No response

zhangh43 commented 8 months ago

EC2 c7g.8xlarge Machine Specification:

ubuntu@~$ lscpu
Architecture:                       aarch64
CPU op-mode(s):                     32-bit, 64-bit
Byte Order:                         Little Endian
CPU(s):                             32
On-line CPU(s) list:                0-31
Thread(s) per core:                 1
Core(s) per socket:                 32
Socket(s):                          1
NUMA node(s):                       1
Vendor ID:                          ARM
Model:                              1
Stepping:                           r1p1
BogoMIPS:                           2100.00
L1d cache:                          2 MiB
L1i cache:                          2 MiB
L2 cache:                           32 MiB
L3 cache:                           32 MiB
NUMA node0 CPU(s):                  0-31
Vulnerability Gather data sampling: Not affected
Vulnerability Itlb multihit:        Not affected
Vulnerability L1tf:                 Not affected
Vulnerability Mds:                  Not affected
Vulnerability Meltdown:             Not affected
Vulnerability Mmio stale data:      Not affected
Vulnerability Retbleed:             Not affected
Vulnerability Spec rstack overflow: Not affected
Vulnerability Spec store bypass:    Mitigation; Speculative Store Bypass disable
                                    d via prctl
Vulnerability Spectre v1:           Mitigation; __user pointer sanitization
Vulnerability Spectre v2:           Mitigation; CSV2, BHB
Vulnerability Srbds:                Not affected
Vulnerability Tsx async abort:      Not affected
Flags:                              fp asimd evtstrm aes pmull sha1 sha2 crc32 a
                                    tomics fphp asimdhp cpuid asimdrdm jscvt fcm
                                    a lrcpc dcpop sha3 sm3 sm4 asimddp sha512 sv
                                    e asimdfhm dit uscat ilrcpc flagm ssbs paca
                                    pacg dcpodp svei8mm svebf16 i8mm bf16 dgh rn
                                    g