Native Shell
Native Shell:AI 生成的 UI,在你的應用中原生呈現,涵蓋每個平台。iOS、Android、macOS、Windows 與 Linux 上的應用、GPUI 應用與網頁在執行時載入已簽名、沙箱隔離的 TSX 模組並繪製 th
AI 翻譯
製作者的介紹僅有上面的一句話。 更多詳情請閱讀儲存庫 README。 儲存庫 README ↗
正在載入完整 README。
檢視完整 README ↗DiscoPoP is an open-source tool that helps software developers parallelize their programs with threads. It is a joint project of the High-Performance Computing Lab @ TU Darmstadt and the Software Analytics and Pervasive Parallelism Lab at Iowa State University.
In a nutshell, DiscoPoP performs the following steps:
A more comprehensive overview of DiscoPoP can be found on our project website.
You need Python 3.11 or newer, LLVM/clang 19-22 with development files, CMake 3.28 or newer, a C++20 compiler, the Boost headers, and Tk with a display for the GUI. The profiler is built during the installation.
On Debian and Ubuntu:
sudo apt install python3 python3-pip python3-venv python3-tk build-essential cmake git llvm-19-dev clang-19 clang-tools-19 libomp-19-dev libboost-dev
Replace 19 with 20, 21, or 22 for a newer LLVM release. Ubuntu 24.04 packages LLVM 19 and 20, Debian 13 packages 19 and 22; other versions are available from apt.llvm.org.
For Arch-based distributions (pacman) and macOS (Homebrew), see the installation page. These routes are not tested in CI.
python3 -m venv venv
source venv/bin/activate
pip install discopop
To install from a checkout of this repository, see the installation page.
Your project has to build with the compilers and flags given in $CC/$CXX and $CFLAGS/$CXXFLAGS. Start the GUI in the project directory:
cd <your project>
discopop_gui
On the first start, a wizard asks for your compile script and an execution script, and creates the first configuration. See Getting started for the details.
Detect parallel patterns: the Execute tab manages the profiling and the Pattern Detection tab analyzes the profiling data of your program in order to identify and present parallelization suggestions in the form of OpenMP constructs and corresponding patches.
Find the combination that pays off: the Autotuning tab measures combinations of the suggestions on your program and shows the speedup of each.
In case any issues arise, please contact us via GitHub messages or by mail to [email protected].
© DiscoPoP is available under the terms of the BSD-3-Clause license, as specified in the LICENSE file.