TexasSolver icon indicating copy to clipboard operation
TexasSolver copied to clipboard

Linux多线程存在性能问题

Open Chen-Carl opened this issue 7 months ago • 1 comments

Ubuntu 22.04 配置

CPU(s): 96 On-line CPU(s) list: 0-95 Vendor ID: GenuineIntel Model name: Intel(R) Xeon(R) Gold 6248R CPU @ 3.00GHz CPU family: 6 Model: 85 Thread(s) per core: 2 Core(s) per socket: 24 Socket(s): 2 Stepping: 7 CPU max MHz: 4000.0000 CPU min MHz: 1200.0000 BogoMIPS: 6000.00

Windows 配置

Intel(R) Core(TM) i7-8750H CPU @2.20GHz

配置文件

Linux 使用 32 线程,Windows 使用 12 线程

set_pot 10
set_effective_stack 200
set_board 9d,4d,5s
set_range_oop ATs:0.004,A9s:0.874,A8s:0.744,A7s:0.88,A6s:1.0,A4s:0.184,A3s:0.364,A2s:0.812,KTs:0.112,K9s:0.546,K8s:0.798,K7s:0.65,K6s:0.488,K5s:0.888,K4s:0.932,K3s:1.0,K2s:1.0,AQo:0.042,KQo:0.662,QJs:0.134,QTs:0.378,Q9s:0.906,Q8s:1.0,Q7s:1.0,Q6s:1.0,Q5s:1.0,Q4s:1.0,Q3s:1.0,Q2s:1.0,AJo:0.622,KJo:0.87,QJo:1.0,JTs:0.102,J9s:0.436,J8s:1.0,J7s:1.0,J6s:0.898,J5s:0.88,J4s:0.784,J3s:0.756,J2s:0.884,ATo:1.0,KTo:1.0,QTo:1.0,JTo:1.0,T9s:0.12,T8s:0.732,T7s:1.0,T6s:0.796,T5s:0.552,T4s:0.568,T3s:0.532,T2s:0.644,A9o:0.996,K9o:0.75,Q9o:0.696,J9o:0.698,T9o:0.808,99:0.16,98s:0.132,97s:0.772,96s:1.0,95s:0.978,94s:0.718,93s:0.736,A8o:0.89,K8o:0.626,Q8o:0.466,J8o:0.404,T8o:0.618,98o:0.914,88:0.426,87s:0.076,86s:1.0,85s:1.0,84s:1.0,A7o:0.632,K7o:0.636,T7o:0.122,97o:0.402,87o:1.0,77:0.662,76s:0.14,75s:1.0,74s:1.0,73s:1.0,A6o:0.564,K6o:0.642,86o:0.116,76o:0.768,66:0.732,65s:0.222,64s:1.0,63s:1.0,62s:0.33,A5o:0.816,K5o:0.296,65o:0.606,55:0.884,54s:0.11,53s:1.0,52s:1.0,A4o:0.778,54o:0.562,44:1.0,43s:1.0,42s:1.0,A3o:0.666,33:1.0,32s:1.0,A2o:0.616,22:1.0
set_range_ip AA:1.0,AKs:1.0,AQs:1.0,AJs:1.0,ATs:1.0,A9s:1.0,A8s:1.0,A7s:1.0,A6s:1.0,A5s:1.0,A4s:1.0,A3s:1.0,A2s:1.0,AKo:1.0,KK:1.0,KQs:1.0,KJs:1.0,KTs:1.0,K9s:1.0,K8s:1.0,K7s:1.0,K6s:1.0,K5s:1.0,K4s:1.0,K3s:1.0,K2s:1.0,AQo:1.0,KQo:1.0,QQ:1.0,QJs:1.0,QTs:1.0,Q9s:1.0,Q8s:1.0,Q7s:1.0,Q6s:1.0,Q5s:1.0,Q4s:1.0,Q3s:1.0,Q2s:0.812,AJo:1.0,KJo:1.0,QJo:1.0,JJ:1.0,JTs:1.0,J9s:1.0,J8s:1.0,J7s:1.0,J6s:1.0,J5s:1.0,J4s:0.84,ATo:1.0,KTo:1.0,QTo:1.0,JTo:1.0,TT:1.0,T9s:1.0,T8s:1.0,T7s:1.0,T6s:1.0,A9o:1.0,K9o:1.0,Q9o:1.0,J9o:1.0,T9o:1.0,99:1.0,98s:1.0,97s:1.0,96s:1.0,A8o:1.0,K8o:1.0,J8o:0.144,T8o:0.558,98o:0.636,88:1.0,87s:1.0,86s:1.0,85s:1.0,A7o:1.0,87o:0.204,77:1.0,76s:1.0,75s:1.0,74s:0.028,A6o:1.0,66:1.0,65s:1.0,64s:1.0,A5o:1.0,55:1.0,54s:1.0,53s:0.098,A4o:0.896,44:1.0,33:1.0,22:1.0
set_bet_sizes oop,flop,bet,25
set_bet_sizes oop,flop,raise,0
set_bet_sizes oop,flop,allin
set_bet_sizes ip,flop,bet,32,76
set_bet_sizes ip,flop,raise,80
set_bet_sizes ip,flop,allin
set_bet_sizes oop,turn,bet,32,68,130
set_bet_sizes oop,turn,raise,60
set_bet_sizes oop,turn,donk,0
set_bet_sizes oop,turn,allin
set_bet_sizes ip,turn,bet,33,67,130
set_bet_sizes ip,turn,raise,86
set_bet_sizes ip,turn,allin
set_bet_sizes oop,river,bet,33,67,130
set_bet_sizes oop,river,raise,110
set_bet_sizes oop,river,allin
set_bet_sizes ip,river,bet,50
set_bet_sizes ip,river,raise,87
set_bet_sizes oop,river,donk,0
set_bet_sizes ip,river,allin
set_allin_threshold 0.67
set_raise_limit 1
build_tree
set_thread_num 32
set_accuracy 0.5
set_max_iteration 100
set_print_interval 10
set_use_isomorphism 1
start_solve
set_dump_rounds 3
dump_result output_result.json

执行结果

Linux 环境下: {"exploitibility":67.66381072998047,"iteration":10,"time_ms":217517} {"exploitibility":37.18810272216797,"iteration":20,"time_ms":431736} {"exploitibility":21.474323272705078,"iteration":30,"time_ms":646002} {"exploitibility":14.069284439086914,"iteration":40,"time_ms":861315}

Windows 环境下:

迭代轮数: 81 玩家 0 剥削度 0.624498
玩家 1 剥削度 -0.34305
总体剥削度:百分之 1.40724 (底池) 耗时: 640.56 秒.

迭代轮数: 91 玩家 0 剥削度 0.583967
玩家 1 剥削度 -0.376625
总体剥削度:百分之 1.03671 (底池) 耗时: 740.64 秒.

在 CPU 更强,线程数更多的 Linux 服务器上,速度反而慢了 1 倍以上。

补充 Linux 12 线程的结果:

{"exploitibility":67.66381072998047,"iteration":10,"time_ms":312295}

Chen-Carl avatar May 29 '25 08:05 Chen-Carl

同样遇到这个问题,up主有什么办法嘛

wt616 avatar Oct 09 '25 14:10 wt616