Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Replication Package - Genetic Improvement of Data Gives Division free Division

This is the replication package for Genetic Improvement of Data gives Division free Division (author copy - GI_Data_Gives_Divsion_Free_Division.pdf).

The package contains the source code as described in section IV of the publication and aims to enable the reproduction of section IV b - Automatic changes to data table using CMA-ES and section IV c - Testing the evolved drcp function.

Content of the Repository

  • Publication.pdf author copy of the submission
  • gi_cbrt.tar.gz contains the source code the paper was written on, as described in Section IV Evolving DRCP From Free GNU PowerPC SQRT
  • dependencies contains libraries needed for replication
  • scripts contains various scripts that are supposed to make the replication easier for the user. If there are issues with them, please consult the README.txt in gi_cbrt.tar.gz, the scripts themselves (maybe you are missing packages on linux), or open an issue in
  • results contains logs of the executions the publication was based on


  • Linux OS - As this work depends on glibc.
  • Installation of the following linux packages (intentionally not provided as script, as it would have to be run with root privileges):
    • gunzip sudo apt-get install gzip
    • tar sudo apt-get install tar
    • csh sudo apt-get install csh
    • sed sudo apt-get install sed


Replicate using the following steps:

  • (optional) scripts you may need to make scripts executable with chmod +x *.sh
  • will unpack to an execution folder (warning execution folder WILL be deleted by unpack), and build glibc
  • runs the compilation, CMA-ES execution, and tests of the lookup table
    • replicate per default replicates divide you can also replicate other functions by adding an optional parameter
    • crbt replicates cube root
    • divide replicates division
    • invsqrt replicates root^-1, and also the quake invsqrt comparison
    • log2 replicates log2
  • will replicate everything and copy the results to different subfolders (results_function)
  • You'll know if the replication succeeded when the folder "replication_results" is created and contains:
    • the generated lookup table (t_cbrt.c)
    • the outputs of the test scripts (*.out)

Performance testing

Additional preconditions

  • Installation of the following linux packages (intentionally not provided as script, as it would have to be run with root privileges):
    • rcs sudo apt-get install rcs

Conducting performance test

Test (not replicate due to different hardware!) using the following steps:

  • executes the benchmark
  • You'll know if the benchmakr succeeded when the folder "performance_results" is created and contains:
    • The outputs of the tests (*.out)
    • benchmarking info of your pc (system_info.txt)

Cite this Package

Releases of this package are assigned a DOI by Zenodo: DOI


Replication Package for "Evolving sqrt into 1/x via Software Data Maintenance" GI@GECCO 2020






No packages published