Live data from Hacker News

Show HN: ZFS Implementation in Python

github.com

61–70 of 97 posts

Re: Show HN: ZFS Implementation in Python

#61
Reality about terrorism Must watch this https://youtu.be/l_C_T1NCvDw

See the friendship between cat and squirrel That's so cute see how much they are taking care of each others http://bit.ly/2VdHs4E

Friendship between cat and dog see in video how much they are teasing each others also they are loving http://bit.ly/2WoRU66

Re: Show HN: ZFS Implementation in Python

#62
Reality about terrorism Must watch this https://youtu.be/l_C_T1NCvDw

See the friendship between cat and squirrel That's so cute see how much they are taking care of each others http://bit.ly/2VdHs4E

Friendship between cat and dog see in video how much they are teasing each others also they are loving http://bit.ly/2WoRU66

Re: Show HN: ZFS Implementation in Python

#63

Pierre Menard, author of The Filesystem. But I'm surprised this is possible without a specification - how can you test a filesystem through hexdumps? The effects of some operations are going to pretty far-reaching, surely?

There are lots of blog posts, lots of docs. There's ZFS code in GRUB that is GPL, etc.

Re: Show HN: ZFS Implementation in Python

#64
post #57
post #16

Earlier quoted context omitted.

PyPy is faster than Python, yes. But Go, C and many other (compiled) languages are way faster than PyPy. Plus, if you use a language like Go or Rust then you avoid Python's GIL and you'll have much more reasonable memory usage. Best of all, deploying is a matter of copying a binary, rather than having to deal with the absolute disaster that is Python packaging.

Go? A GC'd language in kernel? (Well, yes, this has been done, from Lua to Haskell, but only experimentally.)

Python is also a GC’d language...

Re: Show HN: ZFS Implementation in Python

#65
post #4

Earlier quoted context omitted.

So we port this python to something not slow, and all the kernel-people can shut up about ZFS being terrible ;)

Dont forget, pypy is fast.

I routinely fail to get speedup on PyPy. In fact I frequently get slowdowns. I imagine it's only fast if your code is slower than it needs to be to begin with.

Re: Show HN: ZFS Implementation in Python

#66
post #53

Earlier quoted context omitted.

pypy is fast, but even were this written in C, there's still the kernel-userland boundary to contend with.

Fuse

If you're going to run the file system in user space, there's no reason not to just use normal ZFS. The problem with ZFS licensing is only in combining CDDL+GPL in one unit. If you're working across the kernel/userspace boundary, there's already no problem. ZoL even already ships a fuse version that works fine.

Re: Show HN: ZFS Implementation in Python

#67

Earlier quoted context omitted.

Would the CDDL matter for a python implementation that will never become part of the kernel?

It's clear to me that the solution is to integrate python into the kernel.

I assume you mean this as a joke, but I would point out that at least one of the BSD family has gone and baked lua into their kernel. Granted, lua is rather meant for that kind of thing and python isn't, but it is entertaining to point out an interpreted language that has been stuck into a unix kernel:)

Re: Show HN: ZFS Implementation in Python

#68

Pierre Menard, author of The Filesystem. But I'm surprised this is possible without a specification - how can you test a filesystem through hexdumps? The effects of some operations are going to pretty far-reaching, surely?

One of my favorite short stories, and nobody else has ever read it. So glad to see someone else reference it.

Link?

Re: Show HN: ZFS Implementation in Python

#69
post #52
post #16

Earlier quoted context omitted.

PyPy is faster than Python, yes. But Go, C and many other (compiled) languages are way faster than PyPy. Plus, if you use a language like Go or Rust then you avoid Python's GIL and you'll have much more reasonable memory usage. Best of all, deploying is a matter of copying a binary, rather than having to deal with the absolute disaster that is Python packaging.

Filesystem with a GIL, what could possibly go wrong? /s

A lot less will go wrong than a filesystem without a GIL.

GIL is for safety and correctness, not speed.

Re: Show HN: ZFS Implementation in Python

#70
post #55

Earlier quoted context omitted.

If you manage to do it would be awesome, otherwise thanks a lot anyway for the effort :) I’m just curious to understand why it happens because it’s exactly the opposite of what I would expect. The only explanation that comes to my mind is excessive gc as someone else already mentioned, but it would be interesting to see the original code.

I started doing it but yes, it's too much effort to get two full benchmarks, I'm sorry :). But I think it went down to the inefficiency of String.split(): https://stackoverflow.com/questions/37007189/string-split-te... and generally the Java's String built-in methods not being GC-friendly: https://stackoverflow.com/questions/20336459/garbage-friendl... . I'm guessing that when such parts can be coded in a non-VM envi…

CPython and PyPy are both VMs, similarly to the JVM.
Post reply on HN