lonlat_bng 0.8.1

Convert longitude and latitude coordinates to BNG coordinates, and vice versa
Documentation
#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
Standalone benchmark runner
"""

import cProfile
import pstats
import profile
import numpy as np

print("Running Rust (Ctypes + Cython) and Pyproj benchmarks, 1mm conversions x 50 runs\n")

# calibrate
pr = profile.Profile()
calibration = np.mean([pr.calibrate(100000) for x in xrange(5)])
# add the bias
profile.Profile.bias = calibration

cProfile.run(open('benches/cprofile_rust.py', 'rb'), 'benches/output_stats_rust')
rust = pstats.Stats('benches/output_stats_rust')

cProfile.run(open('benches/cprofile_rust_cython.py', 'rb'), 'benches/output_stats_rust_cython')
rust_cython = pstats.Stats('benches/output_stats_rust_cython')

cProfile.run(open('benches/cprofile_pyproj.py', 'rb'), 'benches/output_stats_pyproj')
pyproj_ = pstats.Stats('benches/output_stats_pyproj')

print("Rust Benchmark\n")
rust.sort_stats('cumulative').print_stats(5)
print("Rust Cython Benchmark\n")
rust_cython.sort_stats('cumulative').print_stats(5)
print("Pyproj Benchmark\n")
pyproj_.sort_stats('cumulative').print_stats(5)