This repository was used to track my Informatics Honours Project and Dissertation. The project involves evaluating the Latencies of core memory components, and the bandwidths of the MCDRAM and DRAM.
/
├── Benchmarks
│ ├── Coherence Miss
│ ├── Latencies
│ ├── Memory Bandwidth
│ └── Tools
└── Docs
├── Dissertation
├── References
└── Results
Contains source-code and associated files for building and executing the different microbenchmarks.
Contains source-code for multi-threaded benchmark which evaluates latencies of accessing data across Cores.
make
./run.sh State1Core ( M | E ) State2Core
./run.sh State1Core State2Core S State3Core
The following state diagrams show what each Task represents for the different modes:
Contains source-code for microbenchmark for evaluating L1 Cache, L2 Cache, and DRAM/MCDRAM access Latencies.
make
./run.sh $numa_region
Where $numa_region is the numa-region you wish to run your benchmarks on. In Quadrant/All-to-All and Flat Mode, 0 is DRAM, and 1 MCRAM.
Contains source-code for STREAM Benchmark purposed for Knights Landing. STREAM Courtesy of John McCalpin @ https://www.cs.virginia.edu/stream/
./run.sh $numa_region
Where $numa_region is the numa-region you wish to run your benchmarks on. In Quadrant/All-to-All and Flat Mode, 0 is DRAM, and 1 MCRAM.
Contains small utility application for converting Cycles to NanoSeconds
Contains source-control files for the dissertation and results associated with the dissertation.