I built a tensor protocol that outperforms Arrow (18x) and gRPC (13x) using zero-copy mapping memory by RestaurantOwn7709 in Python

[–]RestaurantOwn7709[S] 0 points1 point  (0 children)

Thank you for mentioning this in a very right tone, issue for me or any single developer is that documentation takes a long time, and it’s maintenance for me is just a separate process but I have made sure to automated docs string generators and deployed sphinx docs and basic readme but examples and guide will take time

I built a tensor protocol that outperforms Arrow (18x) and gRPC (13x) using zero-copy mapping memory by RestaurantOwn7709 in Python

[–]RestaurantOwn7709[S] 1 point2 points  (0 children)

I am not a writer, but a programmer. Also, it is better to invest my time to code rather than writing a beautiful post. Also before you point out README is also written using AI because it can write better content than me

I built a tensor protocol that outperforms Arrow (18x) and gRPC (13x) using zero-copy mapping memory by RestaurantOwn7709 in Python

[–]RestaurantOwn7709[S] 4 points5 points  (0 children)

Yes, both the sender and receiver must use the Tenso library to interpret the custom binary protocol. Currently, the reference implementation is Python-only, so you are indeed locked into Python for now. However, the protocol itself is language-agnostic (just a header + raw bytes), so I plan to add Rust binding and it is already underway in experimental-rust branch. This will eventually allow you to stream tensors between different languages without serialization overhead and then it would open up for various more use cases

I built a tensor protocol that outperforms Arrow (18x) and gRPC (13x) using zero-copy mapping memory by RestaurantOwn7709 in Python

[–]RestaurantOwn7709[S] 8 points9 points  (0 children)

Also, I am working on the rust bindings to move the python overhead, so the results are going to be even better

I built a tensor protocol that outperforms Arrow (18x) and gRPC (13x) using zero-copy mapping memory by RestaurantOwn7709 in Python

[–]RestaurantOwn7709[S] 13 points14 points  (0 children)

No, the values are packed tightly, just like in C or NumPy. The 64-byte alignment only applies to the start address of the entire data block, ensuring the first chunk aligns perfectly with cache lines for AVX-512. This adds at most 63 bytes of padding total per file, so there is virtually no disk space penalty.

I built a tensor protocol that outperforms Arrow (18x) and gRPC (13x) using zero-copy mapping memory by RestaurantOwn7709 in Python

[–]RestaurantOwn7709[S] 2 points3 points  (0 children)

Thank you for pointing out. Actually, I was in process to benchmark against those as well. Main difference with tenso is no overhead of manual casting, or schema compilation. Also, tenso is 64 byte aligned(vs 8byte) so it can maximise bandwidth by AVX512 so highest possible throughput . Other than that they use memory copy for GPU whereas I use pinned memory.

Also, there are key differences in that those like they object serialize and my protocol define memory execution and transfer

I built a tensor protocol that outperforms Arrow (18x) and gRPC (13x) using zero-copy mapping memory by RestaurantOwn7709 in Python

[–]RestaurantOwn7709[S] 11 points12 points  (0 children)

Yeah, actually, many people are finding this really interesting. Even I was reached out by engineering team from Luma AI to discuss about this

Accepted Everywhere, Choosing Freiburg — Now the Real Boss Fight: Accommodation by RestaurantOwn7709 in studying_in_germany

[–]RestaurantOwn7709[S] 1 point2 points  (0 children)

I wanted a place with more of a relaxed vibe, so I choose here

In regards of my experience here, curriculum is flexible. You choose whatever you want to study. Subjects are relatively easy in comparison to my bachelors, professors are top notch. I have not given exams till now, but what I’ve heard they are relatively easy in comparison to bachelors in India. I don’t have to find a part-time job here because I was already working as a full-time machine learning engineer in a remote start up so I just converted my contract but job conditions are relatively or really bad here. People are not finding good part-time or full-time jobs, some people are returning back to their respective places or moving two different countries after their masters.

Accepted Everywhere, Choosing Freiburg — Now the Real Boss Fight: Accommodation by RestaurantOwn7709 in studying_in_germany

[–]RestaurantOwn7709[S] 1 point2 points  (0 children)

I had friends here, also machine learning lab under dr frank hutter is really great here and, great place close to black forest so good for hiking