-
Notifications
You must be signed in to change notification settings - Fork 0
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
polygeistのコードベースを確認する #46
Comments
polygeist側にはほぼ編集がない llvm側に編集があるのだろうか?? |
うーむ、これだという編集が見えないな。 |
以下のpull requestが、cgo24の主要なコミットである。
以下のpull requestも気になる。pluto-optでしょうか。
|
以下の論文をもう一回見てみよう! |
Polygeistのパイプラインは、図1のように4つのコンポーネントで構成されています:
|
以下の論文が大事である |
やるべきこと
|
include/polygeist/Passes/Passes.h変換パスが書いてある std::unique_ptr<Pass>
createConvertParallelToGPUPass1(std::string arch = "sm_60");
std::unique_ptr<Pass>
createConvertParallelToGPUPass2(bool emitGPUKernelLaunchBounds = true); include/polygest/Passes/Passes.tdTableGenで書かれた、Passの定義集 だから、僕はaffine to parallelを書いたら良いのだろうか??? lib/polygeist/Ops.cppここにOpの変換の定義と、Opのクラスのコンストラクタ(ファクトリ?)が書いてある。 ivanが書いてあるのは、 lib/polygeist/Passes/CMakeLists.txtここにpass関連のビルド定義が書いてある。 if(POLYGEIST_ENABLE_CUDA)
find_package(CUDA)
enable_language(CUDA)
# Enable gpu-to-cubin pass.
target_compile_definitions(obj.MLIRPolygeistTransforms
PRIVATE
POLYGEIST_ENABLE_CUDA=1
)
# Add CUDA headers includes and the libcuda.so library.
target_include_directories(obj.MLIRPolygeistTransforms
PRIVATE
${CMAKE_CUDA_TOOLKIT_INCLUDE_DIRECTORIES}
)
find_library(CUDA_DRIVER_LIBRARY cuda)
target_link_libraries(MLIRPolygeistTransforms
PRIVATE
${CUDA_DRIVER_LIBRARY}
)
endif() tools/cgeist/driver.ccここら辺に動かし方が書いてある |
確認するコミット
https://github.com/llvm/Polygeist/tree/cgo24
Retargetingのcommitによって確認する。
The text was updated successfully, but these errors were encountered: