达梦-华为鲲鹏ARM架构下性能测试最佳实践

  • 一、测试综述

  • 1.1 测试目的

1.2 通用指标

指标名称

指标说明

TPS(Transactions per Second)

每秒处理事务数

QPS(Query per Second)

每秒查询数

Latency

时延(最小值、平均值、最大值)

P95

95%SQL语句执行平均时长

1.3 环境配置

系统

Uos_20

cpu

128c_kenpeng920

mem

381

DM8

8.1.2.199

1.4 优化模型

  • ./dminit PATH=/data/dmdata PAGE_SIZE=32 EXTENT_SIZE=32 LOG_SIZE=2048 CHARSET=1 CASE_SENSITIVE=1 BLANK_PAD_MODE=1
  • 使用Adj3.4优化脚本优化。
  • 本次测试的目的主要是针对于bios层对数据库的影响。

bios参数名称

默认

测试一

测试二

测试三

测试四

测试五

测试六

测试七

测试八

测试九

cpu预取

电源策略

节能

性能

节能

节能

节能

性能

节能

节能

性能

性能

内存刷新速率

32

32

auto

32

32

32

auto

32

auto

auto

Max Payload Size

256

256

256

512

256

256

256

512

512

512

1.5 性能对比

  • 测试一到八以默认为100%来对比,测试九以测试四为100%来对比,红色为负优化,蓝色为正优化。
  • 上下浮动2~3%为误差,可以忽略不记.
  • oltp_read_only:测试只读场景的性能,其中SQL事务包括点查、范围查询、聚合函数查询、排序查询、distinct查询
  • oltp_read_write:测试读写场景的性能,其中SQL事务包括点查、范围查询、聚合函数查询、排序查询、distinct查询、更新索引列、更新非索引列、插入、删除。
  • oltp_point_select:测试点查场景的性能,其中SQL事务仅包含点查。

测试项(开启预取)

测试场景

并发线程数

默认tps/qps

测试一

测试二

测试三

提升%

oltp_read_only

1

128

7924/126763

6856/109678

7815/125018

7860/125741

100%/86%/99%/99%/

2

1024

7781/124297

7568/120868

7722/123355

7728/123464

100%/97%/99%/99%/

测试项(关闭预取)

测试场景

并发线程数

测试四

测试五

测试六

测试七

提升%

oltp_read_only

1

128

10135/162147

9505/152064

10136/162167

10996/175915

127%/120%/127%/139%/

2

1024

8880/141881

9483/151536

10173/162580

10348/165352

114%/122%/130%/133%/

测试项(整体优化)

测试场景

并发线程数

测试八

测试九

提升%

oltp_read_only

1

128

8167/130647

9534/152531

103%/94%

2

1024

7646/122111

8920/142509

98%/100%

测试项(开启预取)

测试场景

并发线程数

默认tps/qps

测试一

测试二

测试三

提升%

oltp_read_write

1

128

6604/132066

6046/120899

6341/126812

6572/131410

100%/91%/96%/99%/

2

1024

6606/131853

6244/124605

6234/124411

6289/125510

100%/94%/96%/95%/

测试项(关闭预取)

测试场景

并发线程数

测试四

测试五

测试六

测试七

提升%

oltp_read_write

1

128

7805/156070

7646/152898

7380/147573

7566/142850

118%/116%/111%/114%/

2

1024

6864/137023

6557/130901

6626/132301

6748/134684

103%/100%/100%/102%/

测试项(整体优化)

测试场景

并发线程数

测试八

测试九

提升%

oltp_read_write

1

128

6205/124074

6665/133273

93%/85%/

2

1024

5941/118528

6487/129483

90%/94%

测试项(开启预取)

测试场景

并发线程数

默认tps/qps

测试一

测试二

测试三

提升%

oltp_point_select

1

128

511954

505342

515681

522309

100%/99%/100%/102%

2

1024

491284

486009

495770

505242

100%/ 99%/100%/102%

测试项(关闭预取)

测试场景

并发线程数

测试四

测试五

测试六

测试七

提升%

oltp_point_select

1

128

531672

533962

531516

529269

103%/104%/104%/103%/

2

1024

520154

516948

516888

522023

106%/105%/105%/106%/

测试项(整体优化)

测试场景

并发线程数

测试八

测试九

提升%

oltp_point_select

1

128

504975

513851

98%/96%/

2

1024

495400

493525

100%/95%/

二、压力测试模型

