diff options
author | Arne Juul <arnej@verizonmedia.com> | 2020-12-09 14:18:22 +0000 |
---|---|---|
committer | Arne Juul <arnej@verizonmedia.com> | 2020-12-09 14:18:22 +0000 |
commit | f37787e1510bd073748fdc0d0b991a22cc909ff0 (patch) | |
tree | d10b67c4668c884326ea420f055d81e97b79aa53 /eval | |
parent | bcf36102b997b4276830706562ea9cb57ea1c15e (diff) |
add TODO comments
Diffstat (limited to 'eval')
10 files changed, 13 insertions, 0 deletions
diff --git a/eval/src/vespa/eval/tensor/dense/dense_add_dimension_optimizer.h b/eval/src/vespa/eval/tensor/dense/dense_add_dimension_optimizer.h index 4b5cf296292..8d52c835261 100644 --- a/eval/src/vespa/eval/tensor/dense/dense_add_dimension_optimizer.h +++ b/eval/src/vespa/eval/tensor/dense/dense_add_dimension_optimizer.h @@ -9,6 +9,7 @@ namespace vespalib::tensor { /** * Tensor function optimizer for efficient adding of dimensions with * size 1 for dense tensors. + * TODO: extend to mixed tensors. **/ struct DenseAddDimensionOptimizer { static const eval::TensorFunction &optimize(const eval::TensorFunction &expr, Stash &stash); diff --git a/eval/src/vespa/eval/tensor/dense/dense_fast_rename_optimizer.h b/eval/src/vespa/eval/tensor/dense/dense_fast_rename_optimizer.h index bbcb38e1f80..0543c7117b9 100644 --- a/eval/src/vespa/eval/tensor/dense/dense_fast_rename_optimizer.h +++ b/eval/src/vespa/eval/tensor/dense/dense_fast_rename_optimizer.h @@ -9,6 +9,7 @@ namespace vespalib::tensor { /** * Tensor function optimizer for efficient non-transposing rename of a * dense tensor. + * TODO: extend to mixed tensors. **/ struct DenseFastRenameOptimizer { static const eval::TensorFunction &optimize(const eval::TensorFunction &expr, Stash &stash); diff --git a/eval/src/vespa/eval/tensor/dense/dense_pow_as_map_optimizer.h b/eval/src/vespa/eval/tensor/dense/dense_pow_as_map_optimizer.h index 4849a10c070..6231db0e4bd 100644 --- a/eval/src/vespa/eval/tensor/dense/dense_pow_as_map_optimizer.h +++ b/eval/src/vespa/eval/tensor/dense/dense_pow_as_map_optimizer.h @@ -10,6 +10,7 @@ namespace vespalib::tensor { * Tensor function optimizer for converting join expressions on the * form 'join(tensor,<small integer constant>,f(x,y)(pow(x,y))' to * expressions on the form 'map(tensor,f(x)(x*x...))'. + * TODO: extend to mixed tensors. **/ struct DensePowAsMapOptimizer { static const eval::TensorFunction &optimize(const eval::TensorFunction &expr, Stash &stash); diff --git a/eval/src/vespa/eval/tensor/dense/dense_remove_dimension_optimizer.h b/eval/src/vespa/eval/tensor/dense/dense_remove_dimension_optimizer.h index 64b057a62d8..2551bf4f072 100644 --- a/eval/src/vespa/eval/tensor/dense/dense_remove_dimension_optimizer.h +++ b/eval/src/vespa/eval/tensor/dense/dense_remove_dimension_optimizer.h @@ -9,6 +9,7 @@ namespace vespalib::tensor { /** * Tensor function optimizer for efficient removal of dimensions with * size 1 for dense tensors. + * TODO: extend to mixed tensors. **/ struct DenseRemoveDimensionOptimizer { static const eval::TensorFunction &optimize(const eval::TensorFunction &expr, Stash &stash); diff --git a/eval/src/vespa/eval/tensor/dense/dense_replace_type_function.h b/eval/src/vespa/eval/tensor/dense/dense_replace_type_function.h index adf5023b0cb..f72dcb6bd23 100644 --- a/eval/src/vespa/eval/tensor/dense/dense_replace_type_function.h +++ b/eval/src/vespa/eval/tensor/dense/dense_replace_type_function.h @@ -9,6 +9,7 @@ namespace vespalib::tensor { /** * Tensor function for efficient type-only modification of dense * tensor. + * TODO: extend to handling any tensor, dense/mixed/sparse. **/ class DenseReplaceTypeFunction : public eval::tensor_function::Op1 { diff --git a/eval/src/vespa/eval/tensor/dense/dense_simple_join_function.h b/eval/src/vespa/eval/tensor/dense/dense_simple_join_function.h index 4cb4a0fc4ff..48eb73fe09a 100644 --- a/eval/src/vespa/eval/tensor/dense/dense_simple_join_function.h +++ b/eval/src/vespa/eval/tensor/dense/dense_simple_join_function.h @@ -9,6 +9,8 @@ namespace vespalib::tensor { /** * Tensor function for simple join operations on dense tensors. + * TODO: consider if this is useful anymore, maybe we just need + * to handle inplace. **/ class DenseSimpleJoinFunction : public eval::tensor_function::Join { diff --git a/eval/src/vespa/eval/tensor/dense/dense_simple_map_function.h b/eval/src/vespa/eval/tensor/dense/dense_simple_map_function.h index 02a81ec137b..f179b36ebc6 100644 --- a/eval/src/vespa/eval/tensor/dense/dense_simple_map_function.h +++ b/eval/src/vespa/eval/tensor/dense/dense_simple_map_function.h @@ -8,6 +8,7 @@ namespace vespalib::tensor { /** * Tensor function for simple map operations on dense tensors. + * TODO: Fix generic map to handle inplace, and remove this. **/ class DenseSimpleMapFunction : public eval::tensor_function::Map { diff --git a/eval/src/vespa/eval/tensor/dense/dense_single_reduce_function.h b/eval/src/vespa/eval/tensor/dense/dense_single_reduce_function.h index 8bdcf82d4ab..33027ebc930 100644 --- a/eval/src/vespa/eval/tensor/dense/dense_single_reduce_function.h +++ b/eval/src/vespa/eval/tensor/dense/dense_single_reduce_function.h @@ -30,6 +30,8 @@ make_dense_single_reduce_list(const eval::ValueType &type, eval::Aggr aggr, * operation. Adjacent reduced dimensions will be handled is if they * were a single dimension. Trivial dimensions will be trivially * reduced along with any other dimension. + * TODO: consider if we should extend this to handling mixed tensors + * (handling the spare part as a batch dimension). **/ class DenseSingleReduceFunction : public eval::tensor_function::Op1 { diff --git a/eval/src/vespa/eval/tensor/dense/dense_tensor_create_function.h b/eval/src/vespa/eval/tensor/dense/dense_tensor_create_function.h index c0c238a2a89..7ca906ae38b 100644 --- a/eval/src/vespa/eval/tensor/dense/dense_tensor_create_function.h +++ b/eval/src/vespa/eval/tensor/dense/dense_tensor_create_function.h @@ -8,6 +8,7 @@ namespace vespalib::tensor { /** * Tensor function for creating a dense tensor from double values. + * TODO: benchmark how useful this is, maybe we can just drop it. */ class DenseTensorCreateFunction : public eval::TensorFunction { diff --git a/eval/src/vespa/eval/tensor/dense/vector_from_doubles_function.h b/eval/src/vespa/eval/tensor/dense/vector_from_doubles_function.h index d21a339e7d9..739c8721a47 100644 --- a/eval/src/vespa/eval/tensor/dense/vector_from_doubles_function.h +++ b/eval/src/vespa/eval/tensor/dense/vector_from_doubles_function.h @@ -8,6 +8,8 @@ namespace vespalib::tensor { /** * Tensor function for a concat forming a vector from double values + * TODO: consider removing this, since the user can write a tensor + * create expression instead. */ class VectorFromDoublesFunction : public eval::TensorFunction { |