adityaag24 / artifact-pact

This Repository acts as an Artifact for the submission to PACT 23'

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Artifacts for PACT 2023 Submission (#349)

This Repository acts as an Artifact for the submission of our manuscript to PACT 23'

Paper Title

UWOmp𝑝𝑟𝑜 : UWOmp++ with Point-to-Point Synchronization, Reduction and Schedules

Paper Authors

Aditya Agrawal and V Krishna Nandivada

Affiliation

Indian Institute of Technology, Madras

Prerequisite Software

Install Build Essential

sudo apt-get install build-essential

Install JDK-17

sudo apt-get install openjdk-17-jre

Install Ant To Build the Translator

sudo apt-get install ant

Clone the Benchmark and Enter the Directory

git clone https://github.com/adityaag24/artifact-pact.git

cd artifact-pact

Steps to Build the Translator

The two command below will build the Translator .class files and put them in the bin folder.

ant clean

ant

Steps to Run The Standard Benchmarks

./runBmk.sh: will first run gcc to generate the preprocessed output which forms as an input to the IMOP Compiler Module. The IMOP Compiler Module will take as input the preprocessed file and output a $FILENAME-processed.i file (where FILENAME is the name of the benchmark) in the output-dump directory. Then, the benchmark is compiled using gcc (with options -O3 and -fopenmp) that generates the executable $FILENAME, which can be run.

Steps to Use UWPro for any arbitrary file (FILENAME.c)

Generate the Preprocessed Output of the .c file you want to run.

Make sure you add the header file present in src/utility/generic/header.h when compiling your benchmark.

gcc -P -E -o FILENAME.i FILENAME.c

Run the Command to Translate the Given Preprocessed file to Processed Output (from the Translator)

java -da -Xms2048M -Xmx4096M -cp ${IMOPHOME}/third-party-tools/com.microsoft.z3.jar:. imop.$2 -nru -f $TESTROOT/$FILE

Compile the Translated Benchmark using GCC/CLANG

gcc/clang -fopen -O3 -o FILENAME FILENAME-processed.i (this file is generated by the translator in the output-dump directory)

Run the Translated Benchmark

./FILENAME [Optional Input If Any]

About

This Repository acts as an Artifact for the submission to PACT 23'

License:MIT License


Languages

Language:SWIG 65.0%Language:C 15.6%Language:Java 12.8%Language:Assembly 5.6%Language:Shell 0.4%Language:Euphoria 0.2%Language:HTML 0.2%Language:TeX 0.1%Language:V 0.1%Language:X10 0.0%Language:Makefile 0.0%Language:C++ 0.0%Language:CMake 0.0%Language:Roff 0.0%Language:Modula-3 0.0%Language:SourcePawn 0.0%