Live data from Hacker News

Tinygrad

github.com

101–110 of 159 posts

Re: Tinygrad

#101
What kind of performance can you get with micrograd? It looks to be a few python files (and no external library calls?), so I imagine it's insanely slow. At least with tensirflow/pytorch there are some calls to C in the dependencies - so the speed decreases there are from the loops and such written on top of that. What's the deal here?

Why not just use Julia :)

Re: Tinygrad

#102
post #49
post #38

Earlier quoted context omitted.

I mean, he's obviously not a normal guy. I don't know what you expect. From a recent profile: > Apart from a criminal streak, Hotz shares with Raskolnikov, Dostoyevsky’s antihero, a predilection for instrumental reason and an urge to test his own mettle, to know himself by knowing his limits. As a young adult Hotz allowed himself to become addicted to prescription opiates almost as an experience in self-mastery. “I d…

> not a normal guy I assure you some people try themselves - and I do not see what is not "normal" about it. To experience, voluntary, then grow, is the norm.

The hubris of framing it that way is kind of wild.

Re: Tinygrad

#103
post #93

Earlier quoted context omitted.

I think I've proven my point well enough here by making it clear that in order for them to stay under 1kLOC they have had to make golfing-style changes that cannot be automated. If I were hell-bent on convincing you, I could fork their repo and add literally any feature requiring more than ten LOC and win. They would have to bend over backwards to get enough lines back to be able to merge whatever it is I wrote, with…

That's just like, your opinion, man. And it isn't a rhetorical strategy. It is socratic questioning. Should you sit down and attempt to write something out of spite (an excellent motivator, as good as any) it would go slightly differently than how you theorize. In order to add a feature requiring more than ten LOC you'd actually have to come up with one in the first place :) That would require reading Tinygrad, which…

Socratic questioning involves questioning, not unexplained assertions. You definitely don't come off as a modern-day Socrates when you use the latter.

I'm not against something like a 64k or 4k intro competition, because the results are generally that you get to see someone take advantage of every inch of their machine, like in https://linusakesson.net/scene/a-mind-is-born/, filing down an executable byte by byte until it does what they wanted it to do. That's rad as hell.

The results here are that... someone has filed down their Python program in a way that makes it smaller. Not even in number of bytes, just in number of lines. In a really uninteresting way. It's not even like the Python examples on StackExchange's codegolf in that sense, because we could go the complete opposite route and merge most of these statements together with semicolons. It doesn't become more interesting as it gets smaller, or less interesting as it gets bigger. It's the same program regardless of how many lines it occupies, which makes it that much less interesting.

So, yes, to some extent we agree, you can just run this through automated tools and it will be as many or as few lines as you like. I see that as pointless because other restrictions would be much more stimulating, and not restricting yourself so heavily would probably lead to better (or at least more legible) results.

But sure, that'll just be this fuddy duddy's opinion.

Re: Tinygrad

#105
Algos run the world.

"In bioinformatics, BLAST (basic local alignment search tool) is an algorithm and program for comparing primary biological sequence information, such as the amino-acid sequences of proteins or the nucleotides of DNA and/or RNA sequences." - could it be used to identify and group similar structures in NNs? (https://en.wikipedia.org/wiki/BLAST_(biotechnology))

I've been thinking of some kind of visual representation of weights, graphs etc. Images and evolving images as the substrate of the neural network. Pixels on a plane, planes affecting each other, activation recorded as brightness/color. Then we can use visual algorithms like SIFT (https://en.wikipedia.org/wiki/Scale-invariant_feature_transf...) to do cool stuff and grow better and better graphic-based NNs.

Re: Tinygrad

#106
post #47

Earlier quoted context omitted.

Who cares if he’s a nice guy?

If he's being held up as some shining beacon of the "hacker-ish culture" as the grandparent poster is doing, it would be nice if he weren't also a jerk.

No post body was provided.

Re: Tinygrad

#107
post #54
post #47

Earlier quoted context omitted.

If he's being held up as some shining beacon of the "hacker-ish culture" as the grandparent poster is doing, it would be nice if he weren't also a jerk.

I don’t think of him as shining. I like that he’s a real person, flaws and all. Not someone to idolize. Many great hackers that I know and in general are total jerks (I suspect the trait helps wrangling a machine somehow but idk). I wouldn’t find it accurate to my experiences if we had some polished perfect optics guy as representative (not that that’s what he is)

> I suspect the trait helps wrangling a machine somehow

Disruptiveness, for lack of a better term. These are people who are well-acquainted with finding the boundaries of systems and barreling through them.

Re: Tinygrad

#108
post #93

Earlier quoted context omitted.

That's just like, your opinion, man. And it isn't a rhetorical strategy. It is socratic questioning. Should you sit down and attempt to write something out of spite (an excellent motivator, as good as any) it would go slightly differently than how you theorize. In order to add a feature requiring more than ten LOC you'd actually have to come up with one in the first place :) That would require reading Tinygrad, which…

Socratic questioning involves questioning, not unexplained assertions. You definitely don't come off as a modern-day Socrates when you use the latter. I'm not against something like a 64k or 4k intro competition, because the results are generally that you get to see someone take advantage of every inch of their machine, like in https://linusakesson.net/scene/a-mind-is-born/ , filing down an executable byte by byte un…

> The results here are that... someone has filed down their Python program in a way that makes it smaller. Not even in number of bytes, just in number of lines. In a really uninteresting way.

Egads. No, it isn't the focus of the repo. You keep on missing the forest for the trees.

Tinygrad expresses its ideas succiently and clearly. It is not an exercise in code golfing. Close to the end of feature completeness they noticed it is hovering a round number and spent a minor effort pushing it down slightly for street cred.

Those changes did not impair readability or harm the project in any way. They did not go over board. You say they did, I reckon, just because you are allergic to any such changes - that is your personal subjective opinion. A waste of time you say! Bah humbug!

Well, yeah, so? Heh.

I say run it through black and make it objective, it is a great tool. It will reveal just how minor the difference is in this specific case.

I keep trying to focus on the substance. Did you actually read this project? Not through the eyes of a human linter? Was it difficult to follow? What are we arguing about if not the absolutely least interesting aspect of it really?

Re: Tinygrad

#109

I find this related page more interesting: A Breakdown of AI Chip Companies https://geohot.github.io/blog/jekyll/update/2021/06/13/a-bre... I especially like that he outlines an actual plan for an AI chip startup that he thinks will work, and has an update explaining why he was subsequently convinced that it wouldn't work.

The detailed follow-up to that post is here: https://geohot.github.io/blog/jekyll/update/2021/12/12/a-cor...

Re: Tinygrad

#110
post #82

Earlier quoted context omitted.

Do you know how to program? I have no idea what you're asking.

Yes, I know how to program and know a good amount about machine learning in Python. The problem is these machine learning frameworks are rather heavy to be shipping around, although I guess you could do it. I was wondering if there's any lighter weight machine learning libraries, which might not have all the bells and whistles, but would be better to ship and train models on consumers computers. Most of the time peop…

I think the real issue here is with the training speed. Presumably a GPU is required to run the game, but is it restricted to just NVIDIA GPUs/a subset of those?

I don’t know of any such libraries offhand and my guess would be that’s because the size of the library generally matters less if there’s a requirement to have a powerful GPU.

Post reply on HN