Python Forum
Hardware question re running Anaconda
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Hardware question re running Anaconda
#1
Hi everyone

I have written a computationally intensive program which I have optimised for speed by using Numpy. Still its a bit slow for my needs and I am looking at other ways of running it faster.

I am running the program written in Python 3 using Anaconda on Windows 10.

One obvious solution is to upgrade my hardware. Like everyone I wish to minimise the cost of doing so so I have a few questions regarding the best way to get my system running faster.

First though I am running a AMD Phenon II x4 840 quad core cpu on a M5A97 motherboard with 8Gb ram, Nvidia Geforce 720 video card and a 500Gb ssd. Yes its pretty old.

The first question concerns whether upgrading my graphics card would have any effect on performance? Does Anaconda make use of the graphics card's capabilities when crunching numbers in Numpy?

Or would an upgraded motherboard and/or cpu be the best way to go?

What would be the most cost-effective way to improve my hardware to run python with Anaconda under Windows 10 faster?

Thanks Peter
Reply
#2
No first hand experience, but look at CuPy https://cupy.chainer.org/
It's available in Anaconda https://anaconda.org/anaconda/cupy
If you can't explain it to a six year old, you don't understand it yourself, Albert Einstein
How to Ask Questions The Smart Way: link and another link
Create MCV example
Debug small programs

Reply
#3
Thanks

I will try Cupy. Is it going to run faster with an older graphics card like my Nvidia Geforce 720?

cheers Peter
Reply
#4
(Jan-23-2020, 04:24 AM)pberrett Wrote: Is it going to run faster with an older graphics card like my Nvidia Geforce 720
I don't know if it will run faster (or how much faster), but both Nvidia Geforce 720 and Nvidia Geforce 720M cards are listed as CUDA-enabled:
https://developer.nvidia.com/cuda-gpus
So it's worth a try
If you can't explain it to a six year old, you don't understand it yourself, Albert Einstein
How to Ask Questions The Smart Way: link and another link
Create MCV example
Debug small programs

Reply
#5
Thanks

I will give it a try.

cheers Peter
Reply
#6
It will be nice if you post a feedback on using CuPy and what the performance effects were
If you can't explain it to a six year old, you don't understand it yourself, Albert Einstein
How to Ask Questions The Smart Way: link and another link
Create MCV example
Debug small programs

Reply
#7
cpython compiles python 2.7 to super fast C code. then that compiles with gcc down to your architecture machine code. I think you can use the old numpy made for python 2.7 with cpython.

one thing I learned about numpy and python 3 is that you only get bad performance when you pick the wrong data types. fixed point decimal was slow but unsigned integers of a fixed size are fast. python resizes memory for integers at run time so it is even slow with integers by default. setting the memory size before run time is something that is always done in C. this is why when you do it in python you can get close to the performance in C. at some point you will need to just drop python completely and move to openMP + C or fortran. if you have a GPU workload it will be the cuda dev kit and C compiled in gcc. how hard do you want to work for that extra performance?
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  Newbie question about running Python via GUI on OSX ejwjohn 8 3,446 Feb-05-2021, 03:20 PM
Last Post: Larz60+
  Question re: running code in Editor (i.e. Atom) vs Python interpreter rok 3 2,375 Jun-29-2020, 09:20 PM
Last Post: bowlofred
  Running script from Anaconda prompt acollins555 0 2,554 Jun-15-2020, 03:40 AM
Last Post: acollins555
  How to check hardware type? MuntyScruntfundle 4 2,971 Feb-16-2019, 12:23 PM
Last Post: snippsat
  How to talk with Real Time Clock hardware? jackbk 12 11,134 Feb-15-2017, 05:53 AM
Last Post: jackbk

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020