[WIP] Use the selective build path to reduce number of source files (~1800 -> ~1400).

pull/1314/head
max 2022-08-29 19:09:38 -05:00
parent 0f40d98009
commit bfc0a15dbb
2 changed files with 748 additions and 1 deletions

View File

@ -67,6 +67,12 @@ build_pytorch() {
fi
fi
BUILD_CUSTOM_PROTOBUF=OFF \
BUILD_LAZY_TS_BACKEND=ON \
BUILD_LITE_INTERPRETER=0 \
SELECTED_OP_LIST="$SRC_ROOT/build_tools/lightweight_dispatch_ops.yaml" \
STATIC_DISPATCH_BACKEND="CPU" \
USE_LIGHTWEIGHT_DISPATCH=1 \
BUILD_SHARED_LIBS=ON \
BUILD_CAFFE2_OPS=OFF \
INTERN_BUILD_ATEN_OPS=OFF \
@ -86,7 +92,7 @@ build_pytorch() {
USE_ITT=OFF \
USE_DISTRIBUTED=OFF \
USE_EIGEN_FOR_BLAS=OFF \
USE_FBGEMM=ON \
USE_FBGEMM=OFF \
USE_GLOO=OFF \
USE_KINETO=ON \
USE_MKL=OFF \

View File

@ -0,0 +1,741 @@
# torch-mlir ops start
- aten::tanh
- aten::hardtanh
- aten::relu
- aten::leaky_relu
- aten::log
- aten::sigmoid
- aten::hardsigmoid
- aten::hardswish
- aten::erf
- aten::silu
- aten::sin
- aten::exp
- aten::expm1
- aten::cos
- aten::atan2
- aten::neg
- aten::floor
- aten::ceil
- aten::bitwise_not
- aten::div.Tensor
- aten::logical_or
- aten::lerp.Tensor
- aten::eq.Tensor
- aten::gt.Tensor
- aten::lt.Tensor
- aten::ne.Tensor
- aten::div.Scalar
- aten::ne.Scalar
- aten::eq.Scalar
- aten::gt.Scalar
- aten::ge.Scalar
- aten::lt.Scalar
- aten::le.Scalar
- aten::fmod.Scalar
- aten::masked_fill.Scalar
- aten::masked_fill.Tensor
- aten::clamp
- aten::clamp_min
- aten::clamp_max
- aten::log2
- aten::sqrt
- aten::log1p
- aten::rsqrt
- aten::abs
- aten::reciprocal
- aten::bitwise_and.Tensor
- aten::threshold
- aten::square
- aten::unsqueeze
- aten::zero
- aten::div.Tensor_mode
- aten::mul.Tensor
- aten::add.Tensor
- aten::sub.Tensor
- aten::add.Scalar
- aten::sub.Scalar
- aten::mul.Scalar
- aten::addcmul
- aten::addcdiv
- aten::maximum
- aten::minimum
- aten::rsub.Scalar
- aten::gelu
- aten::pow.Tensor_Scalar
- aten::threshold_backward
- aten::floor_divide
- aten::softplus
- aten::fill_.Scalar
- aten::uniform_
- aten::rand_like
- aten::bernoulli
- aten::bernoulli_.float
- aten::bernoulli_.Tensor
- aten::triu
- aten::index_put
- aten::index_put.hacked_twin
- aten::linear
- aten::mm
- aten::addmm
- aten::matmul
- aten::conv2d
- aten::conv_transpose1d
- aten::conv_transpose2d.input
- aten::conv_transpose3d.input
- aten::convolution
- aten::convolution_overrideable
- aten::_convolution
- aten::_convolution.deprecated
- aten::roll
- aten::flip
- aten::native_batch_norm
- aten::batch_norm
- aten::layer_norm
- aten::native_layer_norm
- aten::max_pool2d
- aten::max_pool2d_with_indices
- aten::max_pool2d_with_indices_backward
- aten::avg_pool2d
- aten::softmax.int
- aten::log_softmax.int
- aten::_log_softmax
- aten::adaptive_avg_pool2d
- aten::topk
- aten::transpose.int
- aten::permute
- aten::bmm
- aten::cumsum
- aten::floor_divide.Scalar
- aten::logsumexp
- aten::mean.dim
- aten::__and__.Tensor
- aten::_softmax
- aten::mean
- aten::std
- aten::std.dim
- aten::var
- aten::var.dim
- aten::var.correction
- aten::nll_loss_forward
- aten::nll_loss_backward
- aten::bincount
- aten::linalg_vector_norm
- aten::constant_pad_nd
- aten::pad
- aten::squeeze.dim
- aten::squeeze
- aten::flatten.using_ints
- aten::dim
- aten::size
- aten::Bool.Tensor
- aten::is_floating_point
- aten::ones
- aten::new_ones
- aten::zeros
- aten::new_zeros
- aten::tensor
- aten::tensor.bool
- aten::tensor.int
- aten::_shape_as_tensor
- aten::all
- aten::all.bool
- aten::any
- aten::any.dim
- aten::arange
- aten::arange.start
- aten::arange.start_step
- aten::arange.start_out
- aten::argmax
- aten::bucketize.Tensor
- aten::clone
- aten::contiguous
- aten::copy_
- aten::_to_copy
- aten::detach
- aten::embedding
- aten::embedding_bag.padding_idx
- aten::_embedding_bag
- aten::empty_like
- aten::new_empty
- aten::zeros_like
- aten::ones_like
- aten::empty.memory_format
- aten::expand
- aten::expand_as
- aten::broadcast_to
- aten::index.Tensor
- aten::index_select
- aten::_index_put_impl_
- aten::item
- aten::masked_select
- aten::numel
- aten::repeat
- aten::reshape
- aten::_reshape_alias
- aten::resize_
- aten::select.int
- aten::size.int
- aten::stack
- aten::sum
- aten::sum.dim_IntList
- aten::max
- aten::max.dim
- aten::to.dtype
- aten::to.dtype_layout
- aten::to.other
- aten::to.prim_Device
- aten::to.device
- aten::type_as
- aten::view
- aten::_unsafe_view
- aten::where.self
- aten::where.Scalar
- aten::where.ScalarOther
- aten::where.ScalarSelf
- aten::slice.Tensor
- aten::len.Tensor
- aten::cpu
- aten::gather
- aten::scatter_add
- aten::IntImplicit
- aten::tensor.float
- aten::Int.Tensor
- aten::Float.Tensor
- aten::dropout
- aten::native_dropout
- aten::t
- aten::numpy_T
- aten::full
- aten::full_like
- aten::baddbmm
- aten::alias_copy
- aten::as_strided_copy
- aten::diagonal_copy
- aten::expand_copy
- aten::permute_copy
- aten::_reshape_alias_copy
- aten::select_copy.int
- aten::detach_copy
- aten::slice_copy.Tensor
- aten::squeeze_copy
- aten::squeeze_copy.dim
- aten::t_copy
- aten::transpose_copy.int
- aten::unsqueeze_copy
- aten::view_copy
- aten::view_copy.dtype
- aten::unfold_copy
- aten::select_scatter
- aten::slice_scatter
- aten::diagonal_scatter
- aten::as_strided_scatter
- aten::__contains__.str
- aten::__contains__.int_list
- aten::__getitem__.Dict_str
- aten::_set_item.str
- aten::keys.str
- aten::get_str
- aten::Delete.Dict_str
- aten::cat
- aten::append.t
- aten::add.t
- aten::eq.int_list
- aten::list.t
- aten::slice.t
- aten::insert.t
- aten::ne.int_list
- aten::any.bool
- aten::add.str
- aten::eq.str
- aten::len.str
- aten::str
- aten::format
- aten::join
- aten::Float.Scalar
- aten::Float.str
- aten::Int.float
- aten::Int.Scalar
- aten::__range_length
- aten::__derive_index
- aten::gt.int
- aten::ge.int
- aten::lt.int
- aten::le.int
- aten::ne.int
- aten::eq.int
- aten::floordiv.int
- aten::remainder.int
- aten::remainder.Scalar
- aten::add.int
- aten::sub.int
- aten::mul.int
- aten::neg.int
- aten::log.int
- aten::add.float_int
- aten::sub.float
- aten::mul.float
- aten::div.float
- aten::neg.float
- aten::eq.float
- aten::gt.float
- aten::ge.float
- aten::lt.float
- aten::lt.float_int
- aten::ge.float_int
- aten::ne.float_int
- aten::gt.float_int
- aten::__and__.bool
- aten::ne.bool
- aten::__is__
- aten::__isnot__
- aten::__not__
- aten::len.t
- aten::__getitem__.t
- aten::_set_item.t
- aten::div
- aten::add
- aten::sqrt.int
- aten::Bool.float
- aten::Bool.int
- aten::eq.device
- aten::ceil.float
- aten::narrow
- aten::ScalarImplicit
- aten::_softmax_backward_data
- aten::tanh_backward
- aten::gelu_backward
- aten::_log_softmax_backward_data
- aten::native_layer_norm_backward
- aten::embedding_dense_backward
- aten::native_batch_norm_backward
- aten::native_dropout_backward
- prim::layout
- prim::TupleIndex
- prim::device
- prim::dtype
- prim::TupleUnpack
- prim::NumToTensor.Scalar
- prim::min.self_int
- prim::min.int
- prim::max.self_int
- prim::max.int
- prim::RaiseException
- prim::Uninitialized
- prim::unchecked_cast
- prim::Print
- prim::tolist
- prim::abs.Scalar
# torch-mlir ops end
- aten::__maybe_broadcast
- aten::_adaptive_avg_pool2d
- aten::_adaptive_avg_pool3d
- aten::_broadcast_shapes
- aten::_check_close_args
- aten::_check_stack_inputs
- aten::_copysign
- aten::_dim_var_dispatch
- aten::_euclidean_dist
- aten::_fft_c2c
- aten::_fft_c2r
- aten::_fft_c2r.out
- aten::_fft_r2c
- aten::_floor_divide
- aten::_floor_divide_float
- aten::_floor_divide_integer
- aten::_fused_dropout
- aten::_get_tril_sizes
- aten::_get_triu_sizes
- aten::_heaviside
- aten::_lcm
- aten::_log_softmax
- aten::_log_softmax_backward_data
- aten::_logical_and
- aten::_logical_or
- aten::_logical_xor
- aten::_make_elementwise_binary_reference
- aten::_make_elementwise_unary_reference
- aten::_make_r_binary_op
- aten::_maybe_broadcast
- aten::_neg_meta
- aten::_normalize
- aten::_pin_memory
- aten::_pin_memory.out
- aten::_pow
- aten::_reduction
- aten::_ref
- aten::_reshape_alias
- aten::_reshape_view_helper
- aten::_resize_output
- aten::_resize_output.out
- aten::_resize_output_
- aten::_softmax
- aten::_softmax_backward_data
- aten::_sparse_coo_tensor_with_dims_and_tensors
- aten::_to_copy
- aten::_to_copy False
- aten::_trilu_checks
- aten::_trunc_divide
- aten::_unsqueeze_atleast
- aten::abs
- aten::acos
- aten::acosh
- aten::add
- aten::addbmm
- aten::addbmm.out
- aten::addcdiv
- aten::addcmul
- aten::addmm
- aten::addr
- aten::alias
- aten::all
- aten::allclose
- aten::amax
- aten::amin
- aten::angle
- aten::angle.out
- aten::any
- aten::arange
- aten::arange.start
- aten::arange.start_step
- aten::as_strided
- aten::asin
- aten::asinh
- aten::atan
- aten::atan2
- aten::atanh
- aten::atleast_1d
- aten::atleast_2d
- aten::atleast_3d
- aten::binary_cross_entropy
- aten::binary_cross_entropy_backward
- aten::bitwise_and
- aten::bitwise_left_shift
- aten::bitwise_left_shift # prim/aten name mismatch
- aten::bitwise_not
- aten::bitwise_or
- aten::bitwise_right_shift
- aten::bitwise_right_shift # prim/aten name mismatch
- aten::bitwise_xor
- aten::broadcast_shapes
- aten::broadcast_tensors
- aten::broadcast_to
- aten::cat
- aten::ceil
- aten::celu
- aten::chunk
- aten::clamp
- aten::clamp_max
- aten::clamp_min
- aten::clone
- aten::col2im_backward
- aten::column_stack
- aten::conj
- aten::conj_physical
- aten::constant_pad_nd
- aten::contiguous
- aten::convolution
- aten::copy_to
- aten::copysign
- aten::cos
- aten::cosh
- aten::cudnn_batch_norm
- aten::cudnn_batch_norm_backward
- aten::diag
- aten::diag.out
- aten::diag_embed
- aten::diagonal
- aten::diagonal_backward
- aten::digamma
- aten::div
- aten::dot
- aten::dropout
- aten::dsplit
- aten::dstack
- aten::elu
- aten::elu_backward
- aten::embedding
- aten::embedding_dense_backward
- aten::empty
- aten::empty_like
- aten::empty_like.out
- aten::empty_strided
- aten::eq
- aten::equal
- aten::erf
- aten::erfc
- aten::erfinv
- aten::exp
- aten::exp2
- aten::expand
- aten::expm1
- aten::eye
- aten::fft_fft
- aten::fft_fft2
- aten::fft_fftn
- aten::fft_fftshift
- aten::fft_hfft
- aten::fft_hfft2
- aten::fft_hfftn
- aten::fft_ifft
- aten::fft_ifft2
- aten::fft_ifftn
- aten::fft_ifftshift
- aten::fft_ihfft
- aten::fft_ihfft2
- aten::fft_ihfftn
- aten::fft_irfft
- aten::fft_irfft2
- aten::fft_irfftn
- aten::fft_rfft
- aten::fft_rfft2
- aten::fft_rfftn
- aten::fill
- aten::fill_
- aten::flatten
- aten::flip
- aten::fliplr
- aten::flipud
- aten::float_power
- aten::floor
- aten::floor_divide
- aten::fmax
- aten::fmin
- aten::fmod
- aten::frac
- aten::full
- aten::full_like
- aten::full_like.out
- aten::gcd
- aten::ge
- aten::gelu
- aten::gelu_backward
- aten::glu
- aten::glu_backward
- aten::gt
- aten::hardshrink
- aten::hardshrink_backward
- aten::hardsigmoid
- aten::hardsigmoid_backward
- aten::hardswish
- aten::hardswish_backward
- aten::hardtanh
- aten::hardtanh_backward
- aten::heaviside
- aten::hinge_embedding_loss
- aten::hsplit
- aten::hstack
- aten::huber_loss
- aten::huber_loss_backward
- aten::hypot
- aten::i0
- aten::igamma
- aten::igammac
- aten::im2col_backward
- aten::imag
- aten::index.Tensor
- aten::index_put
- aten::index_put_
- aten::index_select
- aten::index_select.out
- aten::inner
- aten::is_pinned
- aten::is_same_size
- aten::isclose
- aten::isfinite
- aten::isinf
- aten::isnan
- aten::isneginf
- aten::isposinf
- aten::item
- aten::l1_loss
- aten::lcm
- aten::le
- aten::leaky_relu
- aten::leaky_relu_backward
- aten::lgamma
- aten::lift
- aten::lift_fresh
- aten::linalg_eigh
- aten::linalg_vector_norm
- aten::linspace
- aten::log
- aten::log10
- aten::log1p
- aten::log2
- aten::log_sigmoid_backward
- aten::log_sigmoid_forward
- aten::log_softmax
- aten::logical_and
- aten::logical_not
- aten::logical_or
- aten::logical_xor
- aten::logit
- aten::logit_backward
- aten::logspace
- aten::logsumexp
- aten::lt
- aten::margin_ranking_loss
- aten::masked_fill
- aten::masked_fill.Scalar
- aten::masked_fill.Tensor
- aten::max
- aten::maximum
- aten::mean
- aten::meshgrid
- aten::min
- aten::minimum
- aten::mish
- aten::mish_backward
- aten::movedim
- aten::mse_loss
- aten::mse_loss_backward
- aten::mul
- aten::nan_to_num
- aten::nanmedian
- aten::nanmedian.dim
- aten::nanmedian.dim_values
- aten::nansum
- aten::nansum.out
- aten::narrow
- aten::native_batch_norm
- aten::native_batch_norm_backward
- aten::native_dropout
- aten::native_dropout_backward
- aten::native_group_norm
- aten::native_group_norm_backward
- aten::native_layer_norm
- aten::native_layer_norm_backward
- aten::ne
- aten::neg
- aten::nested_tensor
- aten::nested_tensor.out
- aten::new_empty
- aten::new_empty.out
- aten::new_empty_strided
- aten::new_empty_strided.out
- aten::new_full
- aten::new_full.out
- aten::new_ones
- aten::new_ones.out
- aten::new_zeros
- aten::new_zeros.out
- aten::nextafter
- aten::nll_loss2d_backward
- aten::nll_loss_backward
- aten::nll_loss_forward
- aten::norm
- aten::ones
- aten::ones_like
- aten::ones_like.out
- aten::pairwise_distance
- aten::pdist
- aten::permute
- aten::pin_memory
- aten::positive
- aten::pow
- aten::prelu
- aten::prelu_backward
- aten::prod
- aten::rand_like
- aten::rand_like.out
- aten::randint_like
- aten::randint_like.low_dtype
- aten::randint_like.low_dtype_out
- aten::randint_like.out
- aten::randn_like
- aten::randn_like.out
- aten::randperm.generator_out
- aten::ravel
- aten::real
- aten::reciprocal
- aten::reflection_pad2d
- aten::relu
- aten::relu6
- aten::remainder
- aten::repeat_interleave.Tensor
- aten::reshape
- aten::resize_as_
- aten::rfloordiv
- aten::roll
- aten::rop
- aten::rot90
- aten::round
- aten::rpow
- aten::rrelu_with_noise_backward
- aten::rsqrt
- aten::rsub
- aten::rsub.Scalar
- aten::rsub.Tensor
- aten::rtruediv
- aten::scalar_tensor
- aten::select_backward
- aten::selu
- aten::sigmoid
- aten::sigmoid_backward
- aten::sign
- aten::signbit
- aten::silu
- aten::silu_backward
- aten::sin
- aten::sinh
- aten::slice_backward
- aten::softmax
- aten::softplus
- aten::softplus_backward
- aten::softshrink
- aten::softshrink_backward
- aten::special_i0
- aten::special_i0e
- aten::special_i1
- aten::special_i1e
- aten::special_zeta
- aten::split.Tensor
- aten::split_with_sizes
- aten::sqrt
- aten::square
- aten::squeeze
- aten::stack
- aten::std
- aten::std.correction
- aten::std_mean
- aten::std_mean.correction
- aten::sub
- aten::sum
- aten::swap_axes
- aten::t
- aten::tan
- aten::tanh
- aten::tanh_backward
- aten::tensor_split
- aten::threshold
- aten::threshold_backward
- aten::to
- aten::to.device
- aten::to.prim_Device
- aten::trace
- aten::transpose
- aten::tril
- aten::tril_indices
- aten::triu
- aten::triu_indices
- aten::true_divide
- aten::trunc
- aten::trunc_divide
- aten::unbind
- aten::unflatten
- aten::uniform
- aten::unsqueeze
- aten::upsample_bilinear2d.vec
- aten::var
- aten::var.correction
- aten::var_mean
- aten::view
- aten::vsplit
- aten::vstack
- aten::where
- aten::xlogy.Tensor
- aten::zero_
- aten::zeros
- aten::zeros_like
- aten::zeros_like.out