Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
52 commits
Select commit Hold shift + click to select a range
e4a5be3
modifications to microbenchmark suite to run on AMD GPUs
tmm77 Apr 29, 2025
e932646
adding arguments for selecting a list of architectures and benchmark …
tmm77 Apr 30, 2025
8a9ca3b
additional modifications for single arch and benchmark plan runs
tmm77 May 1, 2025
6e4fb08
temporarily setting atomic ops repeat to 1
tmm77 May 7, 2025
efe237e
updating vulkan sdk downlaod url
tmm77 May 8, 2025
c3d7b84
removing comments for saving json files
tmm77 May 12, 2025
eeb3354
Merge pull request #1 from AMD-AI/mintz/parameterize_microbenchmark
tmm77 May 19, 2025
bb8a9b3
Patch to avoid the need to fetch to build Taichi wheel
Jun 26, 2025
c137b06
fix: Patch to avoid the need to fetch source to build Taichi wheel
bhaveshlad27 Jun 27, 2025
b74c00c
Taicho Multistage Dockerfile
Jul 9, 2025
6b0f58b
Taichi Multistage Dockerfile
bhaveshlad27 Jul 9, 2025
f791165
setting architecture to gpu
tmm77 Jul 11, 2025
1a6520a
ROCm port of taichi
bhatturu Jul 25, 2025
86b6184
Merge pull request #3 from taichi-dev/master
tmm77 Aug 15, 2025
9260d4e
Merge branch 'amd-develop' into master
tmm77 Aug 15, 2025
712d405
Merge pull request #4 from ROCm/master
tmm77 Aug 15, 2025
46444ee
Merge branch 'amd-integration' into amd-develop
tmm77 Aug 15, 2025
5eed1b4
Merge pull request #5 from ROCm/amd-develop
tmm77 Aug 15, 2025
0f2615c
LLVM-20
johnnynunez Jun 11, 2025
c189397
Update LLVM API calls in codegen_cuda.cpp for compatibility with rece…
johnnynunez Jun 11, 2025
23478fd
Add CHANGELOG.md to document recent updates and improvements
johnnynunez Jun 11, 2025
c5edfdb
Fix include directive for IR analysis header in codegen_cuda.cpp
johnnynunez Jun 11, 2025
2d4703f
Refactor JIT compilation in CUDA: update function pointers, enhance P…
johnnynunez Jun 11, 2025
d2c87f6
Update header includes and fix LLVM API calls in CPU code generation
johnnynunez Jun 11, 2025
ad65ec9
Fix header include for program in codegen_cpu.cpp
johnnynunez Jun 11, 2025
1be07f3
cmake build updates, header fixes; Merging from commits ebdc72be75443…
tmm77 Aug 19, 2025
de14f98
implementing error function and cuda updates; merging 5449f722e796fac…
tmm77 Aug 19, 2025
c984b3c
removing updates for blackwell
tmm77 Aug 20, 2025
f5118a7
removing blackwell updates; restoring window_base.cpp include
tmm77 Aug 20, 2025
78d9213
additional cuda updates for llvm20; merging from 8ca16de9a24e82baaed1…
tmm77 Aug 20, 2025
d20c823
additional updates for llvm 20
tmm77 Aug 28, 2025
f0ca790
fix build issues with llvm 20 update
tmm77 Sep 2, 2025
26ae12c
updated AMD Instinct GPU jit implementation to llvm 20
tmm77 Sep 15, 2025
514446e
updating amd gpu kernel code generation to llvm 20
tmm77 Sep 16, 2025
2a6adb0
fix object file type; setting llvm dir based on environment var
tmm77 Sep 25, 2025
5516360
adding bitcode for gfx940,gfx941,gfx942,gfx950
tmm77 Sep 25, 2025
48cc4f7
adding patch for changes to external spdlog
tmm77 Sep 26, 2025
76c25df
Merge pull request #6 from ROCm/mintz/llvm20_update
tmm77 Oct 30, 2025
ed925e6
updating dockerfile for llvm 20
tmm77 Oct 30, 2025
a78aaca
Update Dockerfile to fix pipeline issues
deepsek Nov 4, 2025
2549e39
dockerfile copy dir
deepsek Nov 5, 2025
300196b
Dockerfile reformat
deepsek Nov 5, 2025
8dab171
CI: Fix Dockerfile issues
deepsek Nov 7, 2025
ed1c61d
Fix Tester Issues
deepsek Nov 10, 2025
29c4129
removing any existing build cache
tmm77 Nov 14, 2025
7b155bb
Fix Version Issues
deepsek Nov 14, 2025
104dc18
Merge branch 'amd-integration' into release/1.8.0b2
deepsek Nov 14, 2025
13a0550
Docs: Taichi component, configs and setup for 25.11 release (#2)
anisha-amd Dec 9, 2025
39cc7fe
Merge pull request #8 from ROCm/release/1.8.0b2
tmm77 Dec 9, 2025
36c0aa5
removing rocm_setup_version
tmm77 Dec 11, 2025
7c446fb
Update taichi-install.rst
anisha-amd Feb 9, 2026
f47d1b8
removing pull_request.yml for security concerns
tmm77 Apr 6, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 0 additions & 30 deletions .github/workflows/pull_request.yml

This file was deleted.

2 changes: 1 addition & 1 deletion .github/workflows/scripts/ti_build/compiler.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ def setup_clang(as_compiler=True) -> None:
"""
u = platform.uname()
if u.system == "Linux":
for v in ("", "-14", "-13", "-12", "-11", "-10"):
for v in ("", "-20", "-19", "-18", "-17", "-16", "-15", "-14", "-13", "-12", "-11", "-10"):
clang = shutil.which(f"clang{v}")
if clang is not None:
clangpp = shutil.which(f"clang++{v}")
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/scripts/ti_build/entry.py
Original file line number Diff line number Diff line change
Expand Up @@ -82,8 +82,8 @@ def setup_basic_build_env():
setup_clang()

setup_llvm()
if u.system in ("Linux", "Windows"):
# We support & test Vulkan shader debug printf on Linux && Windows
if u.system == "Linux":
# We support & test Vulkan shader debug printf on Linux
# This is done through the validation layer
from .vulkan import setup_vulkan

Expand Down
23 changes: 17 additions & 6 deletions .github/workflows/scripts/ti_build/llvm.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@

# -*- coding: utf-8 -*-

# -- stdlib --
Expand All @@ -19,18 +20,25 @@ def setup_llvm() -> None:
Download and install LLVM.
"""
u = platform.uname()
if u.system == "Linux":
if (u.system, u.machine) == ("Linux", "x86_64"):
if cmake_args.get_effective("TI_WITH_AMDGPU"):
out = get_cache_home() / "llvm15-amdgpu-005"
url = "https://github.com/GaleSeLee/assets/releases/download/v0.0.5/taichi-llvm-15.0.0-linux.zip"
# We should use LLVM toolchains shipped with OS.
os.environ["LLVM_DIR"] = os.environ["LLVM_PATH"]+"/lib/cmake"
os.environ["CPATH"] = os.environ["ROCM_PATH"]+"/include"
elif is_manylinux2014():
# FIXME: prebuilt llvm15 on ubuntu didn't work on manylinux2014 image of centos. Once that's fixed, remove this hack.
out = get_cache_home() / "llvm15-manylinux2014"
url = "https://github.com/ailzhang/torchhub_example/releases/download/0.3/taichi-llvm-15-linux.zip"
download_dep(url, out, strip=1)
else:
out = get_cache_home() / "llvm15"
url = "https://github.com/taichi-dev/taichi_assets/releases/download/llvm15/taichi-llvm-15-linux.zip"
download_dep(url, out, strip=1)
download_dep(url, out, strip=1)

elif (u.system, u.machine) in (("Linux", "arm64"), ("Linux", "aarch64")):
out = get_cache_home() / "llvm15-manylinux2014"
# FIXME: ARM LLVM!
pass
elif (u.system, u.machine) == ("Darwin", "arm64"):
out = get_cache_home() / "llvm15-m1-nozstd"
url = "https://github.com/taichi-dev/taichi_assets/releases/download/llvm15/taichi-llvm-15-m1-nozstd.zip"
Expand All @@ -47,5 +55,8 @@ def setup_llvm() -> None:
raise RuntimeError(f"Unsupported platform: {u.system} {u.machine}")

# We should use LLVM toolchains shipped with OS.
# path_prepend('PATH', out / 'bin')
os.environ["LLVM_DIR"] = str(out)
#path_prepend('PATH', out / 'bin')
if ((u.system, u.machine) not in (("Linux", "arm64"), ("Linux", "aarch64"))) and not (cmake_args.get_effective("TI_WITH_AMDGPU")):
os.environ["LLVM_DIR"] = "/usr/lib/llvm-20/cmake"
os.environ["CUDA_HOME"] = "/usr/local/cuda"
os.environ["CPATH"] = "/usr/local/cuda/include"
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LLVM_DIR hardcoded to Linux path for all platforms

Medium Severity

The final LLVM_DIR assignment unconditionally sets it to /usr/lib/llvm-20/cmake for all non-ARM-Linux, non-AMDGPU platforms, including macOS and Windows. The original code used str(out) which pointed to the platform-specific downloaded LLVM path. This overwrites the correct out-based paths for Darwin and Windows, breaking LLVM discovery on those platforms. Similarly, CUDA_HOME and CPATH are set to Linux-specific paths.

Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit f47d1b8. Configure here.

Loading
Loading