ldrand
A basic linker wrapper that randomizes the link order. This can be used for compiling benchmarked programs to reduce the impact of specific link orders on the benchmarking results.
Not all linking orders might work, due to dependencies, therefore ldrand currently tries a new linking order until it succeeds (or the maximum number of tries is reached which is current set to 10 but can be configured via the environment variable LDRAND_TRIES).
Installation
pip3 install ldrand
Usage
Calling the ldrandp command returns the path of the bin folder that contains the script that masks the ld tool. Setting the wrapped linker explicitly is supported by setting the environment variable LDRAND_LINKER.
A typical usage would look like:
PATH="`ldrandp`:$PATH" make
# Or with an explicit linker
PATH="`ldrandp`:$PATH" LDRAND_LINKER="/usr/bin/custom_linker/ld" make
Contributing
Bug reports and Code contributions are highly appreciated.
Metadata
Release files for ldrand 0.42
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| ldrand-0.42.tar.gz | 3.3 kB | Details |
Release files / ldrand-0.42.tar.gz
| Download URL | ldrand-0.42.tar.gz |
|---|---|
| Size | 3.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c7b037d0b245daf7748afd48ec802fb2e42c04675a779d034ec5aeaace4ae4fa
|
|
BLAKE2b-256 checksum How to use checksums |
658302ad8159c2a8cffbfd9ca95e6c5af56b5746171cddbb855ccaa6dd9c8f2e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.7.3
|