2.1  数据模

  • 数据量12张表*每表1000万行
create tablespace "SYSBENCH" datafile '/data/dmdata/DAMENG/SYSBENCH.DBF' size 20480 autoextend on maxsize 67108863 CACHE = NORMAL;create user "SYSBENCH" identified by "SYSBENCH" password_policy 0
default tablespace "SYSBENCH"
default index tablespace "SYSBENCH";grant "PUBLIC","SOI","VTI","DBA"to "SYSBENCH";

2.2 压力测试

默认

  • 插入数据

./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH  --dm-password=SYSBENCH --table_size=10000000 --auto-inc=0 --threads=128 --tables=12  prepare
 

oltp_read_only

./sysbench oltp_read_only.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=128 --warmup-time=60  --report-interval=5 run
./sysbench oltp_read_only.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=1024 --warmup-time=60 --report-interval=5 run

oltp_read_write

./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=128 --warmup-time=60  --report-interval=5 run
./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=1024 --warmup-time=60 --report-interval=5 run

oltp_point_select

 ./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH  --dm-password=SYSBENCH --table_size=10000000 --auto-inc=0 --threads=128 --tables=12  cleanup

测试一

  • 插入数据

./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=128 --warmup-time=60  --report-interval=5 run
./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=1024 --warmup-time=60 --report-interval=5 run


oltp_point_select

./sysbench oltp_point_select.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=128 --warmup-time=60  --report-interval=5 run
./sysbench oltp_point_select.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=1024 --warmup-time=60 --report-interval=5 run

清理数据

 ./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH  --dm-password=SYSBENCH --table_size=10000000 --auto-inc=0 --threads=128 --tables=12  cleanup
 

测试二

  • 插入数据

./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH  --dm-password=SYSBENCH --table_size=10000000 --auto-inc=0 --threads=128 --tables=12  prepare
 

oltp_read_only

./sysbench oltp_read_only.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=128 --warmup-time=60  --report-interval=5 run
./sysbench oltp_read_only.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=1024 --warmup-time=60 --report-interval=5 run


oltp_read_write

./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=128 --warmup-time=60  --report-interval=5 run
./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=1024 --warmup-time=60 --report-interval=5 run


oltp_point_select

 ./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH  --dm-password=SYSBENCH --table_size=10000000 --auto-inc=0 --threads=128 --tables=12  cleanup
 

测试三

  • 插入数据

./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH  --dm-password=SYSBENCH --table_size=10000000 --auto-inc=0 --threads=128 --tables=12  prepare
 

oltp_read_only

./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=128 --warmup-time=60  --report-interval=5 run
./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=1024 --warmup-time=60 --report-interval=5 run

图片省略ltp_point_select

./sysbench oltp_point_select.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=128 --warmup-time=60  --report-interval=5 run
./sysbench oltp_point_select.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=1024 --warmup-time=60 --report-interval=5 run

图片省略

清理数据

 ./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH  --dm-password=SYSBENCH --table_size=10000000 --auto-inc=0 --threads=128 --tables=12  cleanup
 

测试四

  • 插入数据

./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH  --dm-password=SYSBENCH --table_size=10000000 --auto-inc=0 --threads=128 --tables=12  prepare
 

oltp_read_only

./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=128 --warmup-time=60  --report-interval=5 run
./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=1024 --warmup-time=60 --report-interval=5 run

图片省略

oltp_point_select

./sysbench oltp_point_select.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=128 --warmup-time=60  --report-interval=5 run
./sysbench oltp_point_select.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=1024 --warmup-time=60 --report-interval=5 run

 

图片省略

清理数据

 ./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH  --dm-password=SYSBENCH --table_size=10000000 --auto-inc=0 --threads=128 --tables=12  cleanup
 

测试五

  • 插入数据

./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH  --dm-password=SYSBENCH --table_size=10000000 --auto-inc=0 --threads=128 --tables=12  prepare
 

oltp_read_only

./sysbench oltp_read_only.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=128 --warmup-time=60  --report-interval=5 run
./sysbench oltp_read_only.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=1024 --warmup-time=60 --report-interval=5 run

图片省略

oltp_rad_write

./sysbench oltp_point_select.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=128 --warmup-time=60  --report-interval=5 run
./sysbench oltp_point_select.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=1024 --warmup-time=60 --report-interval=5 run

图片省略

清理数据

 ./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH  --dm-password=SYSBENCH --table_size=10000000 --auto-inc=0 --threads=128 --tables=12  cleanup
 

