Skip to content

dew-uff/memoization

Repository files navigation

memoization

This repository contains all the resources needed to reproduce the experimental analyses performed in the article.

Folder Structure

The repository is organized into the following directories:

  • data_loading/

    • Contains all resources for the experimental analysis of the data loading component.
  • main_memory_data_structures/

    • Contains all resources for the experimental analysis of the main memory data structure component.
  • real_script_trials_profiling/

    • Contains all resources for profiling real-world experiment trials.
  • storage/

    • Contains all resources for the experimental analysis of the storage component.

External Repositories

The cache memoization tool used in the experimental analysis is available at SpeeduPy. For profiling the scripts we used the SpeeduPy version 1.0.1-profiling, while for time measure we used version 1.0.1-time-measure.

The real-world scripts referenced in the article can be found in the following repositories:

Experiment Folder Mapping

The following table maps the real-world scripts to their corresponding experiment folders:

Experiment Name Folder Path
Test Laplace Jacobi SPEEDUPY_EXPS_REPO/04benchproglangs/04benchpl_exp09_iterative_solver_jacobi_OK/
Tiny GSGP TINY_GSGP_REPO/adapted_for_speedupy/
Count Unique Words SPEEDUPY_EXPS_REPO/04benchproglangs/04benchpl_exp03_count_unique_words_OK/
Sphere Potentials DNACC_REPO/adapted_for_speedupy/examples/sphere_potentials/
ssDNA Tethers DNACC_REPO/adapted_for_speedupy/examples/ssDNA_tethers/
Heap Permutation SPEEDUPY_EXPS_REPO/01pilots/01pilots_exp05_heap_permutation/
Metropolis Hastings SPEEDUPY_EXPS_REPO/04benchproglangs/04benchpl_exp07_metropolis_hastings/
Menger Sponge MENGER_SPONGE_REPO/
Eq Solver SPEEDUPY_EXPS_REPO/05msrgithubexps/05msrgithubexps_exp03_eq_solver/
Power SPEEDUPY_EXPS_REPO/01pilots/01pilots_exp02_power/

Reproducibility

Installing Real-world Experiments

To perform any of the real script analyses presented in the article, you must install the real-world experiments. Visit each repository listed in the Experiment Folder Mapping section and follow the setup instructions provided in the README.md files of the corresponding projects.

Reproducing the Real-world Experiment Trials Profiling

To reproduce the profiling performed on the real-world experiment trials follow the instructions available in the real_script_trials_profiling/README.md.

Reproducing the Article Analyses

All analyses were conducted using SpeeduPy release v1.0.1-time-measure. To set it up, follow these steps:

  1. Install Python 3.9 on your machine.
  2. Download and extract the SpeeduPy release v1.0.1-time-measure.
  3. Install SpeeduPy by running the following commands:
mv speedupy-1.0.1-time-measure/ speedupy/
cd speedupy/
pip install -r requirements.txt
  1. To reproduce a specific analysis, follow the appropriate link below:

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •