Skip to content
Snippets Groups Projects
Commit 757e7791 authored by Jammer, Tim's avatar Jammer, Tim
Browse files

Merge remote-tracking branch 'origin/tools' into tools

parents 4628f6eb bb84c392
Branches
No related tags found
1 merge request!20Parsing and tools updates
......@@ -9,6 +9,7 @@ RUN apt-get update --fix-missing && \
ENV PIPENV_VENV_IN_PROJECT=1
# Install python dependencies with pipenv and activate virtualenv
ENV PIPENV_VENV_IN_PROJECT=1
COPY Pipfile .
RUN pipenv install
ENV PATH="/.venv/bin:$PATH"
......
......@@ -10,3 +10,4 @@ scan-build = "*"
tqdm = "*"
pandas = "*"
typing-extensions = "*"
setuptools = "*"
......@@ -45,49 +45,3 @@ $ parcoachcc -check=rma --args mpicc /MBI/scripts/gencodes/RMA/LocalConcurrency-
| clang: warning: argument unused during compilation: '-I /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi' [-Wunused-command-line-argument]
|
Executing the command (cwd: None)
$ parcoachcc -check=rma --args mpicc /MBI/scripts/gencodes/RMA/LocalConcurrency-fence-get_get-001.c -c -o LocalConcurrency-fence-get_get-001.o
| remark: Parcoach: running '/usr/bin/mpicc /MBI/scripts/gencodes/RMA/LocalConcurrency-fence-get_get-001.c -c -o LocalConcurrency-fence-get_get-001.o'
| remark: Parcoach: running '/usr/bin/mpicc /MBI/scripts/gencodes/RMA/LocalConcurrency-fence-get_get-001.c -g -S -emit-llvm -o parcoach-ir-0c0156.ll'
| remark: Parcoach: running '/MBI/builds/parcoach/parcoach-2.4.0-shared-Linux/bin/parcoach -check=rma parcoach-ir-0c0156.ll -o parcoach-ir-ee2466.ll'
| ===========================
| === PARCOACH ANALYSIS ===
| ===========================
| ===========================
| ANALYZING function main...
| (1) Get statistics ...done
| (2) Local concurrency errors detection ...LocalConcurrency detected: conflit with the following instructions:
| %32 = load ptr, ptr %8, align 8, !dbg !83 - LINE 47 in scripts/gencodes/RMA/LocalConcurrency-fence-get_get-001.c
| AND
| %30 = call i32 @MPI_Get(ptr noundef %28, i32 noundef 10, ptr noundef @ompi_mpi_int, i32 noundef 0, i64 noundef 0, i32 noundef 10, ptr noundef @ompi_mpi_int, ptr noundef %29), !dbg !81 - LINE 44 in scripts/gencodes/RMA/LocalConcurrency-fence-get_get-001.c
| LocalConcurrency detected: conflit with the following instructions:
| %33 = call i32 @MPI_Get(ptr noundef %31, i32 noundef 10, ptr noundef @ompi_mpi_int, i32 noundef 0, i64 noundef 0, i32 noundef 10, ptr noundef @ompi_mpi_int, ptr noundef %32), !dbg !84 - LINE 46 in scripts/gencodes/RMA/LocalConcurrency-fence-get_get-001.c
| AND
| %30 = call i32 @MPI_Get(ptr noundef %28, i32 noundef 10, ptr noundef @ompi_mpi_int, i32 noundef 0, i64 noundef 0, i32 noundef 10, ptr noundef @ompi_mpi_int, ptr noundef %29), !dbg !81 - LINE 44 in scripts/gencodes/RMA/LocalConcurrency-fence-get_get-001.c
| LocalConcurrency detected: conflit with the following instructions:
| %35 = load ptr, ptr %8, align 8, !dbg !86 - LINE 49 in scripts/gencodes/RMA/LocalConcurrency-fence-get_get-001.c
| AND
| %33 = call i32 @MPI_Get(ptr noundef %31, i32 noundef 10, ptr noundef @ompi_mpi_int, i32 noundef 0, i64 noundef 0, i32 noundef 10, ptr noundef @ompi_mpi_int, ptr noundef %32), !dbg !84 - LINE 46 in scripts/gencodes/RMA/LocalConcurrency-fence-get_get-001.c
| LocalConcurrency detected: conflit with the following instructions:
| %35 = load ptr, ptr %8, align 8, !dbg !86 - LINE 49 in scripts/gencodes/RMA/LocalConcurrency-fence-get_get-001.c
| AND
| %30 = call i32 @MPI_Get(ptr noundef %28, i32 noundef 10, ptr noundef @ompi_mpi_int, i32 noundef 0, i64 noundef 0, i32 noundef 10, ptr noundef @ompi_mpi_int, ptr noundef %29), !dbg !81 - LINE 44 in scripts/gencodes/RMA/LocalConcurrency-fence-get_get-001.c
| done
| (3) Instrumentation for dynamic analysis ...done
| === STATISTICS ===
| 10 MPI functions including 6 RMA functions
| = WINDOW CREATION/DESTRUCTION: 1 MPI_Win_free, 1 MPI_Win_create
| = EPOCH CREATION/DESTRUCTION: 2 MPI_Win_fence, 0 MPI_Lock, 0 MPI_Lockall 0 MPI_Unlock, 0 MPI_Unlockall
| = ONE-SIDED COMMUNICATIONS: 2 MPI_Get, 0 MPI_Put, 0 MPI_Accumulate
| = SYNCHRONIZATION: 0 MPI_Win_Flush
| LOAD/STORE STATISTICS: 7 (/10) LOAD and 1 (/7) STORE are instrumented
| ===========================
| remark: Parcoach: running '/usr/bin/mpicc parcoach-ir-ee2466.ll -c -o LocalConcurrency-fence-get_get-001.o'
| clang: warning: argument unused during compilation: '-I /usr/lib/x86_64-linux-gnu/openmpi/include' [-Wunused-command-line-argument]
| clang: warning: argument unused during compilation: '-I /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi' [-Wunused-command-line-argument]
|
Command return code: 0, elapsed time: 0.977653980255127
Finished #196 /MBI/scripts/gencodes/RMA/LocalConcurrency-fence-get_get-001.c
......@@ -41,7 +41,8 @@ class Tool(AbstractTool):
#buildcmd=f"clang -c -g -emit-llvm {filename} -I/usr/lib/x86_64-linux-gnu/mpich/include/ -o {binary}.bc",
#execcmd=f"opt-9 -load ../../builds/parcoach/src/aSSA/aSSA.so -parcoach -check-mpi {binary}.bc -o /dev/null",
buildcmd=f"parcoachcc -check=rma --args mpicc {filename} -c -o {binary}.o \n mpicc {binary}.o -lParcoachRMADynamic_MPI_C ",
execcmd=execcmd,
execcmd="",
#execcmd=execcmd,
cachefile=cachefile,
filename=filename,
number=number,
......@@ -52,7 +53,8 @@ class Tool(AbstractTool):
else:
self.run_cmd(
buildcmd=f"parcoachcc -instrum-inter --args mpicc {filename} -c -o {binary}.o \n mpicc {binary}.o -lParcoachCollDynamic_MPI_C",
execcmd=execcmd,
execcmd="",
#execcmd=execcmd,
cachefile=cachefile,
filename=filename,
number=number,
......@@ -184,6 +186,8 @@ class Tool(AbstractTool):
parsed_reports.append(parsed_report)
#parsed_reports = list(set(parsed_reports))
output["messages"] = parsed_reports
#print("---> Messages = ", output, "parsed_reports = ", parsed_reports, "\n")
#output["messages"] = list(set(output["messages"]))
#print("---> Messages = ", output["messages"], " ---> parsed_reports = ", parsed_reports, "\n")
return output
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment