Skip to main content

A C++ fast XOR implementation strongly inspired by eryksun's StackOverflow post (http://stackoverflow.com/users/205580/eryksun)

Project description

https://secure.travis-ci.org/davidfischer-ch/python-fastxor.png

Afraid of red status ? Please click on the link, sometimes this is not my fault ;-)

A C++ fast XOR implementation strongly inspired by eryksun’s stackoverflow post.

Here are the results on my workplace desktop computer (Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz):

Method Name

Time

Speep-up

xor_inplace_loop

0.444

1.000

xor_list_comprehension

0.237

1.877

numpy.bitwise_xor

0.00175

252.986

fastxor.fast_xor_inplace

0.00125

356.339

What the release number stands for ?

I do my best to follow this interesting recommendation : Semantic Versioning 2.0.0

How to install it (Python 2.7) ?

Install some packages that are not handled by pip:

sudo apt-get install gfortran python-dev python-pip

Make sure that pip is up-to-date (PIPception):

sudo pip-2.7 install --upgrade pip

Then, you only need to run setup.py:

python2 setup.py test
sudo python2 setup.py install

How to install it (Python 3.3) ?

Install some packages that are not handled by pip:

sudo apt-get install gfortran python3-dev python3-pip

Make sure that pip is up-to-date (PIPception):

sudo pip-3.3 install --upgrade pip

Then, you only need to run setup.py:

python3 setup.py test
sudo python3 setup.py install

Sometimes numpy setup fails, just run sudo pip-3.3 install numpy to solve this.

How to check coverage ?

python setup.py test
xdg-open tests/cover/index.html

How to use it ?

This extension module gives you access to fast_xor_inplace and fast_xor (… TODO).

2013 - David Fischer

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fastxor-0.1.6.tar.gz (3.8 kB view details)

Uploaded Source

File details

Details for the file fastxor-0.1.6.tar.gz.

File metadata

  • Download URL: fastxor-0.1.6.tar.gz
  • Upload date:
  • Size: 3.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for fastxor-0.1.6.tar.gz
Algorithm Hash digest
SHA256 3f04d3ea3a2343fda6f210b25f86c47385ab83b7fcb79cd1459fdf9ca6aae27f
MD5 e99131f19f6cba8b53a7f4045a52f19b
BLAKE2b-256 e18f900e8d2a07b0b3db6f7e3201dd0e440138a8dc64278ca5b2eefd154fece8

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page