» zip and unzip
This site relies heavily on Javascript. You should enable it if you want the full experience. Learn more.

zip and unzip

the beta28 release will contain two new spread operations available for all major data types: zip and unzip. their operation is best explained by two screenshots of their help patches:

Zip
Unzip

for performance reasons each zip and unzip comes with a normal and a bin sized version. for example if the task at hand is to zip two spreads slice by slice the normal version will be much faster than using the bin sized version and setting the bin size to one. so if possible use the normal version.

together with their bin sized versions and the ability to control the number of input (in case of zip) and output pins (in case of unzip) via a config pin they form a very versatile pack of nodes able to replace the functionality of various nodes from a simple vector join/split to the very famous (and probably hardest to find for beginners) Stallone node.

by making use of the newly introduced streams they are able to outshine their "competitors" by up to a factor of ten in terms of performance. the higher the slice count the faster they are compared to the rest. only at very low slice counts (< 25) their performance is not as good as for example a native vector join as with all plugins the transition from the unmanaged world of vvvv to the managed world of a plugin comes with a small overhead.

Elias, Tuesday, Aug 7th 2012 Digg | Tweet | Delicious 10 comments  
readme 07/08/2012 - 22:26

Elias is on fire.
This is neat, thanks!

robe 08/08/2012 - 09:59

@Elias

So this would be better than a vector 3d join/split to manage for example a huge vertex buffer and apply some calculation in-between?

Tnx

Elias 08/08/2012 - 11:44

@robe
yes. just did a quick test with the v.x file changing the x-coordinate by a random amount and framerate increased from ~170 to ~220 when replacing the 3d join/splits with zip/unzips.

alg 08/08/2012 - 18:07

Can't understand, why this nodes not called like Vector (Join Fast) and Vector (Split Fast) for example.

Elias 08/08/2012 - 20:48

the names are borrowed from the functional world of programming languages...they have been there for ages and describe the operation very well. better than join/split in my opinion.

hrovac 08/08/2012 - 20:54

+1 for Join fast & split fast as well
i am not living in the world of functional programming ;) i prefer the chaotic world of nodes and noodles

bjoern 08/08/2012 - 22:21

The Bin versions concatenate, right? So in their case zip doesn't fit quite right... Btw. none of them beats the mighty stallone, having control over input / output count and the joining logic at the same time.
Stallone (Spreads Fast), unreal.

joreg 08/08/2012 - 22:42

nono bois, this is not a jukebox. the name is the right one. we don't want to have fast and slow versions of nodes that do exactly the same.

it is important that when you need a vector (join/split) you use a vector (join/split) and not any other node that you heard is faster. because maybe in an upcoming version we have an optimization for vector (join/split) that is just as fast or even faster than zip/unzip and then you have to change all those nodes back.

so use zip/unzip when you need general un/zipping functionality else use vector (join/split) and bug us to improve their speed. one step at a time...

bjoern 08/08/2012 - 23:08

I'm fine with zip anyway, just smart-assing. But will Unzip replace Decons, like woei stated here?

gregsn 09/08/2012 - 00:26

yes. in the current alpha it is like that.

  • 1

anonymous user login

Shoutbox

~5d ago

joreg: vvvvTv S02E03 is out: Logging: https://youtube.com/live/OpUrJjTXBxM

~7d ago

~9d ago

joreg: Follow TobyK on his Advent of Code: https://www.twitch.tv/tobyklight

~12d ago

joreg: vvvvTv S02E02 is out: Saving & Loading UI State: https://www.youtube.com/live/GJQGVxA1pIQ

~12d ago

joreg: We now have a presence on LinkedIn: https://www.linkedin.com/company/vvvv-group

~20d ago

joreg: vvvvTv S02E01 is out: Buttons & Sliders with Dear ImGui: https://www.youtube.com/live/PuuTilbqd9w

~26d ago

joreg: vvvvTv S02E00 is out: Sensors & Servos with Arduino: https://visualprogramming.net/blog/2024/vvvvtv-is-back-with-season-2/

~26d ago

~27d ago

fleg: hey there! What's the best tool for remote work? Teamviewer feels terrible. Thanks!

~1mth ago

joreg: Last call: 6-session vvvv beginner course starting November 4: https://thenodeinstitute.org/courses/ws24-5-vvvv-beginners-part-i/