SIGN IN SIGN UP
PaddlePaddle / Paddle UNCLAIMED

PArallel Distributed Deep LEarning: Machine Learning Framework from Industrial Practice (『飞桨』核心框架,深度学习&机器学习高性能单机、分布式训练和跨平台部署)

0 0 32 C++
Implement abstract pass and paddle compiler collection api. (#71119) * abstract pass initial commit * remove unused index_expr code * Fix compiling error on CI. * Change the log level. * Rename ap_lower_fusion_op_pass to ap_generic_drr_pass. * Rename ap_unary -> ap_variadic, ApUnary -> ApVariadic. * Fallback to cinn when ap fails, and disable fuse_gemm_epilogue when ap is enabled. * Fix compiling error in CI, including: using std::memcpy instead of reinterpret_cast to avoid strict-aliasing. * Fix narrowing conversion error and unused value error. * Fix missing-field-initializers and unused-result error on CI. * Fix some sign-compare error on CI. * Add cmake dependent. * Fix some using statement without creating an alias. * Support experimental/type_traits for WIN32. * Fix an unused-but-set-parameter and remove the `typename` in using statement added by previous commit. * Disable AP when cinn is not enabled. * Remove the use of Reciprocal because Reciprocal is deleted by #70376. * Fix "basic_string::_M_construct null not valid" error. * Fix typo. * Support meticulous matching (with input/outoput number). Submit by hxzd5568. * remove redundant sentence * Using void* as StreamT. * Fix compiling error related to std::optional<StreamT> on gcc12. * support no-extra-use for temporary ir value in source pattern * minor fix * minor fix * Return the address of stream instead. * support paddle.cc.* * fix adt::WeakPtrLock bug * rename all non python standard api's to __builtin__xxx * move paddle.cc into paddle.incubate.cc * Add pcc to setup.py. * Add missing modules and return partial_program_layer directly in pcc.compile. * Fix the mismatched output numerical order issue * Remove force_register_fusion related codes in pcc api. * Add an argument train. * Add pcc to setup.py. --------- Co-authored-by: Liu Yiqun <liuyiqun01@baidu.com> Co-authored-by: hxzd5568 <3257591325@qq.com>
2025-04-25 10:50:56 +08:00
// Copyright (c) 2024 PaddlePaddle Authors. All Rights Reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// 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.
#pragma once
#include "paddle/ap/include/axpr/method_class.h"
#include "paddle/ap/include/axpr/naive_class_ops.h"
#include "paddle/ap/include/axpr/value.h"
#include "paddle/ap/include/code_module/code_module.h"
#include "paddle/ap/include/code_module/func_declare.h"
#include "paddle/ap/include/code_module/source_code.h"
namespace ap::code_module {
axpr::TypeImpl<axpr::BuiltinClassInstance<axpr::Value>> GetCodeModuleClass();
} // namespace ap::code_module