aboutsummaryrefslogtreecommitdiffstats
path: root/vespajlib/src
Commit message (Collapse)AuthorAgeFilesLines
...
* Add explicit test for "0" == 0, and "0" != "00"Henning Baldersheim2024-01-301-0/+2
|
* - 0 prefixed numbers should not be considered numeric."Henning Baldersheim2024-01-302-1/+4
|
* Minor cleanupJon Bratseth2024-01-2819-87/+166
|
* Make tensor addresses integer based instead of as strings.Henning Baldersheim2024-01-2527-328/+716
| | | | | Positive numbers are direct indexes, while strings that does not represent numbers are enumerated and represented with negative integers.
* Add TensorAdressAny.javaHenning Baldersheim2024-01-252-0/+21
|
* Support longhasherHenning Baldersheim2024-01-252-0/+61
|
* - Replace usage of putIfAbsent and manual optimizes get-if-not-put with ↵Henning Baldersheim2024-01-224-16/+7
| | | | computeIfAbsent.
* Make address generation more efficient, also prepare for presizing during build.Henning Baldersheim2024-01-221-23/+37
|
* Extract label once.Henning Baldersheim2024-01-222-3/+3
|
* - Using optional in the inner loop is often very inefficient. It bloats the codeHenning Baldersheim2024-01-222-3/+10
| | | | and most of the time hampers the compilers abilitity to inline and optimize.
* Make tests independent of hash functionHenning Baldersheim2024-01-211-1/+2
|
* Use lz4-java and xxhash32Henning Baldersheim2024-01-212-13/+27
|
* Reorder tests as the indexed tests varies a lot when they are run last. ↵Henning Baldersheim2024-01-211-25/+31
| | | | Reason not known.
* - Add and use getAsDouble method returning a Double object. It behaves ↵Henning Baldersheim2024-01-216-8/+37
| | | | | | | similar to Map.get(key). null indicates no value present. Then you avoid 2 lookups to first check if a value is present, and then to fetch that value. This does wonders when it is backed by a map and hashCode/equals are relatively expensive.
* Merge pull request #29996 from vespa-engine/balder/do-sanity-checking-in-builderHenning Baldersheim2024-01-213-79/+71
|\ | | | | - Avoid expensive iteration with hash lookups just for sanity checkin…
| * - Avoid expensive iteration with hash lookups just for sanity checking in ↵Henning Baldersheim2024-01-213-79/+71
| | | | | | | | | | | | private MixedTensor constructor. - Refactor so there is less need for sanity checks, and do them in the buiulder instead.
* | Revert "Balder/cached xxh3 hash"Henning Baldersheim2024-01-214-81/+7
|/
* - Use get(key) instead of containsKey to avoid extra lookup.Henning Baldersheim2024-01-211-25/+15
| | | | - Enough to use only array[long] and convert directly. No need to create temporary TensorAddress.
* Cache size of intersected sets, as they are recomputed every time.Henning Baldersheim2024-01-211-5/+7
|
* Merge pull request #29993 from ↵Jon Bratseth2024-01-219-33/+54
|\ | | | | | | | | vespa-engine/balder/precompute-type-related-information-once - Extract dimension names in a set to avoid recomputing it in dimensi…
| * Make the TensorType.hasXX public and use them other places too.Henning Baldersheim2024-01-216-20/+17
| |
| * - Extract dimension names in a set to avoid recomputing it in ↵Henning Baldersheim2024-01-214-16/+40
| | | | | | | | | | | | | | dimensionNames() mathod. - Also extract some information about what kind of dimensions a tensor has construcion time. This avoids streamin through all diemsion later on, and keeps this local in the TensorType.
* | of => withSeedHenning Baldersheim2024-01-212-2/+2
| |
* | Add basic testing of TensorAddressHenning Baldersheim2024-01-211-0/+44
| |
* | Must handle null dimensions.Henning Baldersheim2024-01-211-1/+4
| |
* | Use a LinkedHashMap to make json tests independant of hash function.Henning Baldersheim2024-01-211-1/+2
| |
* | - Use xxh3 hash for better hashing, and cache the hash value.Henning Baldersheim2024-01-212-6/+32
|/
* Rename getIndex => getDirectIndexHenning Baldersheim2024-01-203-7/+7
|
* Add a class for assist efficient traversal of dimensions in an IndexedTensor.Henning Baldersheim2024-01-193-0/+75
|
* - Move computation of productOfDimensionsAfter to DimensionSizes.Henning Baldersheim2024-01-182-47/+45
| | | | - And then precompute them construction time.
* Construct array right away instead of going via a single element list and ↵Henning Baldersheim2024-01-183-4/+4
| | | | the java stream api.
* Skip copying of array when there is no reuse possible.Henning Baldersheim2024-01-185-10/+16
|
* - Make an tensor.impl package that can be used from other tensor packages ↵Henning Baldersheim2024-01-185-89/+125
| | | | | | | | | allowing bypass of defensive strategies in the public interfaces. - Move private static inner classes TensorAddress.NumericTensorAddress and TensorAddress.StringTensorAddress to tensor.impl package. - Use the StringTensorAddress.of from Reduce to avoid defensive array copy.
* - Add sizeAsInt to allow for safe cast from long to int of the size of a tensor.Henning Baldersheim2024-01-187-12/+37
|
* Update vespajlib/src/main/java/com/yahoo/tensor/functions/Reduce.java Henning Baldersheim2024-01-181-1/+1
| | | | | Unify whitespace Co-authored-by: Jon Bratseth <bratseth@gmail.com>
* Update vespajlib/src/main/java/com/yahoo/tensor/functions/Reduce.java Henning Baldersheim2024-01-181-1/+1
| | | | | Unify whitespace Co-authored-by: Jon Bratseth <bratseth@gmail.com>
* Update vespajlib/src/main/java/com/yahoo/tensor/functions/Reduce.java Henning Baldersheim2024-01-181-1/+1
| | | | | Unify whitespace Co-authored-by: Jon Bratseth <bratseth@gmail.com>
* Update vespajlib/src/main/java/com/yahoo/tensor/functions/Reduce.java Henning Baldersheim2024-01-181-1/+1
| | | | | Unify whitespace Co-authored-by: Jon Bratseth <bratseth@gmail.com>
* Update vespajlib/src/main/java/com/yahoo/tensor/functions/Reduce.java Henning Baldersheim2024-01-181-1/+1
| | | | | Unify whitespace Co-authored-by: Jon Bratseth <bratseth@gmail.com>
* Reverse the problem from indexes-to-remove to indexes-to-keep. Then you ↵Henning Baldersheim2024-01-171-13/+19
| | | | avoid hash lookup in inner loop.
* Create set of indexes to remove once.Henning Baldersheim2024-01-172-5/+14
|
* Allocate a larger hashtable to avoid expensive resize and associated ↵Henning Baldersheim2024-01-171-1/+1
| | | | equals/hash method calls.
* commons-exec is no longer needed.Henning Baldersheim2024-01-114-149/+0
|
* Avoid deprecated methodsHenning Baldersheim2024-01-112-10/+12
|
* Fix more xxe preventionMorten Tokle2023-12-191-0/+15
|
* Merge pull request #29668 from vespa-engine/lesters/slice-dimension-with-spaceJon Bratseth2023-12-152-3/+13
|\ | | | | Add string indicators for dimensions with spaces in slice tostring
| * Add string indicators for dimensions with spaces in slice tostringLester Solbakken2023-12-152-3/+13
| |
* | fallback to parseDoubleArne Juul2023-12-141-1/+1
| |
* | Reapply "add parsing of special strings for inf/nan cell values"Arne Juul2023-12-142-8/+80
| | | | | | | | This reverts commit d976f82207c09b3215661e1d034ae9a42f28a63d.
* | Revert "add parsing of special strings for inf/nan cell values"Henning Baldersheim2023-12-132-80/+8
| |