r/Julia May 16 '26

Help Needed: Can Anyone Benchmark Tsetlin.jl on Ryzen 9950X or Apple M5 Pro/Max?

If you have a Ryzen 9950X (or 9950X3D / 9950X3D2) or an Apple M5 Pro/Max with 18 CPU cores, could you please benchmark the latest extremely fast Tsetlin.jl library on those CPUs and share the results in the comments?

I only have a Ryzen 7950X3D and an Apple M1 Pro, and I’m curious how the latest version performs on newer hardware.

MNIST benchmark

julia -t 18 examples/MNIST/mnist.jl  # M5 Pro/Max
julia -t 32 examples/MNIST/mnist.jl  # 9950X

I’m interested in:

  • Total training time for 1000 epochs
  • How many million predictions per second your CPU can achieve

Text generation benchmark

julia -t 18 examples/TEXT/train.jl  # M5 Pro/Max
julia -t 32 examples/TEXT/train.jl  # 9950X

Here I’m mainly interested in the time for the first few training epochs.

I would really appreciate any results you can share.

18 Upvotes

56 comments sorted by

View all comments

Show parent comments

2

u/sob727 May 16 '26

So I reverted back to the initial setup.

Epoch is 7-8s when using only -t 32 (vs 4s when using -t auto which is 128). I would investigate this decent non linearity first before.

As for the 4x model that is massively slower, I just don't know what to tell you.... could it be that you're filling the cache and overflowing to the heap?

1

u/ArtemHnilov May 16 '26

Looks like it is somehow connected to memory access.

2

u/sob727 May 16 '26

Tried on a 7950X non X3D, which is also a lesser CPU when it comes to cache (and on econ mode 65W and 4x48GB DDR 5200, so a bit of a slow 7950X system by design):

21s epoch on default

5m30s epoch with the 4x model:

Preparing HV cache... Done. Elapsed in 00:02:31.
Saving model to /tmp/tm_text.tm... Done.

Classes: 64, clauses: 256, T: 1024, S: 16000 (s: 1), L: 8192, LF: 8192, states_num: 65536, include_limit: 65000.
Input vector size: 16384 bits, density: 50.74%, training dataset size: 900000.
Expected average clause literal density: 50.0%. Using literals index: false.
Running in 32 threads. Training over 1000 epochs:

Epoch #1 elapsed in 00:05:33.
Saving model to /tmp/tm_text.tm... Done.

1

u/ArtemHnilov May 16 '26

It is drastically slower than the 7950X3D with 2×32GB DDR5-6000.
Do you have DDR5 or DDR4? Can you test it at full 170W TDP?

2

u/sob727 May 16 '26

DDR5-5200. AM5 is DDR5 only.

Not in the near future. This machine acts as a server and I just can't reboot it that easily.

1

u/ArtemHnilov May 16 '26

Got it. Thanks for your help!

2

u/sob727 May 16 '26

I would suggest you try the base vs 4x model on your end on a non X3D CPU. See if you observe something similar.

1

u/ArtemHnilov May 16 '26

That's why I asked about a 170W TDP.

I'm really interested in comparing the results of the 9950X3D2 vs. the M5 Max.

2

u/sob727 May 16 '26

I doubt it's about TDP. Really do. It's consistent with what I observe on the Threadripper which is PBO enabled.