Skip to content

INFORMSJoC/2019.0000

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

INFORMS Journal on Computing Logo

CacheTest

This archive is distributed in association with the INFORMS Journal on Computing under the MIT License.

The software and data in this repository are a snapshot of the software and data that were used in the research reported on in the paper This is a Template by T. Ralphs. The snapshot is based on this SHA in the development repository.

Important: This code is being developed on an on-going basis at https://github.com/tkralphs/JoCTemplate. Please go there if you would like to get a more recent version or would like support

Cite

To cite the contents of this repository, please cite both the paper and this repo, using their respective DOIs.

https://doi.org/10.1287/ijoc.2019.0000

https://doi.org/10.1287/ijoc.2019.0000.cd

Below is the BibTex for citing this snapshot of the repository.

@misc{CacheTest,
  author =        {T. Ralphs},
  publisher =     {INFORMS Journal on Computing},
  title =         {{CacheTest}},
  year =          {2020},
  doi =           {10.1287/ijoc.2019.0000.cd},
  url =           {https://github.com/INFORMSJoC/2019.0000},
  note =          {Available for download at https://github.com/INFORMSJoC/2019.0000},
}  

Description

The goal of this software is to demonstrate the effect of cache optimization.

Building

In Linux, to build the version that multiplies all elements of a vector by a constant (used to obtain the results in Figure 1 in the paper), stepping K elements at a time, execute the following commands.

make mult

Alternatively, to build the version that sums the elements of a vector (used to obtain the results Figure 2 in the paper), stepping K elements at a time, do the following.

make clean
make sum

Be sure to make clean before building a different version of the code.

Results

Figure 1 in the paper shows the results of the multiplication test with different values of K using gcc 7.5 on an Ubuntu Linux box.

Figure 1

Figure 2 in the paper shows the results of the sum test with different values of K using gcc 7.5 on an Ubuntu Linux box.

Figure 1

Replicating

To replicate the results in Figure 1, do either

make mult-test

or

python test.py mult

To replicate the results in Figure 2, do either

make sum-test

or

python test.py sum

Ongoing Development

This code is being developed on an on-going basis at the author's Github site.

Support

For support in using this software, submit an issue.