测试六

  • 插入数据

./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH  --dm-password=SYSBENCH --table_size=10000000 --auto-inc=0 --threads=128 --tables=12  prepare
 

oltp_read_only

./sysbench oltp_read_only.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=128 --warmup-time=60  --report-interval=5 run
./sysbench oltp_read_only.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=1024 --warmup-time=60 --report-interval=5 run

 

图片省略

oltp_read_write

./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=128 --warmup-time=60  --report-interval=5 run
./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=1024 --warmup-time=60 --report-interval=5 run

图片省略

清理数据

 ./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH  --dm-password=SYSBENCH --table_size=10000000 --auto-inc=0 --threads=128 --tables=12  cleanup
 

测试七

  • 插入数据

./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH  --dm-password=SYSBENCH --table_size=10000000 --auto-inc=0 --threads=128 --tables=12  prepare
 

oltp_read_only

./sysbench oltp_read_only.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=128 --warmup-time=60  --report-interval=5 run
./sysbench oltp_read_only.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=1024 --warmup-time=60 --report-interval=5 run

oltp_read_write

./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=128 --warmup-time=60  --report-interval=5 run
./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=1024 --warmup-time=60 --report-interval=5 run

 

图片省略

oltp_point_select

 ./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH  --dm-password=SYSBENCH --table_size=10000000 --auto-inc=0 --threads=128 --tables=12  cleanup
 

测试八

  • 插入数据

./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH  --dm-password=SYSBENCH --table_size=10000000 --auto-inc=0 --threads=128 --tables=12  prepare
 

oltp_read_only

./sysbench oltp_read_only.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=128 --warmup-time=60  --report-interval=5 run
./sysbench oltp_read_only.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=1024 --warmup-time=60 --report-interval=5 run

图片省略

oltp_read_write

./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=128 --warmup-time=60  --report-interval=5 run
./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=1024 --warmup-time=60 --report-interval=5 run

oltp_point_select

./sysbench oltp_point_select.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=128 --warmup-time=60  --report-interval=5 run
./sysbench oltp_point_select.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=1024 --warmup-time=60 --report-interval=5 run

清理数据

 ./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH  --dm-password=SYSBENCH --table_size=10000000 --auto-inc=0 --threads=128 --tables=12  cleanup
 

测试九

  • 插入数据

./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH  --dm-password=SYSBENCH --table_size=10000000 --auto-inc=0 --threads=128 --tables=12  prepare
 

oltp_read_only

./sysbench oltp_read_only.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=128 --warmup-time=60  --report-interval=5 run
./sysbench oltp_read_only.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=1024 --warmup-time=60 --report-interval=5 run

oltp_read_write

./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=128 --warmup-time=60  --report-interval=5 run
./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=1024 --warmup-time=60 --report-interval=5 run

oltp_point_select

./sysbench oltp_point_select.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=128 --warmup-time=60  --report-interval=5 run
./sysbench oltp_point_select.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH --dm-password=SYSBENCH --table_size=10000000 --tables=12 --events=0 --time=60 --threads=1024 --warmup-time=60 --report-interval=5 run

清理数据

 ./sysbench oltp_read_write.lua --db-driver=dm --dm-db=9.1.80.45:5236 --dm-user=SYSBENCH  --dm-password=SYSBENCH --table_size=10000000 --auto-inc=0 --threads=128 --tables=12  cleanup

  1. 测试结论:

oltp_read_only

默认

测试一

测试二

测试三

关闭预取

测试四

测试五

测试六

测试七

整体优化

测试八

测试九

cpu/%

92

84

92

92

82

89

90

80

83

82

内存/G

106

106

111

103

89

99

125

132

107

92

负载

843

133

866

912

134

926

960

127

132

161

功耗/W

385

380

378

387

385

388

385

384

375

377

oltp_read_write

默认

测试一

测试二

测试三

关闭预取

测试四

测试五

测试六

测试七

整体优化

测试八

测试九

cpu/%

60

70

70

60

70

60

60

60

60

60

内存/G

115

113

119

120

97

109

125

135

112

102

负载

126

119

153

131

76

89

86

62

120

87

功耗/W

374

370

370

374

344

345

339

339

366

341

oltp_point_select

默认

测试一

测试二

测试三

关闭预取

测试四

测试五

测试六

测试七

整体优化

测试八

测试九

cpu/%

82

83

83

84

80

85

85

83

85

73

内存/G

104

98

110

102

