bupticybee / TexasSolver

🚀 A very efficient Texas Holdem GTO solver :spades::hearts::clubs::diamonds:
https://bupticybee.github.io/texassolver_page
GNU Affero General Public License v3.0
1.73k stars 306 forks source link

Speed difference between window app and console app #170

Open hoangvh94 opened 1 year ago

hoangvh94 commented 1 year ago

A big difference about speed between the window app and console app

image

and consolve_solver.exe (left is wndow app, right is console app built) image

commandline_sample_input2.txt

bupticybee commented 1 year ago
截屏2023-06-12 10 32 43

截屏2023-06-12 10 32 52

I done some experiments, yes, it seems that in small tree settings, the two does run at a different speed. Since both binary is compiled by the same core code. I would guess it's the compiler that matters.

BTW, it's more common in my experiments if the tree are big enough, console version is faster.

hoangvh94 commented 1 year ago

why its (console_solver.exe) so different between Window app (3807 kb) and Console built (657 kb)

and when I copied and ran console_solver(3807) image instead of (657) one image

it's extremely fast image and the process log is a bit different in picture 1st comment above image

bupticybee commented 1 year ago

They are compiled under different environment, different compiler, and some different code. Size different and speed different are excepted.

bupticybee commented 1 year ago

If you are that into speed, I encourage you to build the binary youself to get best speed.

hoangvh94 commented 1 year ago

you are right, I tried some others environment and speed is different. So could you tell me which environment I should use for faster speed? require for RAM or CPU ....?

bupticybee commented 1 year ago

you are right, I tried some others environment and speed is different. So could you tell me which environment I should use for faster speed? require for RAM or CPU ....?

I really don't know about that, I think this kind of knowledge requires a lot of hardware and experiments, I don't have both.