Open etiotto opened 2 weeks ago
@etiotto I moved PTXAsmFormatTest.cpp
test into third_party/nvidia
folder in Triton PR#4608. There should be no differences from upstream in unittest/Conversion/
folder now.
After PR #2064 lands we will have 48 files with differences (down from 66):
git diff a78c9c40aca4f6ad80deef39682a32056ea8976f --diff-filter=CDMRTUXB | grep "diff --" | cut -d"a" -f2- | cut -d" " -f1 | cut -d"/" -f2-|wc ✔ 10243 14:55:43
48 48 1682
We have two almost identical documents describing the architecture of triton: https://github.com/intel/intel-xpu-backend-for-triton/blob/llvm-target/docs/ARCHITECTURE.md and https://github.com/intel/intel-xpu-backend-for-triton/blob/llvm-target/docs/getting-started/architecture.rst. I believe we should keep only one and my preference would be in favor of the latter. Do we plan to upstream the document in triton too?
@whitneywhtsang @etiotto F8E4M3B11FNUZ
type could be removed by moving the logic of processing this type to the frontend. For this, by analogy with NVIDIA, we could use inline_asm_elementwise
function, but I did not find in the code a call to this function with Intel's asm. Do you know about its use for Intel's backend? Maybe there are other ways to implement this? I would be very glad to receive any suggestions.
@whitneywhtsang @etiotto
F8E4M3B11FNUZ
type could be removed by moving the logic of processing this type to the frontend. For this, by analogy with NVIDIA, we could useinline_asm_elementwise
function, but I did not find in the code a call to this function with Intel's asm. Do you know about its use for Intel's backend? Maybe there are other ways to implement this? I would be very glad to receive any suggestions.
Intel PVC doesn't support inline assembly AFAIK.
We have two almost identical documents describing the architecture of triton: https://github.com/intel/intel-xpu-backend-for-triton/blob/llvm-target/docs/ARCHITECTURE.md and https://github.com/intel/intel-xpu-backend-for-triton/blob/llvm-target/docs/getting-started/architecture.rst. I believe we should keep only one and my preference would be in favor of the latter. Do we plan to upstream the document in triton too?
@etiotto, @whitneywhtsang, any thoughts on this?
We have two almost identical documents describing the architecture of triton: https://github.com/intel/intel-xpu-backend-for-triton/blob/llvm-target/docs/ARCHITECTURE.md and https://github.com/intel/intel-xpu-backend-for-triton/blob/llvm-target/docs/getting-started/architecture.rst. I believe we should keep only one and my preference would be in favor of the latter. Do we plan to upstream the document in triton too?
@etiotto, @whitneywhtsang, any thoughts on this?
It is copied to architecture.rst in https://github.com/intel/intel-xpu-backend-for-triton/commit/b127c84121e03eee058827012c50aab27c232077 @Devjiu what's the reason it is copied and not moved?
Status update:
DEVELOPMENT.md
RELEASE.md
SECURITY.md
bandit.yaml
bin/triton-translate.cpp
cmake/FindSPIRVToLLVMTranslator.cmake
include/triton/Target/SPIRV/SPIRVTranslation.h
lib/Target/SPIRV/CMakeLists.txt
lib/Target/SPIRV/SPIRVTranslation.cpp
lib/Target/SPIRV/spirv-llvm-translator.conf
python/test/conftest.py
python/test/regression/conftest.py
python/test/unit/language/test_emulated_atomics.py
python/test/unit/language/test_libdevice.py
python/triton/language/extra/intel/__init__.py
python/triton/language/extra/intel/libdevice.py
python/triton/language/extra/intel/utils.py
python/tutorials/10-experimental-block-pointer.py
python/tutorials/10i-experimental-block-pointer.py
third-party-programs.txt
I took a first pass at the difference between the latest OpenAI Triton code upstream and our fork. We have 66 common files showing a difference. To obtain the difference use the following command on the latest
llvm-target
(the commit ID is from our last merge):The file containing a difference are in the following table. The 2nd column labeled "Upstreamable" indicates whether the diff. in that file are upstreamable or not, and whether we should attempt to upstream them now or in the future (i.e. we need to upstream our BE in third_party in order to upstream the difference). Specificaly:
The 3rd column indicates whether we should move the difference (or the file) in the third_party/intel directory. The 4th column indicates whether the difference could be reduced or not.
The following table summarizes features (or lack thereof) that need to be redesigned in order to remove the difference thy cause in common files. For example "warp layout" is a feature of our advanced codegen path which requires some redesign to avoid changes in common files.