82

98

124

124

100

84

负载

780

769

779

835

1010

772

124

791

837

1028

功耗/W

390

397

393

398

385

383

377

384

388

380

        测试过程中均未发现内存、硬盘、网络瓶颈,且CPU占用率基本对等,说明服务器发挥出正常性能,以下为各参数对性能影响。

  • 结论1:电源模式修改为性能,服务器负载与内存使用增加,性能未提升,使用默认节能模式即可。
  • 结论2:内存刷新频率修改为Auto,内存使用增加30%,性能降低,使用默认32ms即可。
  • 结论3:PCI-E带宽修改为512,性能提升5~10%,内存使用增加30%,内存充足的情况下可以优化此参数增加性能,否则默认即可。
  • 结论4:CPU预取关闭,点查场景CPU降低10%使用率,读写场景下功耗降低7~10%使用率,三种场景下内存均降低10~15%使用率,只读场景的提升很大并且稳定提升20%,但是读写混合场景性能不稳定+-15%,cpu利用率忽高忽低。因此,对于经常读写的系统,看情况修改此参数。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/149253.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

虚幻蓝图Ai随机点移动

主要函数: AI MoveTo 想要AI移动必须要有 导航网格体边界体积 (Nav Mesh Bounds Volume) , 放到地上放大 , 然后按P键 , 可以查看范围 然后创建一个character类 这样连上 AI就会随机运动了 为了AI移动更自然 , 取消使用控制器旋转Yaw 取消角色移动组件 的 使用控制器所需的…

关于Cursor使用的小白第一视角

最近看破局感觉洋哥总是提到cursor,感觉好火,所以打算学习一下怎么用Cursor,如果可以希望能做一个我自己的网站。 之前从来没用过Cursor。所以,这是一篇小白视角的Cursor使用教程。 如果你也是一个小白,并且对Cursor…

ArcGIS Desktop使用入门(三)图层右键工具——拓扑(上篇:地图拓扑)

