-
Notifications
You must be signed in to change notification settings - Fork 30
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Unexpectedly Poor Performance on AMD Ryzen 9 7950X? #61
Comments
Can you try latest version of python-xxhash and attach the resulsts? |
Good idea. Just retried it with xxhash version 3.2.0 for Python 3.8. Definitely an improvement, but I suppose still not as fast as most other Python functions: A 1.47x speedup is definitely better than the 1.08x I had before, but still lagging behind the average of the others I tested. Given the single-threaded Cinebench score of the 7950X is over double that of the 5960x, my expectation was closer to a 2x, which is what I got for a lot of other Python functions (as can be seen in my first post). I'm guessing there's something about the algorithm that is causing it to not scale as well on this processor, but I don't know what it would be. |
Thanks for the quick feedback, I'll try to find out why |
Haven't done any tests yet, a wild guess that it is hexdigest code Lines 268 to 276 in f8086d4
|
I benchmarked a variety of Python operations between an i7 5960x (released late 2014) and an AMD Ryzen 9 7950X (released late 2022). In general, the single threaded performance of the 7950X is typically much higher than the 5960X given the improvements that have been made during that timeframe. However, I noticed that xxhash doesn't see the same speedup. Here's a comparison of a variety of Python functions and the time they took to run on both machines (Python 3.8,
xxhash==1.4.3
):The 3rd and 4th column are the time in seconds for each machine to run each operation a given number of times, either measured with time.time() or time.perf_counter().
The code for measuring the performance of xxhash was as follows:
('2.jpg' is a 2.94 MB jpeg file, 3840x2160 resolution). I'm on Windows 10.
Any idea why the speedup isn't higher, as many of the other functions I tested were? On average I was getting at least a 2x speedup for most Python functions, but only got 1.08x for xxhash. It was the only one that performed so poorly.
The text was updated successfully, but these errors were encountered: