-
- Downloads
[BACKEND] initial llvm codegen for amdgpu (#402)
* added initial llvm codegen for amdgpu * fixed whitespace * fixed hsaco gen from ir * fixed targetmachine for rocm and added GetSource for rocm * fixed whitespace issues * changed statement to use less than 100 lines * added intrinsics for workgroup - rocm * whitespace - newline error fix * fixed error msg for workitem-workgroup intrinsics * added llvm ir dump for rocm codegen * [ROCM] changed codegen to emit proper amdgpu kernel header * fixed whitespace error * fixed whitespace error- 2 * fixed AddFunction to not to use extra arg 1. Changed AddFunctionInternal to not to take extra arg for target type 2. Use Target from CodeGenLLVM to check for AMDGPU target * fixed whitespaces * fixed whitespaces 2 * fixed codegen for AMDGPU - now generating valid IR * fixed codegen depending on code review * reviewed alignment for amd devices * added code to dump code object to file * fixed cpplint errors * print out IR after pass manager * added code to dump asm, obj to file and std string * fixed whitespaces * Update codegen_amdgpu.cc * used registry for amdgpu llvm * Fixed whitespaces * added code for calling linker * fixed formatting errors * added rocm link python interface * fixed pylint issues and added more body to the function * added doc string * added doc string for module * fixed python code after review, fixed llvm object codegen * fixed linker to generate code object * removed dumping to output file and debugging log out * fixed lint for python code * added fault check after running linker * removed print statement in rocm.py * changed rocm lld linker to raise runtimeerror than emitting error log to stderr * changed the way linker command line is pass to subprocess.popen * removed redundant code and reuse tvm utils * removed commented out code * removed cloning of unused modules, and put IR into string
Showing
- dmlc-core 1 addition, 1 deletiondmlc-core
- python/tvm/__init__.py 1 addition, 0 deletionspython/tvm/__init__.py
- python/tvm/_ffi/ndarray.py 2 additions, 0 deletionspython/tvm/_ffi/ndarray.py
- python/tvm/contrib/rocm.py 50 additions, 0 deletionspython/tvm/contrib/rocm.py
- src/codegen/llvm/codegen_amdgpu.cc 188 additions, 0 deletionssrc/codegen/llvm/codegen_amdgpu.cc
- src/codegen/llvm/codegen_llvm.cc 5 additions, 1 deletionsrc/codegen/llvm/codegen_llvm.cc
- src/codegen/llvm/codegen_llvm.h 4 additions, 0 deletionssrc/codegen/llvm/codegen_llvm.h
- src/runtime/module.cc 2 additions, 0 deletionssrc/runtime/module.cc
- src/runtime/rocm/rocm_module.cc 9 additions, 1 deletionsrc/runtime/rocm/rocm_module.cc
- tests/python/integration/test_gemm.py 2 additions, 0 deletionstests/python/integration/test_gemm.py
- tests/python/unittest/test_codegen_device.py 1 addition, 0 deletionstests/python/unittest/test_codegen_device.py
Loading
Please register or sign in to comment