From 375be0f26f085583ebe8eeffe55514e33679900e Mon Sep 17 00:00:00 2001 From: Khushi Agrawal <62256509+khushi-411@users.noreply.github.com> Date: Sat, 31 Jul 2021 01:40:27 +0530 Subject: [PATCH 1/2] Create benchmark.md --- content/en/benchmark.md | 128 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 128 insertions(+) create mode 100644 content/en/benchmark.md diff --git a/content/en/benchmark.md b/content/en/benchmark.md new file mode 100644 index 0000000000..95cca281d5 --- /dev/null +++ b/content/en/benchmark.md @@ -0,0 +1,128 @@ +# NumPy Benchmarking + + +![output-modify-2-new](https://user-images.githubusercontent.com/62256509/127653679-5151e22d-d141-4621-abb9-b3e6dd7988b7.jpg) + + +## Implemented Algorithms + +Till this point 5 algorithms are implemented as mentioned bellow: + +### NumPy + +NumPy is a most fundamental package for scientific computing in Python. The major advantage of using NumPy is these gives same computational speed as C and Fortran. Let's see our inplementation details: + +#### NumPy Python + +Here, we used optimised code which consists of both type of implementation i.e. via Python and NumPy. This algorithm took 10.15 seconds for datasets with 16 points, 45.2 seconds for datasets with 32 points and 161.01 seconds for datasets with 64 points. + +#### Pure NumPy + +This algorithm is purely implemented via NumPy library functions. It takes 10.56 seconds to run a program with datasets of 16 points, 41.59 seconds for datasets with 32 points and 169.4 seconds for datasets with 64 points. + +### Transonic + +Transonic is a pure python package. It is one of the actively growing libraries which is used to increase the speed of our codes. Here, we are operating with two kinds of accelerators in the backend jit and boost to accelerate our code. Transonic uses four different types of accelerators in the backend Pythran, Cython, Numba, and Python. Presently, we have implemented Jit and boost accelerators, in the next iteration, we will be using Cython, with different types of backends. + +#### Transonic - JIT + +We used Transonic jit to accelerate our code. To implement this we used Pythran (Ahead-Of-Time) compiler in Just-In-Time mode. This algorithm took 0.01 seconds for input datasets with 16 points, 0.05 seconds for input datasets with 32 points and 0.17 seconds for input datasets with 64 points. + +#### Transonic - Boost: Pythran + +Pythran is an Ahead Of Time compiler. This module takes a Python file as an input then converts it into some kind of interface which makes the code faster. Transonic's boost decorator replaces the python function with the pythranized function. This algorithm took 10.37 seconds for input data of 16 points, 41.88 seconds for input data with 32 points and 160.15 seconds for input data with 64 points. + +### Numba + +Numba converts the Python files to optimized machine code during runtime. The major advantage is after compiling codes using Numba, the speed of code becomes approachable to C or FORTRAN. Numba caches all the compiled functions into a file system for future use of the same functions. We used the jit decorated functions to call another jit decorated function while implementing our code. It is advisable to add the jit decorated function to other functions too, so as to prevent it from generating slower outputs. This algorithm took 0.89 seconds for input data with 16 points, 0.05 seconds for input data with 32 points and 0.17 seconds for input data with 64 points. + +## Results + +Table values represent the time taken by each algorithm to run, in respected datasets for 5 iterations. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Input 16Input 32Input 64
Pythran10.3741.88160.15
Numba0.890.05o.17
Pythran Naive0.010.050.17
NumPy10.1545.2161.01
Pure NumPy10.5641.59169.4
+ + +## Code Folders + +* These codes are originally taken from [here](https://github.com/paugier/nbabel) +* Benchmark code: [here](https://github.com/khushi-411/numpy-benchmarks/blob/0.3/python/benchmark-2.py) +* Graph: [here](https://github.com/khushi-411/numpy-benchmarks/blob/0.3/python/plot-modified-1.py) + + + + + + + + + + + + + + + + + + + + + + + + + + + +
AlgorithmsSource Codes
Pythran bench.py
Numba bench_numba.py
Pythran Naivebench_numpy_highlevel_jit.py
NumPybench_numpy_highlevel.py
Pure NumPybench_pure_numpy_highlevel.py
+ + + +## Conclusion + +* These benchmarks are run with an Intel Core i7 processor. +* We found that codes that use Numba and Pythran Naive as accelerators give the best results among all. + +## Acknowledgement + +I would like to thank [Matti Picus](https://github.com/mattip) for helping me and guiding me throughout these days. Thank you so much! + From d23fd31e24bc581dbf25e643d423da9c0f164306 Mon Sep 17 00:00:00 2001 From: Khushi Agrawal <62256509+khushi-411@users.noreply.github.com> Date: Wed, 4 Aug 2021 08:28:25 +0530 Subject: [PATCH 2/2] Add files via upload --- .../content_images/output-modify-2b-new.jpg | Bin 0 -> 103997 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 static/images/content_images/output-modify-2b-new.jpg diff --git a/static/images/content_images/output-modify-2b-new.jpg b/static/images/content_images/output-modify-2b-new.jpg new file mode 100644 index 0000000000000000000000000000000000000000..6def45564a349261ceb8d026c2d318654b826a87 GIT binary patch literal 103997 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 EHzO_b%>V!Z literal 0 HcmV?d00001