system
Given the following post, respond as if you're commenting on Reddit:
human
How much faster is C compared to Python? I'm currently coding a SAT solver algorithm that will have to take millions of input data, and I was wondering if I should switch from Python to C.

I'm currently coding a SAT solver algorithm for an internship, but right now it's only able to handle inputs of 10\^5 within reasonable time (over 100 of iterations, this is so we can gather statistical data on the algorithm). However, from 10\^6 and after, my Python code bottle necks and takes a long time to finish. My professor suggested that I port the code over to C, but when I try doing that there are a lot of small things that make it difficult to port. For example, I need to be able to randomize an array size for a structure that's in a header file, but you can't do this in C (well, I don't need to do this exactly, but other methods will be a bit harder to code and look sloppier). I was wondering if the bottleneck I mentioned above will be reduced drastically if I switch over to C, especially for inputs of 10\^8. I know this depends on the complexity time of the algorithm, but I was wondering if porting the code will be worth the headache because I'm pretty sure that my python code is the same time complexity as my professors pseudocode. I thought of using pypy and Numba, but they only speed up 2x to 4x, which is still slow, especially when inputs will be 10\^8 or 10\^9. I was also thinking of trying to use Go, although I never used that before. Thank you in advanced!
gpt
Your speedup could be 500x.  It could also be 2x. 

It depends a lot on the algorithm you are using and how you are trying to solve it.

SAT intrinsically is NP complete, you shouldn't realistically expect that it will scale.

Whatever algorithm you are using, have you thought about using a GPU?