#MiniMax on GPU
48 messages · Page 1 of 1 (latest)
⌛ This post has been reserved for your question.
Hey @unborn hazel! Please use
/closeor theClose Postbutton above when you're finished. Please remember to follow the help guidelines. This post will be automatically closed after 300 minutes of inactivity.
TIP: Narrow down your issue to simple and precise questions to maximize the chance that others will reply in here.
Why do you think GPUs would be useful for Minimax?
Parallel computing
A CPU only has like 4-8 cores
A GPU has hundreds-thousands
GPUs aren't just faster
they are faster at specific things
They do have more cores though
like they cannot do everything a CPU can
Allowing you to split the workload
yes but those are specialized
not every type of workload
Monte Carlo Tree search is an entirely different topic and depending on what you are doing with Monte Carlo Tree search, you can use GPU in order to improve it
depending on what tree policy and default policy you are using
Hmm?
that's for Monte Carlo Tree Search
but there does seem to be research on parallelizing Minimax using GPUs
But I'm using MiniMax
but it isn't a thing of running it on a GPU and it would be faster
For example, I found this: http://olab.is.s.u-tokyo.ac.jp/~kamil.rocki/rocki_ppam09.pdf
according to that, the results seem to vary between an 1.4x and 30x speed-up
According to my teammate it's 60x 🤡
DId they try it themselves?
No
well, that's the issue
and it strongly depends on what's actually done with Minimax (I guess)
e.g. how the score is calculated
To be clear: A single GPU core is feature-wise an absolute weakling compared to a CPU core. That is why only a subset of workloads which run on CPU are at all able to run on GPU - before you even start considering whether it will be faster.
Well, we are trying to figure out if it's faster or not
But to do that, we have to implement it
A good first step is to figure out whether it is at all possible to run there. You can do that by breaking down the operations required by the process and seeing if those are even supported.
No coding required - just grab a note book / app.
Oh so you've completed the analysis already?
No
Ok
But like, I can't find a single thing about how to effectively split up the workload
This site contains Java bindings for OpenCL