'--source-path', help='path to source director for tensorlib', action='store', default='.') parser.add_option('-o', '--output-dependencies', help='only output a list of dependencies', action='store') parser.add_option('-n', '--no-cuda', action='store_true') options, files = parser.parse_args() if options.output_dependencies is not None: output_dependencies_file = open(options.output_dependencies, 'w') TEMPLATE_PATH = options.source_path + "/templates" GENERATOR_DERIVED = CodeTemplate.from_file(TEMPLATE_PATH + "/GeneratorDerived.h") STORAGE_DERIVED_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/StorageDerived.cpp") STORAGE_DERIVED_H = CodeTemplate.from_file(TEMPLATE_PATH + "/StorageDerived.h") TYPE_DERIVED_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeDerived.cpp") TYPE_DERIVED_H = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeDerived.h") TYPE_H = CodeTemplate.from_file(TEMPLATE_PATH + "/Type.h") TYPE_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/Type.cpp") TENSOR_DERIVED_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/TensorDerived.cpp") TENSOR_SPARSE_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/TensorSparse.cpp") TENSOR_DENSE_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/TensorDense.cpp") TENSOR_DERIVED_H = CodeTemplate.from_file(TEMPLATE_PATH + "/TensorDerived.h")
else: self.filenames.remove(filename) def check_all_files_written(self): if len(self.undeclared_files) > 0: raise Exception( "trying to write files {} which are not ".format(self.undeclared_files) + "in the list of outputs this script produces. " + "use will_write to add them.") if len(self.filenames) > 0: raise Exception("Outputs declared with 'will_write' were " + "never written: {}".format(self.filenames)) TEMPLATE_PATH = options.source_path + "/templates" GENERATOR_DERIVED = CodeTemplate.from_file( TEMPLATE_PATH + "/GeneratorDerived.h") STORAGE_DERIVED_CPP = CodeTemplate.from_file( TEMPLATE_PATH + "/StorageDerived.cpp") STORAGE_DERIVED_H = CodeTemplate.from_file(TEMPLATE_PATH + "/StorageDerived.h") TYPE_DERIVED_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeDerived.cpp") TYPE_DERIVED_H = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeDerived.h") TYPE_H = CodeTemplate.from_file(TEMPLATE_PATH + "/Type.h") TYPE_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/Type.cpp") TENSOR_DERIVED_CPP = CodeTemplate.from_file( TEMPLATE_PATH + "/TensorDerived.cpp") TENSOR_SPARSE_CPP = CodeTemplate.from_file( TEMPLATE_PATH + "/TensorSparse.cpp") TENSOR_DENSE_CPP = CodeTemplate.from_file( TEMPLATE_PATH + "/TensorDense.cpp")
else: self.filenames.remove(filename) def check_all_files_written(self): if len(self.undeclared_files) > 0: raise Exception("trying to write files {} which are not ".format( self.undeclared_files) + "in the list of outputs this script produces. " + "use will_write to add them.") if len(self.filenames) > 0: raise Exception("Outputs declared with 'will_write' were " + "never written: {}".format(self.filenames)) TEMPLATE_PATH = options.source_path + "/templates" TYPE_DERIVED_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeDerived.cpp") SPARSE_TYPE_DERIVED_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/SparseTypeDerived.cpp") TYPE_DERIVED_H = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeDerived.h") TYPE_DEFAULT_H = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeDefault.h") TYPE_DEFAULT_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeDefault.cpp") REGISTRATION_DECLARATIONS_H = CodeTemplate.from_file( TEMPLATE_PATH + "/RegistrationDeclarations.h") TENSOR_H = CodeTemplate.from_file(TEMPLATE_PATH + "/TensorBody.h") TENSOR_METHODS_H = CodeTemplate.from_file(TEMPLATE_PATH + "/TensorMethods.h") FUNCTIONS_H = CodeTemplate.from_file(TEMPLATE_PATH + "/Functions.h") LEGACY_TH_FUNCTIONS_H = CodeTemplate.from_file(TEMPLATE_PATH + "/LegacyTHFunctions.h")
else: self.filenames.remove(filename) def check_all_files_written(self): if len(self.undeclared_files) > 0: raise Exception( "trying to write files {} which are not ".format(self.undeclared_files) + "in the list of outputs this script produces. " + "use will_write to add them.") if len(self.filenames) > 0: raise Exception("Outputs declared with 'will_write' were " + "never written: {}".format(self.filenames)) TEMPLATE_PATH = options.source_path + "/templates" GENERATOR_DERIVED = CodeTemplate.from_file( TEMPLATE_PATH + "/GeneratorDerived.h") TYPE_DERIVED_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeDerived.cpp") SPARSE_TYPE_DERIVED_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/SparseTypeDerived.cpp") TYPE_DERIVED_H = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeDerived.h") TYPE_H = CodeTemplate.from_file(TEMPLATE_PATH + "/Type.h") TYPE_EXTENDED_INTERFACE_H = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeExtendedInterface.h") TYPE_DEFAULT_H = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeDefault.h") TYPE_DEFAULT_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeDefault.cpp") TYPE_EXTENSION_H = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeExtension.h") TYPE_EXTENSION_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeExtension.cpp") TYPE_EXTENSION_DERIVED_H = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeExtensionDerived.h") TYPE_EXTENSION_DERIVED_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeExtensionDerived.cpp") LEGACY_TH_DISPATCHER_H = CodeTemplate.from_file(TEMPLATE_PATH + "/LegacyTHDispatcher.h") LEGACY_TH_DISPATCHER_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/LegacyTHDispatcher.cpp") LEGACY_TH_DISPATCHER_DERIVED_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/LegacyTHDispatcherDerived.cpp")
else: self.filenames.remove(filename) def check_all_files_written(self): if len(self.undeclared_files) > 0: raise Exception("trying to write files {} which are not ".format( self.undeclared_files) + "in the list of outputs this script produces. " + "use will_write to add them.") if len(self.filenames) > 0: raise Exception("Outputs declared with 'will_write' were " + "never written: {}".format(self.filenames)) TEMPLATE_PATH = options.source_path + "/templates" GENERATOR_DERIVED = CodeTemplate.from_file(TEMPLATE_PATH + "/GeneratorDerived.h") STORAGE_DERIVED_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/StorageDerived.cpp") STORAGE_DERIVED_H = CodeTemplate.from_file(TEMPLATE_PATH + "/StorageDerived.h") TYPE_DERIVED_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeDerived.cpp") SPARSE_TYPE_DERIVED_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/SparseTypeDerived.cpp") TYPE_DERIVED_H = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeDerived.h") TYPE_H = CodeTemplate.from_file(TEMPLATE_PATH + "/Type.h") TYPE_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/Type.cpp") TENSOR_DERIVED_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/TensorDerived.cpp") TENSOR_DENSE_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/TensorDense.cpp")
else: self.filenames.remove(filename) def check_all_files_written(self): if len(self.undeclared_files) > 0: raise Exception("trying to write files {} which are not ".format( self.undeclared_files) + "in the list of outputs this script produces. " + "use will_write to add them.") if len(self.filenames) > 0: raise Exception("Outputs declared with 'will_write' were " + "never written: {}".format(self.filenames)) TEMPLATE_PATH = options.source_path + "/templates" TYPE_DERIVED_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeDerived.cpp") SPARSE_TYPE_DERIVED_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/SparseTypeDerived.cpp") TYPE_DERIVED_H = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeDerived.h") TYPE_DEFAULT_H = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeDefault.h") TYPE_DEFAULT_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeDefault.cpp") OPS_ALREADY_MOVED_TO_C10_CPP = CodeTemplate.from_file( TEMPLATE_PATH + "/OpsAlreadyMovedToC10.cpp") BACKEND_SELECT_REGISTER_CPP = CodeTemplate.from_file( TEMPLATE_PATH + "/BackendSelectRegister.cpp") TENSOR_H = CodeTemplate.from_file(TEMPLATE_PATH + "/TensorBody.h") TENSOR_METHODS_H = CodeTemplate.from_file(TEMPLATE_PATH + "/TensorMethods.h") FUNCTIONS_H = CodeTemplate.from_file(TEMPLATE_PATH + "/Functions.h") LEGACY_TH_FUNCTIONS_H = CodeTemplate.from_file(TEMPLATE_PATH +
else: self.filenames.remove(filename) def check_all_files_written(self): if len(self.undeclared_files) > 0: raise Exception("trying to write files {} which are not ".format( self.undeclared_files) + "in the list of outputs this script produces. " + "use will_write to add them.") if len(self.filenames) > 0: raise Exception("Outputs declared with 'will_write' were " + "never written: {}".format(self.filenames)) TEMPLATE_PATH = options.source_path + "/templates" TYPE_DERIVED_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeDerived.cpp") SPARSE_TYPE_DERIVED_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/SparseTypeDerived.cpp") TYPE_DERIVED_H = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeDerived.h") TYPE_DEFAULT_H = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeDefault.h") TYPE_DEFAULT_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeDefault.cpp") OPS_ALREADY_MOVED_TO_C10_CPP = CodeTemplate.from_file( TEMPLATE_PATH + "/OpsAlreadyMovedToC10.cpp") TENSOR_H = CodeTemplate.from_file(TEMPLATE_PATH + "/TensorBody.h") TENSOR_METHODS_H = CodeTemplate.from_file(TEMPLATE_PATH + "/TensorMethods.h") FUNCTIONS_H = CodeTemplate.from_file(TEMPLATE_PATH + "/Functions.h") LEGACY_TH_FUNCTIONS_H = CodeTemplate.from_file(TEMPLATE_PATH + "/LegacyTHFunctions.h")
parser.add_argument("--install_dir", default=".", help="where to put generated file") parser.add_argument("--aten_root", default="", help="root directory of aten") args, _ = parser.parse_known_args() if args.aten_root: if not os.path.exists(args.aten_root): raise ValueError('aten_root ({}) does not exist'.format( args.aten_root)) sys.path.append(os.path.join(args.aten_root, 'src', 'ATen')) from code_template import CodeTemplate as CT else: from src.ATen.code_template import CodeTemplate as CT OP_TEMPLATE = CT.from_file( os.path.join(args.template_dir, 'aten_op_template.h')) try: # use faster C loader if available from yaml import CLoader as Loader except ImportError: from yaml import Loader def write(filename, s): with open(filename, "w") as f: f.write(s) def read(filename): with open(filename, "r") as f:
# limitations under the License. ############################################################################## import sys import yaml project_root = sys.argv[1] sys.path.append(project_root + "/third_party/aten/src/ATen") from code_template import CodeTemplate as CT try: # use faster C loader if available from yaml import CLoader as Loader except ImportError: from yaml import Loader OP_TEMPLATE = CT.from_file(project_root+'/caffe2/contrib/aten/aten_op_template.h') def write(filename, s): with open(filename, "w") as f: f.write(s) def read(filename): with open(filename, "r") as f: return f.read() decls = yaml.load(read('aten/src/ATen/ATen/Declarations.yaml'), Loader=Loader) top_env = {
else: self.filenames.remove(filename) def check_all_files_written(self): if len(self.undeclared_files) > 0: raise Exception("trying to write files {} which are not ".format( self.undeclared_files) + "in the list of outputs this script produces. " + "use will_write to add them.") if len(self.filenames) > 0: raise Exception("Outputs declared with 'will_write' were " + "never written: {}".format(self.filenames)) TEMPLATE_PATH = options.source_path + "/templates" GENERATOR_DERIVED = CodeTemplate.from_file(TEMPLATE_PATH + "/GeneratorDerived.h") TYPE_DERIVED_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeDerived.cpp") SPARSE_TYPE_DERIVED_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/SparseTypeDerived.cpp") TYPE_DERIVED_H = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeDerived.h") TYPE_H = CodeTemplate.from_file(TEMPLATE_PATH + "/Type.h") TYPE_EXTENDED_INTERFACE_H = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeExtendedInterface.h") TYPE_DEFAULT_H = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeDefault.h") TYPE_DEFAULT_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeDefault.cpp") REGISTER_CPU_H = CodeTemplate.from_file(TEMPLATE_PATH + "/RegisterCPU.h") REGISTER_CPU_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/RegisterCPU.cpp") REGISTER_CUDA_H = CodeTemplate.from_file(TEMPLATE_PATH + "/RegisterCUDA.h") REGISTER_CUDA_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/RegisterCUDA.cpp")
parser.add_argument("--output_prefix", default="", help="") parser.add_argument( "--install_dir", default=".", help="where to put generated file") parser.add_argument("--aten_root", default="", help="root directory of aten") args, _ = parser.parse_known_args() if args.aten_root: if not os.path.exists(args.aten_root): raise ValueError('aten_root ({}) does not exist'.format( args.aten_root)) sys.path.append(os.path.join(args.aten_root, 'src', 'ATen')) from code_template import CodeTemplate as CT else: from src.ATen.code_template import CodeTemplate as CT OP_TEMPLATE = CT.from_file( os.path.join(args.template_dir, 'aten_op_template.h')) try: # use faster C loader if available from yaml import CLoader as Loader except ImportError: from yaml import Loader def write(filename, s): with open(filename, "w") as f: f.write(s) def read(filename):
# http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. ############################################################################## import sys import yaml from copy import deepcopy project_root = sys.argv[1] sys.path.append(project_root + "/third_party/aten/src/ATen") from code_template import CodeTemplate as CT OP_TEMPLATE = CT.from_file(project_root + '/caffe2/contrib/aten/aten_op_template.h') try: # use faster C loader if available from yaml import CLoader as Loader except ImportError: from yaml import Loader def write(filename, s): with open(filename, "w") as f: f.write(s) def read(filename): with open(filename, "r") as f:
else: self.filenames.remove(filename) def check_all_files_written(self): if len(self.undeclared_files) > 0: raise Exception( "trying to write files {} which are not ".format(self.undeclared_files) + "in the list of outputs this script produces. " + "use will_write to add them.") if len(self.filenames) > 0: raise Exception("Outputs declared with 'will_write' were " + "never written: {}".format(self.filenames)) TEMPLATE_PATH = options.source_path + "/templates" GENERATOR_DERIVED = CodeTemplate.from_file( TEMPLATE_PATH + "/GeneratorDerived.h") TYPE_DERIVED_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeDerived.cpp") SPARSE_TYPE_DERIVED_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/SparseTypeDerived.cpp") TYPE_DERIVED_H = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeDerived.h") TYPE_H = CodeTemplate.from_file(TEMPLATE_PATH + "/Type.h") TYPE_EXTENDED_INTERFACE_H = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeExtendedInterface.h") TYPE_DEFAULT_H = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeDefault.h") TYPE_DEFAULT_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeDefault.cpp") TYPE_EXTENSION_H = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeExtension.h") TYPE_EXTENSION_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/TypeExtension.cpp") LEGACY_TH_DISPATCHER_H = CodeTemplate.from_file(TEMPLATE_PATH + "/LegacyTHDispatcher.h") LEGACY_TH_DISPATCHER_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/LegacyTHDispatcher.cpp") LEGACY_TH_DISPATCHER_DERIVED_CPP = CodeTemplate.from_file(TEMPLATE_PATH + "/LegacyTHDispatcherDerived.cpp") LEGACY_TH_DISPATCHER_DERIVED_H = CodeTemplate.from_file(TEMPLATE_PATH + "/LegacyTHDispatcherDerived.h")