Jump to content
Sign in to follow this  
SCS

Ryzen 9 5900X vs 5950X

Recommended Posts

Hello New to the forum!

I've built computers for a long time but since my college days I've only had a laptop. I started a small business and need a computer for a sole purpose.

I will be running multiple threaded python scripts which use a selenium web driver to launch roughly 30-60 Chrome profiles at once and complete a few web based tasks. It uses screen scrapped info to process some things.

It will launch 30-60 independent sessions of the website concurrently and load through 4-5 web pages. From start to finish it takes about 1 min 30 seconds to complete each session. Once the 30-60 sessions are complete it would close the windows (profiles) and launch another 30-60 until it works its way through a configuration file.

My max budget is about $6000 on this computer but i've read that AMD has a serious advantage over intel now. I realize that these new Ryzen chips are hard to come by and I will likely need to purchase one off ebay at a considerable markup. Don't love the idea but this computer is critical to my business.

 

Is the 5950X worth getting over the 5900X for my purpose ? Any other thoughts and suggestions would be great. I plan on buying other high end components for the computer as well, but to get an idea of what I need to pick out. I need to start with a processor

 

The computer will need to run 24/7 or close too, but will be idle during alot of that time. I spend a lot of time traveling for my day job so I need to be able to remote into the computer at my house.

 

This is a friends setup. He is launching 20 profiles at once with a Ryzen 9 3900X, 64 GB Ram and a 1 TB SSD.

First picture is at idle and second is at load ( 20 profiles)

 

 

Thanks!

ad4e69fb-6eaa-4b80-a715-5056ecbbbd35.JPG

eb2d24f2-1f1d-404b-bcf5-7c7e0b39e33a.JPG

Edited by SCS

Share this post


Link to post
Share on other sites

First question is how much up-time are you looking for?

Honestly this sounds like you launched your own bot scalping system using phython scripting which is completely out side my realm of knowledge.  Maybe someone else has a better understanding of what loads this will put on the CPU.

Share this post


Link to post
Share on other sites

Welcome to OCC.

I would recommend going with the 16-core 5950X and use parallel programming for the increased throughput. 

Python is slow. To increase the speed of processing in Python, code can be made to run on multiple processes. This parallelization allows for the distribution of work across all the available CPU cores. The GIL or Global Interpreter Lock in the Python interpreter is used by the core bytecode evaluation loop in CPython to set which thread is currently executing the statements, thus preventing two threads from simultaneously executing in the same program or sharing the same resources. So to deal with Python's GIL problem you want to use a multi-processing approach where you use multiple processes instead of threads. Each Python process gets it's own interpreter and memory space so that GIL won't be a problem. 

Good luck.

Edited by Braegnok

Share this post


Link to post
Share on other sites
21 hours ago, Braegnok said:

Welcome to OCC.

I would recommend going with the 16-core 5950X and use parallel programming for the increased throughput. 

Python is slow. To increase the speed of processing in Python, code can be made to run on multiple processes. This parallelization allows for the distribution of work across all the available CPU cores. The GIL or Global Interpreter Lock in the Python interpreter is used by the core bytecode evaluation loop in CPython to set which thread is currently executing the statements, thus preventing two threads from simultaneously executing in the same program or sharing the same resources. So to deal with Python's GIL problem you want to use a multi-processing approach where you use multiple processes instead of threads. Each Python process gets it's own interpreter and memory space so that GIL won't be a problem. 

Good luck.

Thanks for the insight. To make sure I fully understand, if I run threads even though I set it to say 4 threads at once. It doesn't really do 4 at once. they run in a round robin type scheduling where it runs each thread one after each other.

 

I did some research on multiple processes. it seems that the best practice is to run one processes per cpu core. So If I got the 16 core CPU then I could in theory run 16 processes. So that would be 16 web sessions at once in best practice or could I still thread each process so that 2 windows appeared for each process thus running 32 sessions at once ?

Share this post


Link to post
Share on other sites

Correct when running threads the processes will only run one after another.

However using multiprocessing the processes run independently, simultaneously on different CPUs, and you could run 16 web sessions at once, and or 32 sessions simultaneously.

Also with multiprocessing to reduce computation time try using Process class and Pool class. I prefer Process class as it stores the processes in memory and allocates the job to the available processors using a FIFO scheduling. When the process is ended, it pre-empts and plans the new process for execution.

Some expanded examples on Process class, and start methods https://docs.python.org/3/library/multiprocessing.html

 

Edited by Braegnok

Share this post


Link to post
Share on other sites

Would another CPU be better than the AMD Ryzen. I see that intel has some expensive Xeon's that have more cores than the Ryzen

Share this post


Link to post
Share on other sites

I think you will be fine with the 5950X 16-core chip, keep it running at 100% usage with 64GB memory.

Intel system would be EVGA SR-3 DARK 160-CX-W999-KR motherboard, and Intel Xeon W-3175X Processor, 96GB memory. Which would set you back about 5K. :cheers:

Share this post


Link to post
Share on other sites

 I would still recommend going with AMD system, stick with the 5950X for the type work OP is running. 

The Threadrippers and Xeon systems are a lot of money to build and difficult to cool when running at full load,.. they would be better suited for Rendering/Editing work.    

Personally for running Python, I use a MacBook Pro with i9-9980HK processor, 32GB 2666MHz DDR4 memory, and 2TB SSD, depending on which graphics option you chose will set you back $3,700 to $4,500. The newer 2019 - 2020 MacBook Pro with 8-core chip is more than enough processing power for running Python.

Edited by Braegnok

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×
×
  • Create New...