diff --git a/hpvm/lib/Transforms/DFG2LLVM_CUDNN/DFG2LLVM_CUDNN.cpp b/hpvm/lib/Transforms/DFG2LLVM_CUDNN/DFG2LLVM_CUDNN.cpp index bd26a92fd343ce2057e5ab9c32c412681aef9da9..4653ad0f8a4c4ddd8d76e984b1750d9f94d813a9 100644 --- a/hpvm/lib/Transforms/DFG2LLVM_CUDNN/DFG2LLVM_CUDNN.cpp +++ b/hpvm/lib/Transforms/DFG2LLVM_CUDNN/DFG2LLVM_CUDNN.cpp @@ -1,4 +1,4 @@ -//=== DFG2LLVM_CUDNN.cpp ===// +//===------------------------- DFG2LLVM_CUDNN.cpp ------------------------ ===// // // The LLVM Compiler Infrastructure // @@ -6,6 +6,14 @@ // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// +// +// This pass replaces the tensor operations in HPVM with appropriate API to +// the runtime, which leverages CuDNN library for implementing the supported +// tensor operations. +// +//===----------------------------------------------------------------------===// + + #define ENABLE_ASSERTS #define DEBUG_TYPE "DFG2LLVM_CUDNN" diff --git a/hpvm/lib/Transforms/DFG2LLVM_WrapperAPI/DFG2LLVM_WrapperAPI.cpp b/hpvm/lib/Transforms/DFG2LLVM_WrapperAPI/DFG2LLVM_WrapperAPI.cpp index b400c12021d2df712ea0bbd04f03dbe8724abc75..3fa6860b9c7cb12b2f76c22196fa744cd052c2bb 100644 --- a/hpvm/lib/Transforms/DFG2LLVM_WrapperAPI/DFG2LLVM_WrapperAPI.cpp +++ b/hpvm/lib/Transforms/DFG2LLVM_WrapperAPI/DFG2LLVM_WrapperAPI.cpp @@ -1,4 +1,4 @@ -//=== DFG2LLVM_WrapperAPI.cpp ===// +//===------------------------- DFG2LLVM_Wrapper.cpp --------------------- ===// // // The LLVM Compiler Infrastructure // @@ -6,6 +6,15 @@ // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// +// +// This pass is responsible for "fusing" multiple tensor operations in HPVM +// nodes so that the appropriate set of operations are replaced with a single +// call to a runtime routine. This allows the HPVM IR to represent a graph +// with tensor operations in a target-agnostic manner. +// +//===----------------------------------------------------------------------===// + + #define ENABLE_ASSERTS #define DEBUG_TYPE "DFG2LLVM_WrapperAPI" diff --git a/hpvm/lib/Transforms/FuseHPVMTensorNodes/FuseHPVMTensorNodes.cpp b/hpvm/lib/Transforms/FuseHPVMTensorNodes/FuseHPVMTensorNodes.cpp index bb793dab6e0be854a9f102f968b493f146449e4e..6b51d731fe23943fd832de95616945499f75f670 100644 --- a/hpvm/lib/Transforms/FuseHPVMTensorNodes/FuseHPVMTensorNodes.cpp +++ b/hpvm/lib/Transforms/FuseHPVMTensorNodes/FuseHPVMTensorNodes.cpp @@ -1,4 +1,4 @@ -//=== FuseHPVMTensorNodes.cpp ===// +//===------------------------- FuseHPVMTensorNodes.cpp ------------------- ===// // // The LLVM Compiler Infrastructure // @@ -6,6 +6,16 @@ // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// +// +// This pass is uses fuses HPVM nodes based on the tensor operations contained +// the nodes. This helps create the groundwork for indicating to the compiler +// that a set of tensor operations in a node are fusionable and it can have +// implications on performance and energy consumption of set of tensor +// operations in question. +// +//===----------------------------------------------------------------------===// + + #define DEBUG_TYPE "FuseTensorNodes"