A colleage has asked you for help. They have been given a task of developing a calculator program in Python that will be used for a
numerically intensive task. It’s important that it works as fast as possible, or the project results may be delayed. Your colleage
has a pretty good understanding of Python, and so developed the program using NumPy to help improve the performance. Unfortunately
it is not working well enough for the project, and they have run out of ideas on how to make it better. You offer to help, since you
recently found out about the cProfile
and line_profiler
tools.
Download the source code and tests for the program.
Use cPython
and line_profiler
to determine where the code is performing poorly and why. Make changes to the code to improve the performance
and add a comment to the top of the cacluator.py
file to indicate the speedup you achieve. Commit the resulting program to the repository you
created in Assignment 3. Keep the same name for the program, and only calculator.py
needs to be committed.