Tell me a story.

All those scars upon my back tell me a story.

Once upon a time "it just predicted the next word". Thats about sums it up. At least on July-23rd it did for me.

I was always curious as to how it really works. Here is the sad reality. U don't know unless u write one. I mean glancing through a tutorial or even really reading one is cute. The topic is small. ~500 lines, if u ask ME. By all means, read it. Tell yourself a story. Call it good.

Or, maybe, do The Ritual. Have someone else tell u a story. Really teach it. Draw some pictures. Graphs. Answer questions. Write the code, explain the missing bits. Quiz, and quiz again. Then, maybe, turn it into something real. I dunno, big ask. Go to that crazy 25-hour painkiller-fed rave (don't leave your bed not that u can). Come out changed. EZ. Its your life (hi Danny).

How's mine different? I best take things in certain manner. Having one open with the code already written is an extra crutch, and boy do I need them. Peek at the answer - see the destination from the get go, see the journey. Many parallel views, few parallel realities. Copenhagen interpretation of attention. Minkowski? Never fear. Saves you "ok, but where is this whole thing going" kind of question. So there, saved one for u.

Sometimes u get more than what u bargained for. U get to see a lot of what I got in the days to come. Dasllama is, already, something else. Embed it, or use dasllama-server - all good stuff, all in good time. Don't read it yet. It will shrink. Has to explode first, grow organically.

I have to say something here. llama.cpp is awesome. Wanna learn something real? Read it, like I did. Its full of stories. They inspire. Give back, too. I filed a few bugs. Maybe I'll submit a few C++ lines, if I force myself to that hell hole ever again. Sometimes it causes the best form of flattery, only for u to then throw it all away. And do better. Tell your own stories. I'll tell mine.

Here is the fun part. I'm not a doctor, Carl. I'm in the business of making programming language. Just one too (hi Andrei). Nothing tests programming languages like scientific research on frontier performance critical applications in heterogenic environment, a mouthful. Its a gift that keeps on giving, and gave it did.

[tune] framework, which will get its own story, is something else. No, Boris, u can't hand optimize 392 loops (roughly). Don't even try. Nevermind their permutations. U are not 'the community', nor 'the collective'. Did u know I worked for The Collective? So I did something better - and now u can tune your own loops a new fashion way. They tend to come out better, for the box they are tuned for. Which is every box.

I'm doing the same with Metal kernel scheduling at the moment. By the time u reading this, u can actually read the code (shocking). No, Boris, u can't hand tune the order and dependencies on 38 kernel families. Don't even try. U only have M1. U just bought M5, its not even here. That M3 u secretly ssh to ... just don't.

I might look into expanding this for Vulkan. I wanted to stick to CPU, but that hybrid kernel for the MOE model kept running circles around CPU. On a 35B model. On an 8gb 3060. U know, the useless kind. Ah, the irony.

Then there was a jobque. Did u know that jobque bites? I thought I had it good. I fixed it. I thought I had it decent. I fixed it. I thought it might do. I had to add team mode, spin-to-win, limits. It hardly holds now. I might have a few more rounds in me. There is now a tool - u can see what went in when - PS2 A-Probe style, GPAD style, beyond debugging... nah, that last one is too awkward unless u were on ice during the PS3 launch. Same flashback. Same bar graphs. Same job manager struggles. Way better latency way back then.

Of cause, there is also first part of this story. Which I skipped. For now...(strudel, evil chords, empire strikes back). Not today, really, not today.

So many stories, each deserves at least a blog post. I've been neglecting blog. "Stories" pulled me in. They tell me a story.

Walking the inline. →