» Pimp common Nodes
This site relies heavily on Javascript. You should enable it if you want the full experience. Learn more.

Pimp common Nodes

acl(admin devvvv kollaborateur)

Wiki page for nodes who want to be pimped.

Plenty of little nodes feels weak and could have a little SSE-Steroids/OPENMP-EPO injection (so they can survive the "Tour de Patch")

Considerations

  • Nodes to be written as plugs
  • Some nice benches with different spreadcount to show speed difference at different levels (using varying spreadcount is also useful as some nodes can have specific bits for it).
  • Option as toggle for Threading + SSE, so we can also compare per spreadcount.
  • List of good candidates : Most common nodes obviously benefits more people, also some nodes are less likely to have high spread count. Perspecitve (Transform) a good example of low spread usage.
  • Some datatypes comparison.
  • If a node supports Input Count as config pin, counterpart to be written the same way (so they are the same node)
  • Node does not necessarily need threading, if it has good perf improvement without that's cool too :)
  • Generally when including 2d/3d node i also mean vector version

Candidates

Top of the list

All those are very very widely used, simple to thread/otpimize and are
very likely to have decently (very) high spread count

  • Standard value operators (+,-,*,/,Mod,Min,Max)
  • Comparison operators (>,<,>=,<=,=)
  • Boolean operators (AND,OR,NOT,XOR)
  • Vectors Join/Split
  • Map/MapRange (Value)
  • RGB/HSL/HSV Join/Split
  • Translate/Scale/Rotate/Transform/ApplyTransform (In all version/dimension)
  • LinearFilter/Damper/Oscillator (Animation)
  • Change/TogEdge (Animation)

Top Unfriendly nodes

Very widely used, but bit (or lot) harder to thread, or they require special considerations.

  • Select (Value,Color)
  • Spread generators (linear/random/gaussian)
  • Cross (2d/3d)

Mid Range Nodes

Quite often used, good to have them around when needed, generally used with quite high spread.

  • B-Spline (Value)
  • Power (Value), Sign (Value), Log (Value)
  • 2d/3d Cartesian/Polar
  • Normalize (3d), Cross (3d), Dot (3d)
  • Perlin/Simplex (2,3,4d)
  • Points2Vector/Vector2Points (2d)
  • Transform Multiply, Inverse
  • Newton, DeNiro (Animation)
  • Reverse (Spreads)
  • Blend/Complement (Color)
  • Shift/InputMorph (Value/Color)

Other

Casual use, but useful

  • All complex number nodes (pretty underestimated, if pimped they could be more widely used)
  • FrameDifference/FrameVelocity (Animation)
  • Connect/ConnectAll (2d/3d)
  • GetMatrix/SetMatrix (Transform)

Cool nodes to add with perf

  • Sin/Cos/Tan.. Value (Don't need the complex version most of the time)

Benchmarks

Will provide a spreadsheet as much easier to add new columns/rows...

anonymous user login

Shoutbox

~7d ago

joreg: Postponed: Next vvvv beginner course starting April 29: https://thenodeinstitute.org/courses/vvvv-beginner-class-summer-2024/

~1mth ago

~1mth ago

joreg: The Winter Season of vvvv workshops is now over but all recordings are still available for purchase: https://thenodeinstitute.org/ws23-vvvv-intermediates/

~1mth ago

schlonzo: Love the new drag and drop functionality for links in latest previews!

~2mth ago

joreg: Workshop on 29 02: Create Sequencers and Precise Clock Based Tools. Signup here: https://thenodeinstitute.org/courses/ws23-vvvv-08-create-sequencers-and-precise-clock-based-tools-in-vvvv-gamma/

~2mth ago

joreg: Workshop on 22 02: Unlocking Shader Artistry: A Journey through ‘The Book of Shaders’ with FUSE. Signup here: https://thenodeinstitute.org/courses/ws23-vvvv-12-book-of-shaders/