系列文章目录 ArcGIS Desktop使用入门(一)软件初认识 ArcGIS Desktop使用入门(二)常用工具条——标准工具 ArcGIS Desktop使用入门(二)常用工具条——编辑器 ArcGIS Desktop使用入门(二&#x…

Maven配置及使用

1. Maven简介和安装 1.1. Maven是一个依赖管理工具 问题: jar包的规模 随着使用框架越来越多,或框架的封装程度越来越高,项目中使用的jar包也越来越多。项目中,一个模块里用到上百个jar包是非常正常的jar包的来源 jar包所属技术…

LeetCode 面试经典150题 201.数字范围按位与

题目&#xff1a;给你两个整数 left 和 right &#xff0c;表示区间 [left, right] &#xff0c;返回此区间内所有数字 按位与 的结果&#xff08;包含 left 、right 端点&#xff09;。 提示&#xff1a;0 < left < right < 2^31 - 1 思路&#xff1a; 位与的特性…

《一本书讲透Elasticsearch》读书笔记(二)

Elasticsearch集群部署 Elastic Stack集群部署基础知识 Elasticsearch、Logstash、Beats、Kibana全部都支持跨平台部署 集群部署平台及操作系统的选型 可供选择的部署平台包括实体服务器、虚拟机&#xff08;VMWare、OpenStack等&#xff09;​、容器化平台&#xff08;Doc…

链式队列操作

文章目录 &#x1f34a;自我介绍&#x1f34a;概述&#x1f34a;链式队列代码linkstack.clinkstack.hmain.c 你的点赞评论就是对博主最大的鼓励 当然喜欢的小伙伴可以&#xff1a;点赞关注评论收藏&#xff08;一键四连&#xff09;哦~ &#x1f34a;自我介绍 Hello,大家好&…

课程表-LeetCode100

现在你总共有 numCourses 门课需要选&#xff0c;记为 0 到 numCourses - 1。给你一个数组 prerequisites &#xff0c;其中 prerequisites[i] [ai, bi] &#xff0c;表示在选修课程 ai 前 必须 先选修 bi 。 例如&#xff0c;想要学习课程 0 &#xff0c;你需要先完成课程 1…

计算机前沿技术-人工智能算法-大语言模型-最新论文阅读-2024-09-23

计算机前沿技术-人工智能算法-大语言模型-最新论文阅读-2024-09-23 本期&#xff0c;我们对大语言模型在表情推荐, 软件安全和 自动化软件漏洞检测等方面如何应用&#xff0c;提供几篇最新的参考文章。 1 Semantics Preserving Emoji Recommendation with Large Language Mod…

机器学习中分类问题的各类评估指标总结

机器学习中分类问题的各类评估指标总结 在机器学习的世界里&#xff0c;分类问题占据了半壁江山。从垃圾邮件检测到疾病诊断&#xff0c;从用户行为分析到市场趋势预测&#xff0c;分类算法的应用无处不在。然而&#xff0c;如何评价一个分类模型的性能&#xff0c;却是一门大…

MovieLife 电影生活

MovieLife 电影生活 今天看到一个很有意思的项目&#xff1a;https://www.lampysecurity.com/post/the-infinite-audio-book “我有一个看似愚蠢的想法。通常&#xff0c;这类想法只是一闪而过&#xff0c;很少会付诸实践。但这次有所不同。假如你的生活是一部电影&#xff0c…

Stable Diffusion 使用详解(13)--- 3D纹理增强

目录 背景 Normal Map 描述 原理 使用心得 例子 描述 原图 参数设置 底模 ​编辑 正负相关性提示词 其他参数 controlnet 效果 还能做点啥 调整 效果 背景 实际上&#xff0c;在stable diffusion 中&#xff0c;你获取发现很多controlnet 其实功能有点类似&…

webview2加载本地页面

加载方式 通过导航到文件 URL 加载本地内容 使用方式&#xff1a; webView->Navigate( L"file:///C:/Users/username/Documents/GitHub/Demos/demo-to-do/index.html"); 但是这种方式存在一些问题&#xff0c;比如&#xff1a; 存在跨域问题&#xff08;我加载…

Java语言程序设计基础篇_编程练习题***18.33 (游戏:骑士旅途的动画)

目录 ***18.33 (游戏:骑士旅途的动画) 习题思路 代码示例 动画演示 ***18.33 (游戏:骑士旅途的动画) 为骑士旅途的问题编写一个程序&#xff0c;该程序应该允许用户将骑士放到任何一个起始正方形&#xff0c;并单击Solve按钮&#xff0c;用动画展示骑士沿着路径的移动&…

9.5HSV体系进行颜色分割

基本概念 inRange() 函数是 OpenCV 中用于图像处理的一个非常有用的函数&#xff0c;即从图像中提取出介于指定范围内的像素值。这个函数在图像处理中特别有用&#xff0c;比如颜色检测、背景去除等应用。它主要用于图像的阈值处理&#xff0c;但与其他阈值方法&#xff08;如…

前端——浮动+定位样式

一、浮动float——浮动是会使盒子脱离文档流 添加了浮动的元素 1.原本的位置不占用 脱离文档流 2.设置了浮动 就不支持auto自适应居中 3.文字会感受到浮动 跟着进行文字环绕效果 而不是浮动元素覆盖文字 文字和浮动处于同一层的关系 4.可以使行内元素支持 高…

苍穹外卖——day3

1.公共字段自动填充 我们在添加功能的时候常常要重复执行一些重复的操作 如下图 我们在执行update或者insert数据库操作的时候&#xff0c;总是要给下面的一些属性赋值 这样如果代码功能一多&#xff0c;这会显得代码很冗长 所以我们引入了公共字段自动填充这个功能的实现…

从入门到精通:SQL 100个关键技术关键词

无论你是刚刚接触数据库管理的新手&#xff0c;还是希望提升技能水平的数据分析师&#xff0c;掌握SQL都是至关重要的一步。SQL是一种强大的工具&#xff0c;用于管理和操作关系型数据库。从简单的数据检索到复杂的事务处理&#xff0c;SQL提供了广泛的功能来满足各种需求。为了…

软件设计师:01计算机组成与结构

文章目录 一、校验码1.奇偶校验码2.海明码3.循环冗余检验码 二、原码反码补码移码三、浮点数表示法1.浮点数相加时 四、寻址方式五、CPU1.访问速度2.cpu的组成 六、RISC和CISC&#xff08;<font color red>只用记住不同就可以&#xff09;七、冗余技术1.结构冗余2.信息冗…

unix中的vfork函数

一、前言 本文介绍unix中的vfork函数&#xff0c;vfork函数功能和fork函数类似&#xff0c;也是用于创建新的进程&#xff0c;只不过调用vfork函数创建的子进程将共享父进程的进程空间&#xff0c;且只有当子进程调用exec()或者exit()函数后&#xff0c;父进程才会继续运行。 …