Skip to content
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

Intel gpu backend gemm pipeline #89

Merged
Merged
Show file tree
Hide file tree
Changes from 15 commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
07f36e5
apply patch of gemm pipeline
Jiaxingla Jul 3, 2024
d4cf3eb
fix format of copyright
Jiaxingla Jul 10, 2024
665f9be
replace the macro of cache flush and idx
Jiaxingla Jul 10, 2024
59c0ce4
auto format
Jiaxingla Jul 11, 2024
bdadf1e
auto format
Jiaxingla Jul 11, 2024
9e23cd6
fix comments about prefetch
Jiaxingla Jul 14, 2024
60adb24
fix comments of enum and sycl macro
Jiaxingla Jul 15, 2024
1e3f855
update from tensor library repo
Jiaxingla Jul 15, 2024
8e951d1
fix format
Jiaxingla Jul 15, 2024
c92adb3
rm redundancy code
Jiaxingla Jul 15, 2024
6bdda75
resolve conflict
Jiaxingla Jul 16, 2024
3496593
revert the change of nv hpp
Jiaxingla Jul 17, 2024
69d5c2a
Restore invalid changes
Jiaxingla Jul 17, 2024
962766b
refine gemm interface will codeplay epilogue
Jiaxingla Jul 18, 2024
7739df6
fix the issue of batch gemm
Jiaxingla Jul 18, 2024
5b1f514
rm epilogue and revert gemm example
Jiaxingla Jul 23, 2024
f5e23e8
only keep code changes of gemm
Jiaxingla Jul 25, 2024
1c57c36
comments clean
Jiaxingla Jul 26, 2024
13ae1a1
rebase other examples
Jiaxingla Jul 26, 2024
fdb7244
rm vnni_matrix func
Jiaxingla Jul 26, 2024
d09da29
code clean
Jiaxingla Jul 26, 2024
5a3d227
define N-major tensor
Jiaxingla Jul 29, 2024
b50574a
delete useless header
Jiaxingla Jul 30, 2024
2c6d1ba
more comments
Jiaxingla Jul 30, 2024
c97ccd8
modify comments
Jiaxingla Jul 30, 2024
ede5c03
Update pvc_gemm
Jiaxingla Jul 31, 2024
f9aae6f
Update mma_xe
Jiaxingla Jul 31, 2024
7878a7c
more comments
Jiaxingla Jul 31, 2024
4c42645
code clean
Jiaxingla Jul 31, 2024
abbbe4f
fix typo
Jiaxingla Jul 31, 2024
8e9a84f
revert the change of copy_atom
Jiaxingla Jul 31, 2024
ea30c83
rename enum of LSC_LDCC
Jiaxingla Aug 1, 2024
043fbea
fix typo
Jiaxingla Aug 1, 2024
abf38bd
scope enums
Jiaxingla Aug 1, 2024
5193329
modify commment of copy
Jiaxingla Aug 2, 2024
b854995
remove useless copy
Jiaxingla Aug 2, 2024
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
40 changes: 40 additions & 0 deletions build.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
script_dir=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
Copy link
Collaborator

Choose a reason for hiding this comment

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

Could you please delete this build.sh file,

Copy link
Collaborator

Choose a reason for hiding this comment

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

For context, the changes on this branch are meant to be for the general public and should not include code or configurations specific to an internal setup or internal development.

If, for whatever reason, the example needs a particular configuration, it should be done via CMake rather than .sh files

cp ${script_dir}/tools/clang-format/clang-format.hook ${script_dir}/.git/hooks/pre-commit
chmod +x ${script_dir}/.git/hooks/pre-commit

# https://github.com/intel/llvm/releases/tag/nightly-2024-07-03
sycl_compiler_path=/opt/cutlass/compiler/0703/

# https://ubit-gfx.intel.com/build/19168301/artifacts
gpu_driver_path=/opt/cutlass/gpu_driver/gfx-driver-ci-comp_igc-25012/extract/

# AOT compile
output=intel_gpu_pvc
# jit compile
#output=spir64

unset epilogue

# epilogue relu
# epilogue+=" -DEPILOGUE_RELU "

# epilogue softmax
# epilogue+=" -DEPILOGUE_SOFTMAX "

export ZE_AFFINITY_MASK=0
export CPATH=$sycl_compiler_path:$sycl_compiler_path/include/:$sycl_compiler_path/include/sycl/
export LIBRARY_PATH=$gpu_driver_path/usr/lib/x86_64-linux-gnu/:$sycl_compiler_path/lib/
export LD_LIBRARY_PATH=$LIBRARY_PATH
export IGC_EnableVISANoSchedule=1
export IGC_ShaderDumpEnable=1
export IGC_DumpToCustomDir=./mm_dumps
export IGC_VATemp=1
export ONEAPI_DEVICE_SELECTOR=level_zero:gpu

target=./examples/sycl/pvc/pvc_bfloat_dpas_gemm_cute
rm -rf *

cmake .. -G Ninja -DCMAKE_CUDA_HOST_COMPILER=${sycl_compiler_path}/bin/clang++ \
-DCUTLASS_ENABLE_SYCL=ON -DDPCPP_SYCL_TARGET=$output -DCMAKE_CXX_COMPILER=${sycl_compiler_path}/bin/clang++ \
-DCMAKE_CXX_FLAGS=" -DPREFETCH_DEFAULT -DSYCL_INTEL_TARGET ${epilogue} " \
&& ninja -v $target && $target
Loading
Loading