GithubHelp home page GithubHelp logo

rome-memory-barrier's Introduction

The AMD Rome Memory Barrier

The term project for CPE 631 at the University of Alabama in Huntsville. This project explored the limitations of memory bandwidth on an AMD Rome system. This repository hold the capability to compile the SPEC CPU2017 benchmarking suite in addition to the collection of PMC events during runtime using AMDuProf. For futher details, view the report available under "The AMD Rome Memory Barrier.pdf."

Directory Structure

graphs

This directory contains the Excel files for all graphs used in the report.

parser_scripts

This directory holds the scripts for parsing the results generated by AMDuProfPcm. The events_parser.py and metrics_parser.py parse through the original outputs from AMDuProfPcm. The verify_parser.py script verifies some of the calculations done by the first two scripts. The graph_parser.py script creates different CSVs to be used for easier access to data we wanted to graph. The table_parser.py script creates the two CSVs per SPEC CPU2017 suite for core metrics and cache breakdown. The scale_parser.py script condenses the results from the Scalability tests into Integer Rate and Floating Point Rate CSVs. A README.txt file in this directory explains how to execute the scripts.

reportable

This directory contains the SPEC generated PDFs from the reportable runs.

results

graph_data

This directory is the output from the graph_parser.py script and holds directories for each SPEC CPU2017 benchmark suite (fp_rate, fp_speed, int_rate, and int_speed) as well as scalability test results for Integer and Floating Point Rate suites. Each of the subdirectories contains a cache breakdown, memory bandwidth--CPI correlation, general core parameters, IPC, and pipeline utilization CSVs for all benchmarks in the suite.

scale_results

This directory contains execution time for each instance count of each rate benchmark (both Integer and Floating Point).

uprof_results

This directory contains the AMDuProfPcm results. Within each benchmark subdirectory is a metrics.csv which contains common metrics and events.csv which contains raw PCMs.

uprof_results_cumulative

This directory is the output from the events_parser.py and the metrics_parser.py scripts. The directory contains a subdirectory for each benchmark and contains the aggregate data across all cores utilized during the Monitoring Test.

run_scripts

This directory contains bash scripts for compiling, running, and profiling the SPEC CPU2017 benchmarks.

Other Files

aocc-3.1.0-linux.cfg

This file is the configuration file for compiling SPEC CPU2017 benchmarks for use with AMDuProfPcm.

aocc-reportable-3.1.0-linux.cfg

This file is for compiling for the reportable runs. Note, that some compile flags are different due to AMDuProf requiring certain flags that are illegal for reportable runs.

icx-2021.3.0-linux.cfg

This file compiles for reportable runs with the Intel OneAPI compiler.

spec-config.conf

This is the configuration file for AMDuProfPcm.

rome-memory-barrier's People

Contributors

computablee avatar jalobrano avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.