Skip to content

Commit 69c2c76

Browse files
dbortfacebook-github-bot
authored andcommitted
s/exec_aten::/executorch::aten::/ for extension/**/*.h (#6032)
Summary: Pull Request resolved: #6032 Migrate all extension headers to use the new aten namespace, so that they act as good examples for users. The .cpp code can migrate later. Reviewed By: lucylq Differential Revision: D64079593 fbshipit-source-id: 62164cd6ec3238e21e896813f185d0c1446ef527
1 parent 192ca82 commit 69c2c76

File tree

9 files changed

+219
-204
lines changed

9 files changed

+219
-204
lines changed

extension/android/jni/jni_layer_constants.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ constexpr static int kTensorDTypeBits4x2 = 20;
3737
constexpr static int kTensorDTypeBits8 = 21;
3838
constexpr static int kTensorDTypeBits16 = 22;
3939

40-
using exec_aten::ScalarType;
40+
using executorch::aten::ScalarType;
4141

4242
const std::unordered_map<ScalarType, int> scalar_type_to_java_dtype = {
4343
{ScalarType::Byte, kTensorDTypeUInt8},

extension/kernel_util/make_boxed_from_unboxed_functor.h

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -66,12 +66,12 @@ struct decay_if_not_tensor final {
6666
using type = std::decay_t<T>;
6767
};
6868
template <>
69-
struct decay_if_not_tensor<exec_aten::Tensor&> final {
70-
using type = exec_aten::Tensor&;
69+
struct decay_if_not_tensor<executorch::aten::Tensor&> final {
70+
using type = executorch::aten::Tensor&;
7171
};
7272
template <>
73-
struct decay_if_not_tensor<const exec_aten::Tensor&> final {
74-
using type = const exec_aten::Tensor&;
73+
struct decay_if_not_tensor<const executorch::aten::Tensor&> final {
74+
using type = const executorch::aten::Tensor&;
7575
};
7676

7777
template <class T>
@@ -82,29 +82,30 @@ struct evalue_to_arg final {
8282
};
8383

8484
template <>
85-
struct evalue_to_arg<exec_aten::Tensor&> final {
86-
static exec_aten::Tensor& call(executorch::runtime::EValue& v) {
85+
struct evalue_to_arg<executorch::aten::Tensor&> final {
86+
static executorch::aten::Tensor& call(executorch::runtime::EValue& v) {
8787
return v.toTensor();
8888
}
8989
};
9090

9191
template <>
92-
struct evalue_to_arg<const exec_aten::Tensor&> final {
93-
static const exec_aten::Tensor& call(executorch::runtime::EValue& v) {
92+
struct evalue_to_arg<const executorch::aten::Tensor&> final {
93+
static const executorch::aten::Tensor& call(executorch::runtime::EValue& v) {
9494
return v.toTensor();
9595
}
9696
};
9797

9898
template <class T>
99-
struct evalue_to_arg<exec_aten::optional<T>> final {
100-
static exec_aten::optional<T> call(executorch::runtime::EValue& v) {
99+
struct evalue_to_arg<executorch::aten::optional<T>> final {
100+
static executorch::aten::optional<T> call(executorch::runtime::EValue& v) {
101101
return v.toOptional<T>();
102102
}
103103
};
104104

105105
template <class T>
106-
struct evalue_to_arg<exec_aten::ArrayRef<exec_aten::optional<T>>> final {
107-
static exec_aten::ArrayRef<exec_aten::optional<T>> call(
106+
struct evalue_to_arg<executorch::aten::ArrayRef<executorch::aten::optional<T>>>
107+
final {
108+
static executorch::aten::ArrayRef<executorch::aten::optional<T>> call(
108109
executorch::runtime::EValue& v) {
109110
return v.toListOptionalTensor();
110111
}

extension/llm/runner/image_prefiller.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ class ImagePrefiller {
3030
* It's passed as reference and will be updated inside this function.
3131
* @return The next token of the LLM Module after prefill.
3232
*/
33-
virtual ::executorch::runtime::Result<exec_aten::Tensor> prefill(
33+
virtual ::executorch::runtime::Result<executorch::aten::Tensor> prefill(
3434
Image& image,
3535
int64_t& start_pos) = 0;
3636

extension/llm/runner/text_decoder_runner.h

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ class TextDecoderRunner {
3737
* Module.
3838
* @return The output of the LLM Module. This will be a tensor of logits.
3939
*/
40-
virtual ::executorch::runtime::Result<exec_aten::Tensor> step(
40+
virtual ::executorch::runtime::Result<executorch::aten::Tensor> step(
4141
TensorPtr& input,
4242
TensorPtr& start_pos);
4343

@@ -66,7 +66,8 @@ class TextDecoderRunner {
6666
* @param logits_tensor The logits tensor.
6767
* @return The next token.
6868
*/
69-
inline int32_t logits_to_token(const exec_aten::Tensor& logits_tensor) {
69+
inline int32_t logits_to_token(
70+
const executorch::aten::Tensor& logits_tensor) {
7071
int32_t result = 0;
7172
ET_SWITCH_THREE_TYPES(
7273
Float,

extension/llm/runner/text_token_generator.h

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ class TextTokenGenerator {
5353
int64_t pos = start_pos; // position in the sequence
5454

5555
std::vector<uint64_t> token_data; // allocate space for the tokens
56-
std::vector<exec_aten::SizesType> token_shape;
56+
std::vector<executorch::aten::SizesType> token_shape;
5757

5858
// Token after prefill
5959
uint64_t cur_token = tokens.back();
@@ -70,9 +70,10 @@ class TextTokenGenerator {
7070
}
7171

7272
// initialize tensor wrappers
73-
auto tokens_managed =
74-
from_blob(token_data.data(), token_shape, exec_aten::ScalarType::Long);
75-
auto start_pos_managed = from_blob(&pos, {1}, exec_aten::ScalarType::Long);
73+
auto tokens_managed = from_blob(
74+
token_data.data(), token_shape, executorch::aten::ScalarType::Long);
75+
auto start_pos_managed =
76+
from_blob(&pos, {1}, executorch::aten::ScalarType::Long);
7677

7778
should_stop_ = false;
7879

@@ -83,7 +84,7 @@ class TextTokenGenerator {
8384
text_decoder_runner_->step(tokens_managed, start_pos_managed);
8485

8586
ET_CHECK_OK_OR_RETURN_ERROR(logits_res.error());
86-
exec_aten::Tensor& logits_tensor = logits_res.get();
87+
executorch::aten::Tensor& logits_tensor = logits_res.get();
8788

8889
prev_token = cur_token;
8990

extension/tensor/tensor_ptr.h

Lines changed: 60 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ namespace extension {
2222
/**
2323
* A smart pointer type for managing the lifecycle of a Tensor.
2424
*/
25-
using TensorPtr = std::shared_ptr<exec_aten::Tensor>;
25+
using TensorPtr = std::shared_ptr<executorch::aten::Tensor>;
2626

2727
/**
2828
* Creates a TensorPtr that manages a Tensor with the specified properties.
@@ -39,13 +39,14 @@ using TensorPtr = std::shared_ptr<exec_aten::Tensor>;
3939
* @return A TensorPtr that manages the newly created Tensor.
4040
*/
4141
TensorPtr make_tensor_ptr(
42-
std::vector<exec_aten::SizesType> sizes,
42+
std::vector<executorch::aten::SizesType> sizes,
4343
void* data,
44-
std::vector<exec_aten::DimOrderType> dim_order,
45-
std::vector<exec_aten::StridesType> strides,
46-
const exec_aten::ScalarType type = exec_aten::ScalarType::Float,
47-
const exec_aten::TensorShapeDynamism dynamism =
48-
exec_aten::TensorShapeDynamism::DYNAMIC_BOUND,
44+
std::vector<executorch::aten::DimOrderType> dim_order,
45+
std::vector<executorch::aten::StridesType> strides,
46+
const executorch::aten::ScalarType type =
47+
executorch::aten::ScalarType::Float,
48+
const executorch::aten::TensorShapeDynamism dynamism =
49+
executorch::aten::TensorShapeDynamism::DYNAMIC_BOUND,
4950
std::function<void(void*)> deleter = nullptr);
5051

5152
/**
@@ -61,11 +62,12 @@ TensorPtr make_tensor_ptr(
6162
* @return A TensorPtr that manages the newly created Tensor.
6263
*/
6364
inline TensorPtr make_tensor_ptr(
64-
std::vector<exec_aten::SizesType> sizes,
65+
std::vector<executorch::aten::SizesType> sizes,
6566
void* data,
66-
const exec_aten::ScalarType type = exec_aten::ScalarType::Float,
67-
const exec_aten::TensorShapeDynamism dynamism =
68-
exec_aten::TensorShapeDynamism::DYNAMIC_BOUND,
67+
const executorch::aten::ScalarType type =
68+
executorch::aten::ScalarType::Float,
69+
const executorch::aten::TensorShapeDynamism dynamism =
70+
executorch::aten::TensorShapeDynamism::DYNAMIC_BOUND,
6971
std::function<void(void*)> deleter = nullptr) {
7072
return make_tensor_ptr(
7173
std::move(sizes), data, {}, {}, type, dynamism, std::move(deleter));
@@ -93,15 +95,16 @@ inline TensorPtr make_tensor_ptr(
9395
*/
9496
template <
9597
typename T = float,
96-
exec_aten::ScalarType deduced_type = runtime::CppTypeToScalarType<T>::value>
98+
executorch::aten::ScalarType deduced_type =
99+
runtime::CppTypeToScalarType<T>::value>
97100
inline TensorPtr make_tensor_ptr(
98-
std::vector<exec_aten::SizesType> sizes,
101+
std::vector<executorch::aten::SizesType> sizes,
99102
std::vector<T> data,
100-
std::vector<exec_aten::DimOrderType> dim_order = {},
101-
std::vector<exec_aten::StridesType> strides = {},
102-
exec_aten::ScalarType type = deduced_type,
103-
exec_aten::TensorShapeDynamism dynamism =
104-
exec_aten::TensorShapeDynamism::DYNAMIC_BOUND) {
103+
std::vector<executorch::aten::DimOrderType> dim_order = {},
104+
std::vector<executorch::aten::StridesType> strides = {},
105+
executorch::aten::ScalarType type = deduced_type,
106+
executorch::aten::TensorShapeDynamism dynamism =
107+
executorch::aten::TensorShapeDynamism::DYNAMIC_BOUND) {
105108
if (type != deduced_type) {
106109
ET_CHECK_MSG(
107110
runtime::canCast(deduced_type, type),
@@ -157,13 +160,15 @@ inline TensorPtr make_tensor_ptr(
157160
*/
158161
template <
159162
typename T = float,
160-
exec_aten::ScalarType deduced_type = runtime::CppTypeToScalarType<T>::value>
163+
executorch::aten::ScalarType deduced_type =
164+
runtime::CppTypeToScalarType<T>::value>
161165
inline TensorPtr make_tensor_ptr(
162166
std::vector<T> data,
163-
exec_aten::ScalarType type = deduced_type,
164-
exec_aten::TensorShapeDynamism dynamism =
165-
exec_aten::TensorShapeDynamism::DYNAMIC_BOUND) {
166-
std::vector<exec_aten::SizesType> sizes{exec_aten::SizesType(data.size())};
167+
executorch::aten::ScalarType type = deduced_type,
168+
executorch::aten::TensorShapeDynamism dynamism =
169+
executorch::aten::TensorShapeDynamism::DYNAMIC_BOUND) {
170+
std::vector<executorch::aten::SizesType> sizes{
171+
executorch::aten::SizesType(data.size())};
167172
return make_tensor_ptr(
168173
std::move(sizes), std::move(data), {0}, {1}, type, dynamism);
169174
}
@@ -192,15 +197,16 @@ inline TensorPtr make_tensor_ptr(
192197
*/
193198
template <
194199
typename T = float,
195-
exec_aten::ScalarType deduced_type = runtime::CppTypeToScalarType<T>::value>
200+
executorch::aten::ScalarType deduced_type =
201+
runtime::CppTypeToScalarType<T>::value>
196202
inline TensorPtr make_tensor_ptr(
197-
std::vector<exec_aten::SizesType> sizes,
203+
std::vector<executorch::aten::SizesType> sizes,
198204
std::initializer_list<T> list,
199-
std::vector<exec_aten::DimOrderType> dim_order = {},
200-
std::vector<exec_aten::StridesType> strides = {},
201-
exec_aten::ScalarType type = deduced_type,
202-
exec_aten::TensorShapeDynamism dynamism =
203-
exec_aten::TensorShapeDynamism::DYNAMIC_BOUND) {
205+
std::vector<executorch::aten::DimOrderType> dim_order = {},
206+
std::vector<executorch::aten::StridesType> strides = {},
207+
executorch::aten::ScalarType type = deduced_type,
208+
executorch::aten::TensorShapeDynamism dynamism =
209+
executorch::aten::TensorShapeDynamism::DYNAMIC_BOUND) {
204210
return make_tensor_ptr(
205211
std::move(sizes),
206212
std::vector<T>(std::move(list)),
@@ -231,13 +237,15 @@ inline TensorPtr make_tensor_ptr(
231237
*/
232238
template <
233239
typename T = float,
234-
exec_aten::ScalarType deduced_type = runtime::CppTypeToScalarType<T>::value>
240+
executorch::aten::ScalarType deduced_type =
241+
runtime::CppTypeToScalarType<T>::value>
235242
inline TensorPtr make_tensor_ptr(
236243
std::initializer_list<T> list,
237-
exec_aten::ScalarType type = deduced_type,
238-
exec_aten::TensorShapeDynamism dynamism =
239-
exec_aten::TensorShapeDynamism::DYNAMIC_BOUND) {
240-
std::vector<exec_aten::SizesType> sizes{exec_aten::SizesType(list.size())};
244+
executorch::aten::ScalarType type = deduced_type,
245+
executorch::aten::TensorShapeDynamism dynamism =
246+
executorch::aten::TensorShapeDynamism::DYNAMIC_BOUND) {
247+
std::vector<executorch::aten::SizesType> sizes{
248+
executorch::aten::SizesType(list.size())};
241249
return make_tensor_ptr(
242250
std::move(sizes), std::move(list), {0}, {1}, type, dynamism);
243251
}
@@ -270,13 +278,13 @@ inline TensorPtr make_tensor_ptr(T value) {
270278
* @return A TensorPtr managing the newly created Tensor.
271279
*/
272280
TensorPtr make_tensor_ptr(
273-
std::vector<exec_aten::SizesType> sizes,
281+
std::vector<executorch::aten::SizesType> sizes,
274282
std::vector<uint8_t> data,
275-
std::vector<exec_aten::DimOrderType> dim_order,
276-
std::vector<exec_aten::StridesType> strides,
277-
exec_aten::ScalarType type = exec_aten::ScalarType::Float,
278-
exec_aten::TensorShapeDynamism dynamism =
279-
exec_aten::TensorShapeDynamism::DYNAMIC_BOUND);
283+
std::vector<executorch::aten::DimOrderType> dim_order,
284+
std::vector<executorch::aten::StridesType> strides,
285+
executorch::aten::ScalarType type = executorch::aten::ScalarType::Float,
286+
executorch::aten::TensorShapeDynamism dynamism =
287+
executorch::aten::TensorShapeDynamism::DYNAMIC_BOUND);
280288

281289
/**
282290
* Creates a TensorPtr that manages a Tensor with the specified properties.
@@ -292,11 +300,11 @@ TensorPtr make_tensor_ptr(
292300
* @return A TensorPtr managing the newly created Tensor.
293301
*/
294302
inline TensorPtr make_tensor_ptr(
295-
std::vector<exec_aten::SizesType> sizes,
303+
std::vector<executorch::aten::SizesType> sizes,
296304
std::vector<uint8_t> data,
297-
exec_aten::ScalarType type = exec_aten::ScalarType::Float,
298-
exec_aten::TensorShapeDynamism dynamism =
299-
exec_aten::TensorShapeDynamism::DYNAMIC_BOUND) {
305+
executorch::aten::ScalarType type = executorch::aten::ScalarType::Float,
306+
executorch::aten::TensorShapeDynamism dynamism =
307+
executorch::aten::TensorShapeDynamism::DYNAMIC_BOUND) {
300308
return make_tensor_ptr(
301309
std::move(sizes), std::move(data), {}, {}, type, dynamism);
302310
}
@@ -309,21 +317,21 @@ inline TensorPtr make_tensor_ptr(
309317
* @return A new TensorPtr managing a Tensor with the same properties as the
310318
* original.
311319
*/
312-
inline TensorPtr make_tensor_ptr(const exec_aten::Tensor& tensor) {
320+
inline TensorPtr make_tensor_ptr(const executorch::aten::Tensor& tensor) {
313321
return make_tensor_ptr(
314-
std::vector<exec_aten::SizesType>(
322+
std::vector<executorch::aten::SizesType>(
315323
tensor.sizes().begin(), tensor.sizes().end()),
316324
tensor.mutable_data_ptr(),
317325
#ifndef USE_ATEN_LIB
318-
std::vector<exec_aten::DimOrderType>(
326+
std::vector<executorch::aten::DimOrderType>(
319327
tensor.dim_order().begin(), tensor.dim_order().end()),
320-
std::vector<exec_aten::StridesType>(
328+
std::vector<executorch::aten::StridesType>(
321329
tensor.strides().begin(), tensor.strides().end()),
322330
tensor.scalar_type(),
323331
tensor.shape_dynamism()
324332
#else // USE_ATEN_LIB
325333
{},
326-
std::vector<exec_aten::StridesType>(
334+
std::vector<executorch::aten::StridesType>(
327335
tensor.strides().begin(), tensor.strides().end()),
328336
tensor.scalar_type()
329337
#endif // USE_ATEN_LIB
@@ -339,7 +347,7 @@ inline TensorPtr make_tensor_ptr(const exec_aten::Tensor& tensor) {
339347
* @return A new TensorPtr that manages a Tensor with the same properties as the
340348
* original but with copied data.
341349
*/
342-
TensorPtr clone_tensor_ptr(const exec_aten::Tensor& tensor);
350+
TensorPtr clone_tensor_ptr(const executorch::aten::Tensor& tensor);
343351

344352
/**
345353
* Creates a new TensorPtr by cloning the given TensorPtr, copying the
@@ -363,7 +371,7 @@ inline TensorPtr clone_tensor_ptr(const TensorPtr& tensor) {
363371
ET_NODISCARD
364372
runtime::Error resize_tensor_ptr(
365373
TensorPtr& tensor,
366-
const std::vector<exec_aten::SizesType>& sizes);
374+
const std::vector<executorch::aten::SizesType>& sizes);
367375

368376
} // namespace extension
369377
} // namespace executorch

0 commit comments

Comments
 (0)