-
Notifications
You must be signed in to change notification settings - Fork 12
A collection of scientific kernels using the numpy module for benchmarking purpose
License
serge-sans-paille/numpy-benchmarks
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
================ Numpy Benchmarks ================ A collection of scientific kernels that use the numpy package, for benchmarking purpose. Usage ===== First setup the benchmarking environment:: > pip install . > np-bench setup Then run the whole benchmark suite:: > np-bench run To run a specific set of benchmarks on a specific set of compilers, use the ad hoc arguments , as in:: > np-bench run -tnumba -tpythran benchmarks/harris.py benchmarks/evolve.py It is possible to post-process the raw output of ``np-bench run``, for instance to plot the result as ``png``:: > np-bench run -tpython -tpythran > run.log > np-bench format -tpng run.log Install ======= Through pip:: > pip install numpy_benchmarks Or locally:: > python setup.py install Usage ===== To list available benchmarks:: > np-bench list To run the whole benchmark suite and save the output:: > np-bench run -o run.log To post-process the output of ``np-bench run``, for instance to plot the result as ``png``:: > np-bench format -tpng run.log To compare multiple version of the same tool, the following can be handy:: > np-bench run -tpythran -o ref.log -p ref- > # change pythran version, branch, whatever > np-bench run -tpythran -o new.log -p new- > np-bench format ref.log new.log ======= > np-bench run -tpython ${prefix}/benchmarks/harris.py harris Python 5431 5454 14 What does it mean? ``python`` is used as single engine through ``-tpython``. The code from ``${prefix}/benchmarks/harris.py`` (where you can get the value of ``${prefix}`` from ``np-bench list``) was run through ``timeit`` using the ``#setup`` and ``#run`` code. It outputs (in that order and in nanoseconds): 1. the **best** execution time among all runs; 2. the **average** execution time of the runs; 3. the **standard deviation** of the runs.
About
A collection of scientific kernels using the numpy module for benchmarking purpose
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published