The need for speed (fluid.dataset~ + fluid.datasetquery~)

Kind of random bump here, but I did a quick test/comparison today with the current code and I have to say that fluid.kdtree~ + coll is only a tiny amount slower than entrymatcher + lookup $1 when I want to know the data that corresponds with a given entry.

Screenshot 2022-05-08 at 9.28.54 pm

I still stand by all the stuff about being able to bias/weigh a query or something, but for use cases where I just want the “nearest match” and also need the relevant metadata/descriptors, I can stay in the fluid.verse~ by using fluid.kdtree~ + coll.

I’ll likely end up making some connective tissue for future bits to be able to go from fluid.dataset~s to entrymatcher more directly, but this will work for one of the use cases.

Here’s the test code as a point of reference:


----------begin_max5_patcher----------
3538.3oc6cssbihiF95zOEpRsycY7pyB1q18t8cXpoRgskSXZLvB3zGlZ6m8
UG.GvFhE1RNo2wcp1IVfQ5+S+5+rj+yOc28KK9pr9dv+.7af6t6O+zc2YZR2
vcsu+t62l70UYI0la69b4WJV9G2+f8RMxu1XZ96Yf5rzUR.p6R461llmIaLe
LbaioqM2s5I7q792YwtlCuUaSMeqTZGd2e+Cp+C981KWlzr54z7mdrRtpwdG
QhnEvG.rHwBXu+QYLUiL8kv3EPvuqe.+2O8I8KObYT8lphs0ea6xhrQoZzHT
MbbpFMIU6BECi0+RfBAMtpHKCzHqabkDwwiShz2bh8gYLASiFYBFtf0Q7sOg
5jWjqeTMjTOfGSZZpRWtqwxse2dL3t6kaWJMid3CssTp5xz5zhbcqbSiFrzS
Hp5wWJyWCxJJ97tRmgUpO4bPvX5BRu+QiTvGMht.R36+Ihfd.DGD1pFvRfyq
ZvyUVwxj7mNI6DQsfwPzviI5H9BAy+T8eTjl6p.RTjOmvaIVFmd0H1UE6xaj
UiRurQnWwLkajl2zWzg9stf.XxwH.+ChnyPI4rk14vnSL6+QQz4phsak4MGA
opwUUxSRmAzIT2BeCIiHJznMEOzLBLVnYdL7IvyjOYJppIUQFO4JQghOahhS
wGq5jhBBQQV.Jp.0kIaAIfk6xW8LnXC3+rSVkp3jZu6rzboQNQegfaJxa1jr
R1m9OInvdaPQ+LqS+t4YpI0dMmmr0z78+aY1KxlzUI2OMRJnrEXEnQLlbgDT
8unbOic3EfUUxjFInJIecwVPoRwQCP82F.7afuj17LHsw+vH85BiHLZQOARb
hfpEEEGDTEsGUS.qSZRpkMfMoYYx0V7rEqUT9RYk+YQ4WGnEAQVNTqKOb3Eg
kJ49ME4NKZh75.qRMnUp+eTlmrLS1mRczdFiQbuoQr3HinKB2JVl185YQoax
JTCLWoTFe9T5a5Z6PpcSQ01DCYxeqYZkmPGYDu.yGHiWI6WojWbQF3LSrg89
iMBNeAQgOwbkQNLDlxPSn96pBMDwGU1lO.XC5CJaiPojx2qnlRGkpspusUOv
jUfzZfpmo.k8gxZvlj5obmZDzLBOaqDGk3iniHNAEKtHaFmvgo5xJkYNa.ZE
yGBD+xlyBF3w9zK5wQHHeABF28CBoar0FFe6R4eWwP3Z.DnnYR5pkqIMym9E
5XJbHGBQYEBDGQIbFDEggwX+CFk.0.dsqbBTuF50NaOnP3BrhXYLp4GF9UOp
56QcokS9POnUleJUtz14wLpyO5jxxdMeWuOhFZ9iByCJ5g8MklaahruoJ4K6
cDGtu0jJEgznnhcUVKJ+Juyhe8ioXsrJeWpYnXaTMI0NjLSGZKQUtzYM70Lq
0c4WgFl00HH05wo09yH3qfgZ59orhUe9fXGTTJySyKqj0p09IMGL1uesbSxt
rlG6amLBuXzq2YZ9nWbu0z+qpzjr8DvSUoqKx0ChAyD5l65N0ztwnZ8quRLl
6HOobjOrMBJSbwZEQtqdYRkdhpUKGt6hMEEYCuz9OWlbSS6kKSyyO.EaJJm9
hUoO87a7YWVnt3125YatR8i6xsW8QEOQyi5nEM79RxxZWyN7w+0j7TkLcoVR
t0Om8Wzpo+45UUEYYCnW6UdYjqrVwiuR9kz0MOa5n9LCpaOsriI598yxqSeR
GPtAs0j7T8vVpa9lEz60ztksqgerQtsLSQECuA0piz5l5mK9Rc6M1wn0G.dM
aa8WS2W.3f1OPPnQ.290qGJzC16B8cJ6fOvwx9bv+qIkCZCDB2XO.A185fOV
msN8gKyXLes7q8j0zEqv65zMbNPz.cEC0Wn0VXyLvD.HZb.bu+LAAAYPq3Rn
M4kCsZvSfhRnc8qgMcHpXDoCJxkfluT.ZdtRJAaJ1UA1j9hDTm9Uk4XuHyAR
sriIgN73PWD+LgNWgMp0LKZbPvM6vZt7K6cxaZyueapBSZc3fCEwQj3HnvuK
tdU4kN5VSHRxL7zWebfpVwirpa5patFLbvoDC2jluWW9u8J9.bchZtiB8hUm
FEcC2fLJPW9fnswNCvbMmLyRymxLrkIYGntZLEidOI3akINGUQBalo+05HiC
4DbhPgDMLTHLdTW.+OaWXFJAtWNByjIUt5QGg6SWXhiYNFFHRPpdlumAdppX
hJfXDpGy8cECgfDtgxThcwsNvY+QoI9xRI77ha90Mr4iV6GL7vJCHlRu3PpO
oe6qJ2ocAvYFezIX7G2mvSFgiI8FzcYELNaAd3BF0hH1eo8+GacRNxjUltPE
RDAI..nErXFJhG28uagC3V3.9qR3.NO2SPms2IDpsnGHVklcuNo+Ho55+5kj
LPZNXasNJ9UxxhpF4ZfBOjumwBXI.MWbC6lqrNIdxwvELs7oIURYj1ZKTV7A
IoI7npRu9Jsf8Y6wbng1gJ9uHrsMv1L90Fb+UkDs4F+E5OC.aqXEpQrBAaJj
6qHtdFhBX+DHJfF8ynj.9OCLrTglGMrBBNqP8KBZn9sx+nBG09qenfZkAn0.
aAtZpeQqE.JiAZsMXTi.vu2.YTHAR6Jy4hiIZTqEHeSv65EvWGCxIKfAZU33
X.Gvwfqw8VoLFfBUXucbLDxfdScbLfB3XfLi4hPMFvtlGj20X+6VXTd+xPvb
1qTQv.rWoHbxBTufByo5hchsf89GJbQruCENEGYs9lt.E85OXcTfYAY2Q0sM
HaqwuZWiUtvyaDRaJ.HJ5+HBGACRhOJSV8YKY691kVHBAUSOnzEgDgtdFe22
vmhnPrgO2OWyEGuvFQBxJ6Akwpxptxjpz5hbc8d.gfHmKdQ1L2ZfYo062cjc
+s42uoP.HwriX00un.u+GJwTxuGWTim+1Db5zb0+haSJK2e4yWAyT4dUWyK+
B.s.72PlZew9231Zfw9NhsVXrugZqIF6aXlZiw9271Zjw9NgsVYZeWjyY2MJ
DKwwQwKv8krQ06iw1cLSfDoaX5ck01qEncGGLDOhbMRHnYOs.OhdMVfqABib
eJ6+qVg2T7zSYNuqfELOlt8SUhIBDeQzgkLeaYdEjrqqnmpBvfc97aaYA4dO
WfAiRxwzEz94IGx2G5LruA.2KsHdTnJsnw2.ZWwJK5y4xjJkWelSf.y9G14i
lGuZqofINFHF0vS0qgxxykNyPPOSKOOuUEHAdAA2WRL1tqxQJ2wgDDOhFIXz
3qVkHwYWyRQZbLgfGYOgeYxJmIHfulfPDBe7BDFmbbcE8Qobr3j2+xwZb4qZ
IHGV8h2pFqaUi0spw5V0XcqZrtUMV2pFqaUi0spw5V0XcqZrtUMV2pFqaUi0
spw5V0XcqZrtUMV2pFqSDjvk61rQV8iWSl.3eVmrUoLw4LbxhO2TsbxHnxMY
PgggGuCVQWXNllJ6JaRa.0oaKyjL8QIpqQNk40b7yItlZknfjosJ0vUB5Rzj
yX.02Eu13oXZrCy9nv78.Q1tz0K975lJo7GNudfbcfgwR0u8XK12vvu5d4rQ
maJFOY5ViEGmIoQq8EbbHpyqFPp6IYjN2rN2dT2e57oMJJLxoa.OHE6VoT94
ebh7MSFANh8+AU3X.w308GJHkB0tumBbtxuXST9xDmR57CmYQnfU1Yfi6evU
h1eNTEfysRHD57QWIy+GckQT5wBGGspeoAQGQ6gKtFFbFEvdVH4nXvnBIEgo
lTLmuqNqif62CrS3jUFHA+NqNj36YZrZAOahx4+CfBPBLPJ.aoaLTbrnMNNb
57rtBLKsdHr2kw0MqO1FWAA4u654Pn.qmCEarqAwiNtppneDTrE4+4b6WvCX
kmMGIE+CilLeaseGQS4GYY6Ep4ZlmaWwWyBEiu+qEkPUJXyRHNNTdwnKJRcJ
HUJpNpN.oWlPbubL7IPdMHN1Y0QsKIHqe6BkWOcVyNXdHXfCl2neq7gByWwk
cesCjrdsEM9k0mTg9XAzwqlqZWCLJaARHBkpb6tVwY45z.qO2xKDCOdqCfv3
vEIu1ubn9wIiv6XqL79gTYKmvnaJOF78+TIU3U+z3QQiUWuC22DDsEsSHcz7
vGlXUKTbXhiZAjiSfHxlYv1w3DYtqWJLOBzcsmzeU49ZtolpmPdnmzeuCexd
pa3bQ8Di5BMA8POo2xb.xI5IhOllbgjhn9hjNEqG1G8jKbdTlOHIW37FNZJp
VaqMe3k0yNzwh2sdV69euo588L5h5YgKyqloDzENup2h9mjU0KKJDNMQJ7QO
ItVKzEbWjRF4idh4B54CwjBWDSJ7BMQbA87gzKAxkkx9nibgyyGFB3j.BeXb
C2kksDuXbiKfGyGr3bWVLw8g.BtKVBvIiq8Bc4c8IgS30hHQ7Pnhl6hHDlOD
gvwtvyP7fJYVz0Zc.yE0WTjOnI10RQIyk4IlOjWwbQohtnH7u8gN003frhiA
cQhlHDRzLcM9T.tWXhbgHCD9dkrTg5hg+Lru5oStNwGF9SEtth7h6I90ZZxk
U5buPRvqkWStXt.kGBIHTGDff8g.DhSAlwGcjSdU6kdxkEWDeXpEge05IWj1
x39nmvtFLoKtmPtZT2E2StnkT3qN5jLDdA7bYVh6AChwQtFgOuaggScMKDhe
wtXyAxGrlXmDg3CI8Hm5IerJ.4ByI0GNzibI0YhXe0SmRiLwGzDyoHE3CEkX
mB1n3ZkTlCFN9ZorKrHnHOHoD4hcGHurT1EAi3qjAvGDEnQk8ayQ9AGqU5N8
fiypCNJqN9XrZ5ivpCO9pL6dxoN1p9z+8S+O.TIMA5.
-----------end_max5_patcher-----------
1 Like