Rayforce

(github.com)

28 points | by tosh 5 days ago ago

14 comments

  • arikrahman 2 days ago

    Any relation to the smash hit SHMUP of the same name?

  • cma256 2 days ago

    > Rayforce is a library you link, not a server you deploy. The C API is small enough to wrap from any language with an FFI.

    I'm familiar with large-scale, commercial, client-server use cases for columnar analytics and graph traversal but what is the use case for an embedded server like this?

    • 392 a day ago

      Perhaps the fact that 99+% of today's workloads could be running on the client if it were as easy as shipping Rayforce and the data directly to the client.

      Besides that, pure C that you can embed into your app is much easier to deploy for some (and likely 100x more performant) than stuff that comes via Helm chart [cries in JVM 'big'-data solutions]

    • hetoku 2 days ago

      [dead]

  • noitpmeder a day ago

    Is this competing with e.g. an embedded duckdb?

  • noelwelsh 2 days ago

    I thought "morsel-driven" was AI slop, but it turns out to be in common usage in the HPC world. So I learned something from this post!

    • tosh 2 days ago

      afaiu morsel-driven means the workload gets turned into 'smallish' chunks (morsels)

      instead of having to pre-allocate upfront (e.g. 4 nodes get 1/4 each) it is more granular and dynamic

      a worker that's "done" can request another morsel

      pragmatic approach because nodes might not all be equally fast (cache, cpu frequency, throttling, …) and also some morsel workloads take longer than others depending on the values they contain and what kind of work needs to get done

      so this approach tends to balance out nicely

      I'm sure someone else can explain it better / correct me (please do!)

      • noelwelsh 2 days ago

        When I read up, it sounded like the same idea as work-stealing to me. Not surprising that different fields come up with the same idea under different terminology.

      • adsharma 2 days ago

        DuckDB and LadybugDB use the same terminology to describe internals.

      • hetoku 2 days ago

        Exactly!

    • hetoku 2 days ago

      [flagged]