-
Notifications
You must be signed in to change notification settings - Fork 124
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
How to run PolyBench/C benchmarks with polyhedral pluto optimization using Polygeist? #385
Comments
How did you build polymer and polygeist. We actually recently merged
polymer into the polygeist repo directly so it may be helpful to build the
latest main
…On Thu, Feb 1, 2024, 5:55 PM arun-thmn ***@***.***> wrote:
Hi,
I'm trying to run PolyBench/C benchmarks with polyhedral pluto
optimization using Polygeist, but I cannot succeed.
I used the earlier script at
https://github.com/wsmoses/Polygeist-Script/blob/main/polybench-c-4.2.1-beta/run.sh
as reference.
I used the options as below and not able to proceed with polymer-opt:
clang -c -O3 ./utilities/polybench.c -o ./utilities/polybench.o
-DEXTRALARGE_DATASET -DPOLYBENCH_TIME
clang -I ./utilities/ ./linear-algebra/blas/syr2k/syr2k.c -E
-DEXTRALARGE_DATASET -DPOLYBENCH_TIME > ./syr2k.c
cgeist ./syr2k.c -S -o ./syr2k.mlir
polymer-opt -allow-unregistered-dialect -reg2mem -insert-redundant-load
-extract-scop-stmt -canonicalize
-pluto-opt="dump-clast-after-pluto=syr2k.cloog" -canonicalize ./syr2k.mlir
The error from 'polymer-opt':
./syr2k.mlir:10:73: error: invalid memref element type
llvm.mlir.global external @stderr <https://github.com/stderr>()
{addr_space = 0 : i32} : memref<?x!llvm.struct<(....)>>
It would be helpful, if some guide me with right set of options.
Thanks
Arun T
—
Reply to this email directly, view it on GitHub
<#385>, or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAJTUXAIVE4VXXAJHOY6CKDYRPCHLAVCNFSM6AAAAABCVH62I2VHI2DSMVQWIX3LMV43ASLTON2WKOZSGEYTEOJXHA2DCMA>
.
You are receiving this because you are subscribed to this thread.Message
ID: ***@***.***>
|
Hi, |
Following up on this issue with a study that arrived here independently. I built Polygeist as an external project in llvm (option 2 from the docs) on Ubuntu 22.04 LTS with gcc 11.4.0 and the following configuration: ~$: cmake -G Ninja ../llvm-project/llvm/ -DLLVM_ENABLE_PROJECTS="mlir;clang;openmp" -DLLVM_EXTERNAL_PROJECTS="polygeist" -DLLVM_EXTERNAL_POLYGEIST_SOURCE_DIR=../ -DLLVM_TARGETS_TO_BUILD="host" -DLLVM_ENABLE_ASSERTIONS=ON -DPOLYGEIST_ENABLE_POLYMER=1 -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=$(POLYGEIST_INSTALL) when compiling the polybench gemm app with the following commands:
polymer-opt fails with: Is there a workaround for this? If not, is this in the pipeline of things to fix? |
Hello @wsmoses OS: Ubuntu 20.04LTS However, I have exactly same error for
And this is how I build the polygeist
@arun-thmn & @benroywillis Thanks in advance! |
Hi,
I'm trying to run PolyBench/C benchmarks with polyhedral pluto optimization using Polygeist, but I cannot succeed.
I used the earlier script at https://github.com/wsmoses/Polygeist-Script/blob/main/polybench-c-4.2.1-beta/run.sh as reference.
I used the options as below and not able to proceed with polymer-opt:
clang -c -O3 ./utilities/polybench.c -o ./utilities/polybench.o -DEXTRALARGE_DATASET -DPOLYBENCH_TIME
clang -I ./utilities/ ./linear-algebra/blas/syr2k/syr2k.c -E -DEXTRALARGE_DATASET -DPOLYBENCH_TIME > ./syr2k.c
cgeist ./syr2k.c -S -o ./syr2k.mlir
polymer-opt -allow-unregistered-dialect -reg2mem -insert-redundant-load -extract-scop-stmt -canonicalize -pluto-opt="dump-clast-after-pluto=syr2k.cloog" -canonicalize ./syr2k.mlir
The error from 'polymer-opt':
./syr2k.mlir:10:73: error: invalid memref element type
llvm.mlir.global external @stderr() {addr_space = 0 : i32} : memref<?x!llvm.struct<(....)>>
It would be helpful, if some guide me with right set of options.
Thanks
Arun T
The text was updated successfully, but these errors were encountered: