History log of /llvm-project/mlir/lib/Dialect/XeGPU/IR/XeGPUOps.cpp (Results 1 – 20 of 20)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: llvmorg-21-init
# ba6774f9 24-Jan-2025 Adam Siemieniuk <adam.siemieniuk@intel.com>

[mlir][xegpu] Fix verifier diagnostic recursion (#124148)

Uses global diagnostic message in operation verifier to avoid infinite
recursion on a warning.

Emitting diagnostics through the operatio

[mlir][xegpu] Fix verifier diagnostic recursion (#124148)

Uses global diagnostic message in operation verifier to avoid infinite
recursion on a warning.

Emitting diagnostics through the operation under verification creates a
loop where verifier runs again before printing the message.

show more ...


# fa6f88af 22-Jan-2025 Petr Kurapov <petr.a.kurapov@intel.com>

[MLIR][XeGPU] Allow some nd ops to have argument shapes mismatch for … (#120566)

…the distributed IR case.

This patch allows `nd_load` and `nd_store` to preserve the tensor
descriptor shape duri

[MLIR][XeGPU] Allow some nd ops to have argument shapes mismatch for … (#120566)

…the distributed IR case.

This patch allows `nd_load` and `nd_store` to preserve the tensor
descriptor shape during distribution to SIMT. The validation now expects
the distributed instruction to retain the `sg_map` attribute and uses it
to verify the consistency.

show more ...


Revision tags: llvmorg-19.1.7, llvmorg-19.1.6, llvmorg-19.1.5
# 27046bad 19-Nov-2024 Md Abdullah Shahneous Bari <98356296+mshahneo@users.noreply.github.com>

[mlir][XeGPU] Add a builder for xegpu.create_nd_tdesc op. (#116472)

The builder is needed to support dynamic meref as source operand in
xegpu.create_nd_tdesc op.


Revision tags: llvmorg-19.1.4, llvmorg-19.1.3, llvmorg-19.1.2
# 9c697b3a 02-Oct-2024 Chao Chen <chao.chen@intel.com>

[MLIR][XeGPU] Update the type of offsets for CreateDescOp and UpdateOffsetOp (#110741)

This PR changes the type of `offsets` operand of CreateDescOp and
UpdateOffsetOp to 1D Vector of index, for co

[MLIR][XeGPU] Update the type of offsets for CreateDescOp and UpdateOffsetOp (#110741)

This PR changes the type of `offsets` operand of CreateDescOp and
UpdateOffsetOp to 1D Vector of index, for convenience of users.

show more ...


Revision tags: llvmorg-19.1.1
# 8b5e8414 24-Sep-2024 Chao Chen <chao.chen@intel.com>

[MLIR][XeGPU] Updates XeGPU TensorDescAttr and Refine Gather/Scatter definition (#109675)

Bring back #109144 with fixes to VectorToXeGPU


# 09e94d09 23-Sep-2024 Chao Chen <116223022+chencha3@users.noreply.github.com>

Revert "[MLIR][XeGPU] Updates XeGPU TensorDescAttr and Refine Gather/Scatter definition. " (#109666)

Reverts llvm/llvm-project#109144


# 21627236 23-Sep-2024 Chao Chen <116223022+chencha3@users.noreply.github.com>

[MLIR][XeGPU] Updates XeGPU TensorDescAttr and Refine Gather/Scatter definition. (#109144)

The PR makes the following refine changes to the XeGPU dialect.
1. Separated the old `TensorDescAttr` in

[MLIR][XeGPU] Updates XeGPU TensorDescAttr and Refine Gather/Scatter definition. (#109144)

The PR makes the following refine changes to the XeGPU dialect.
1. Separated the old `TensorDescAttr` into two independent attributes: `BlockTensorDescAttr` and `ScatterTensorDescAttr`
2. Renamed the `MemoryScopeAttr` to `MemorySpaceAttr` and updated the enumeration value for shared memory following OpenCL standard.
3. Introduced `transpose` UnitAttr to `StoreScatterOp`and `LoadGatherOp`
4. Added memory space check for `CreateNdDesc` and `CreateDesc` op, as well as valid and invalid test cases for them.

show more ...


# 123e8c73 22-Sep-2024 Youngsuk Kim <youngsuk.kim@hpe.com>

[mlir] Don't call llvm::raw_string_ostream::flush() (NFC)

Don't call raw_string_ostream::flush(), which is essentially a no-op.
As specified in the docs, raw_string_ostream is always unbuffered.
( 6

[mlir] Don't call llvm::raw_string_ostream::flush() (NFC)

Don't call raw_string_ostream::flush(), which is essentially a no-op.
As specified in the docs, raw_string_ostream is always unbuffered.
( 65b13610a5226b84889b923bae884ba395ad084d for further reference )

show more ...


Revision tags: llvmorg-19.1.0, llvmorg-19.1.0-rc4, llvmorg-19.1.0-rc3, llvmorg-19.1.0-rc2
# 6c783e19 02-Aug-2024 Chao Chen <116223022+chencha3@users.noreply.github.com>

[MLIR][XeGPU] Refine XeGPU definitions (#100763)

This PR has following changes/fixes to XeGPU definition:
- Fix type print format for atomic_rmw
- removed 2D support for MaskType
- Update LoadNd

[MLIR][XeGPU] Refine XeGPU definitions (#100763)

This PR has following changes/fixes to XeGPU definition:
- Fix type print format for atomic_rmw
- removed 2D support for MaskType
- Update LoadNd definition
- Add 1D TensorDesc support
- Replaced vnni_axis attribute with packed attribute
- Update DPAS op definition, limiting A to 2D vector, and B to either 2D/3D vector.

show more ...


Revision tags: llvmorg-19.1.0-rc1, llvmorg-20-init, llvmorg-18.1.8, llvmorg-18.1.7
# 73a2fd47 05-Jun-2024 Artem Kroviakov <71938912+akroviakov@users.noreply.github.com>

[mlir][xegpu] Patch dynamic descriptor creation (#93580)

fixes the bug in XeGPU's `CreateNdDescOp` tensor creation with dynamic offset and strides.


Revision tags: llvmorg-18.1.6, llvmorg-18.1.5
# 03bb10df 24-Apr-2024 Chao Chen <116223022+chencha3@users.noreply.github.com>

[MLIR][XeGPU] Add dpas, atomic, and named barrier ops (#88973)

---------

Co-authored-by: Mehdi Amini <joker.eph@gmail.com>
Co-authored-by: Adam Siemieniuk <adam.siemieniuk@intel.com>


# a5757c5b 19-Apr-2024 Christian Sigg <chsigg@users.noreply.github.com>

Switch member calls to `isa/dyn_cast/cast/...` to free function calls. (#89356)

This change cleans up call sites. Next step is to mark the member
functions deprecated.

See https://mlir.llvm.org/

Switch member calls to `isa/dyn_cast/cast/...` to free function calls. (#89356)

This change cleans up call sites. Next step is to mark the member
functions deprecated.

See https://mlir.llvm.org/deprecation and
https://discourse.llvm.org/t/preferred-casting-style-going-forward.

show more ...


Revision tags: llvmorg-18.1.4
# c9731a3d 16-Apr-2024 Kazu Hirata <kazu@google.com>

[mlir] Fix a warning about an extraneous semicolon

This patch fixes:

mlir/lib/Dialect/XeGPU/IR/XeGPUOps.cpp:58:2: error: extra ';'
outside of a function is incompatible with C++98
[-Werror,-W

[mlir] Fix a warning about an extraneous semicolon

This patch fixes:

mlir/lib/Dialect/XeGPU/IR/XeGPUOps.cpp:58:2: error: extra ';'
outside of a function is incompatible with C++98
[-Werror,-Wc++98-compat-extra-semi]

show more ...


# b01879ec 16-Apr-2024 Chao Chen <116223022+chencha3@users.noreply.github.com>

[MLIR][XeGPU] Add XeGPU scattered ops (#86594)

- Extended TensorDescAttr with scattered attribute
- Add scattered ops: CreateDescOp, PrefetchOp, LoadGatherOp,
StoreScatterOp, UpdateOffsetOp
- Add

[MLIR][XeGPU] Add XeGPU scattered ops (#86594)

- Extended TensorDescAttr with scattered attribute
- Add scattered ops: CreateDescOp, PrefetchOp, LoadGatherOp,
StoreScatterOp, UpdateOffsetOp
- Add a block op: UpdateNdOffsetOp

---------

Co-authored-by: Mehdi Amini <joker.eph@gmail.com>
Co-authored-by: Adam Siemieniuk <adam.siemieniuk@intel.com>

show more ...


Revision tags: llvmorg-18.1.3
# 258091e7 20-Mar-2024 Jie Fu <jiefu@tencent.com>

[mlir] Fix -Wunused-variable in XeGPUOps.cpp (NFC)

llvm-project/mlir/lib/Dialect/XeGPU/IR/XeGPUOps.cpp:47:8:
error: unused variable 'ty' [-Werror,-Wunused-variable]
auto ty = source.getType();

[mlir] Fix -Wunused-variable in XeGPUOps.cpp (NFC)

llvm-project/mlir/lib/Dialect/XeGPU/IR/XeGPUOps.cpp:47:8:
error: unused variable 'ty' [-Werror,-Wunused-variable]
auto ty = source.getType();
^
1 error generated.

show more ...


# 61b24c61 20-Mar-2024 Chao Chen <116223022+chencha3@users.noreply.github.com>

[MLIR][XeGPU] Adding XeGPU 2d block operators (#85804)

This PR adds XeGPU 2D block operators. It contains:
1. TensorDescType and TensorDescAttr definitions
2. MemoryScopeAttr and CacheHintAttr def

[MLIR][XeGPU] Adding XeGPU 2d block operators (#85804)

This PR adds XeGPU 2D block operators. It contains:
1. TensorDescType and TensorDescAttr definitions
2. MemoryScopeAttr and CacheHintAttr definitions which are used by
TensorDescAttr.
3. CreateNdDescOp, PrefetchNdOp, LoadNdOp, and StoreNdOp definitions,
and their corresponding testcases for illustration.

It cherry-picks daebe5c4f27ba140ac8d13abf41e3fe4db72b91a with asan fix.

---------

Co-authored-by: Mehdi Amini <joker.eph@gmail.com>

show more ...


Revision tags: llvmorg-18.1.2
# 8d142043 18-Mar-2024 Balaji V. Iyer <43187390+bviyer@users.noreply.github.com>

Revert "[MLIR][XeGPU] Adding XeGPU 2d block operators (#84692)" (#85653)

This reverts commit daebe5c4f27ba140ac8d13abf41e3fe4db72b91a.

This commit causes the following asan issue:

```
<snip>/

Revert "[MLIR][XeGPU] Adding XeGPU 2d block operators (#84692)" (#85653)

This reverts commit daebe5c4f27ba140ac8d13abf41e3fe4db72b91a.

This commit causes the following asan issue:

```
<snip>/llvm-project/build/bin/mlir-opt <snip>/llvm-project/mlir/test/Dialect/XeGPU/XeGPUOps.mlir | <snip>/llvm-project/build/bin/FileCheck <snip>/llvm-project/mlir/test/Dialect/XeGPU/XeGPUOps.mlir
# executed command: <snip>/llvm-project/build/bin/mlir-opt <snip>/llvm-project/mlir/test/Dialect/XeGPU/XeGPUOps.mlir
# .---command stderr------------
# | =================================================================
# | ==2772558==ERROR: AddressSanitizer: stack-use-after-return on address 0x7fd2c2c42b90 at pc 0x55e406d54614 bp 0x7ffc810e4070 sp 0x7ffc810e4068
# | READ of size 8 at 0x7fd2c2c42b90 thread T0
# | #0 0x55e406d54613 in operator()<long int const*> /usr/include/c++/13/bits/predefined_ops.h:318
# | #1 0x55e406d54613 in __count_if<long int const*, __gnu_cxx::__ops::_Iter_pred<mlir::verifyListOfOperandsOrIntegers(Operation*, llvm::StringRef, unsigned int, llvm::ArrayRef<long int>, ValueRange)::<lambda(int64_t)> > > /usr/include/c++/13/bits/stl_algobase.h:2125
# | #2 0x55e406d54613 in count_if<long int const*, mlir::verifyListOfOperandsOrIntegers(Operation*,
...
```

show more ...


# bfd1d95d 18-Mar-2024 Adrian Kuegel <akuegel@google.com>

[mlir] Fix unused variable error in builds with asserts enabled.


# daebe5c4 18-Mar-2024 Chao Chen <116223022+chencha3@users.noreply.github.com>

[MLIR][XeGPU] Adding XeGPU 2d block operators (#84692)

Hi @joker-eph, This PR adds XeGPU 2D block operators. It contains:
1. `TensorDescType` and `TensorDescAttr` definitions
2. `MemoryScopeAttr`

[MLIR][XeGPU] Adding XeGPU 2d block operators (#84692)

Hi @joker-eph, This PR adds XeGPU 2D block operators. It contains:
1. `TensorDescType` and `TensorDescAttr` definitions
2. `MemoryScopeAttr` and `CacheHintAttr` definitions which are used by
`TensorDescAttr`.
3. `CreateNdDescOp`, `PrefetchNdOp`, `LoadNdOp`, and `StoreNdOp`
definitions, and their corresponding testcases for illustration.

---------

Co-authored-by: Mehdi Amini <joker.eph@gmail.com>

show more ...


Revision tags: llvmorg-18.1.1
# 5669660f 07-Mar-2024 Chao Chen <116223022+chencha3@users.noreply.github.com>

[MLIR] XeGPU dialect for Intel GPU - core definitions and base classes (#78483)

This PR follows our previous [RFC
](https://discourse.llvm.org/t/rfc-add-xegpu-dialect-for-intel-gpus/75723)
to add

[MLIR] XeGPU dialect for Intel GPU - core definitions and base classes (#78483)

This PR follows our previous [RFC
](https://discourse.llvm.org/t/rfc-add-xegpu-dialect-for-intel-gpus/75723)
to add XeGPU dialect definition for Intel GPUs. It contains dialect,
type, attributes and operators definitions, as well as testcases for
semantic checks. The lowering and optimization passes will be issued
with separated passes.

---------

Co-authored-by: Mehdi Amini <joker.eph@gmail.com>

show more ...