#programming
1 messages · Page 142 of 1
by using only machine code, you limit yourself to the lowest level of complexity
its like trying to understand human brains by studying neurons
just completely different levels of abstraction
it’ll get better once im home, im stuck making the syntax in apple notes 
well, i plan on moving up, i've used C y'know
wifi spiked

congratulations
you should copy hblang syntax 
i will write a rudimentary compiler in machine code for a simple hex-based language
why
and then
show me what your syntax will look like
hblang 2.0
how will you make an AST in machine code
use that to make a higher level language maybe
don't need AST
om after hblang rust declarations feel weird
if your language is anything more complex than a lisp it will take you a decade
compiling on hopes and dreams is so real
or i could make my own hblang compiler 
how so?
i just havent written rust in a while
and had to think a bit about how name must come after struct or enum keyword
not before
i had this happen to me too
its like how i kept writing -> instead of => in pattern matches after using F#
that reminds me of how i learnt rust while doing scala in uni so i kept messing up pattern matching 
when i tried using C++ typedef in C# forgetting thats not how C# works at all 
i did want to try F#
is it good?
i almost forgot how to use traits after using hblang's type system for so long

is it worth it
wdym worth it
learning languages that teach you something new is always useful
staying in your little bubble is not productive
but the bubble is comfy 
personally i only use F# for unity modding, i like it so much more than C#
but i'm writing a bnf, it won't be complicated 
im aware, however it’s getting to the point where it’s just "another language to learn" if you know what i mean. by all means i am not a programming god but i just know too many languages now
mhmm
please do
python, js, c#, java are all the same language
c++ and c only introduce pointers beyond that
i know around 8 or 10 i think
hblang is different to c because it has type objects
near proficient level
but hblang is zig
erm what is a type object?
go is literally just a mix of java (gc) and c (average age of language features)
my point is you have to learn languages that are actually different
GenericType := fn($T: type): type {
return struct {
.inner: T;
}
}
TypeInt := GenericType(int)
TypeStr := GenericType([]u8)
TypeTypeStr := GenericType(TypeStr)
how would you even init a TypeTypeStr
reminds me of that one piece of c code
a := TypeTypeStr.(TypeStr.(""))
b: TypeTypeStr := .(.(""))
c := TypeTypeStr.{ inner: .{ inner: "" } }
one of various wyas
this doesnt exist in hblang
augh im too tired to yap
my tldr is that i feel like it gets annoying when you know too many languages, i feel like it’s nice learning cause there’s so many different benefits in a lot of languages, i just don’t want to learn another language that’s like the rest lmao
then add it 
if you get what i mean
that makes sense, C isn't that hard
my head hurts
f# is inspired by ocaml but runs on CIL
f := fn(): ^^(^fn(): void) {
@error("todo: ", f)
}
the closest you could get would be this
but ya u right, was just wondering if it would be worth it to get into learning it (especially considering its microsoft made)
interesting
although, syntax is confusing
that’s probably why the CIL spec has so many op codes i haven’t seen in use
clearly, everyone should be writing code in brainfuck 
ocaml (or sml) is potentially a better choice to learn since it didnt have to do any adjustments for CIL
or just haskell
ocaml is a good learning choice
they have different approaches to modularity
i’ll definitely look into both
-[------->+<]>-.-[->+++++<]>++.+++++++..+++.[->+++++<]>+.------------.---[->+++<]>.-[--->+<]>---.+++.------.--------.-[--->+<]>.
ocaml seems interesting though
i have just added documentation.enable = false to my nix config
come on, it's not impossible 
its not impossible like an anvil falling on your head from a cloud
no man pages 
i didnt like how long it was taking to generate man pages every time
i dont use local manpages anyway
you can just disable that documentation.man.generateCaches = false;
hmmm maybe later
its useful
man 5 configuration.nix
man rsync
man 2 mmap
man 7 signal
muahahaha
maybe i am convinced 
i will re-enable man
sadge
er what was this program supposed to do?
this really looks cool, i’ll keep the link somewhere so i can read it when im home
thanks for the course 
it's supposed to print hello world
in addition to generateCaches = false; you can do documentation.doc.enable = false; and documentation.info.enable = false; for a small boost
doc is for html manuals, its actually pretty interesting because e.g. bash, git and nixos provide html manuals, but its useless if you dont use it 
info is gnu docs, it would be usable if it didnt use emacs keybindings
either your program is borked, or my bf interpreter is
it does print hello world, I think your interpreter just sucks
i see 
not surprising
lol
works on my machine 
my hello word works just fine though 
erm i contest that
This will be malbolge situation 2 : electric boolagoo
++++++++++[>++++++++++<-]>---.
this should print a and it is about as simple as a program can get with a loop, so see if that one works
testing obs v4l2 loopback
also useful packages with man pages to add to environment.systemPackages
man-pages - linux man pages (man 7 signal is from there), i use it much less than i should but even then it ends up being useful for me
man-pages-posix - posix man pages, this one is less useful because linux provides the same docs but more specialized for the os
awa
my echo and your a works 
it looks fine on my end 

classic
what is happening
try this:
+>>>->>--<<<<<[,[->+>+<<]>----------[[-]<+>>[+[-->++]--<++[-<+]-<]++[-->++]-->-[-<+]-<<]<]>>>>[.>]
it should also echo a string, but it copies the string into memory first and prints it afterwards 
it flips it so yo don't freak out because you're human and see yourself in the mirror only
it's good ux
you subconsciously "look worse" when you're not flipped
and for other people of course you're not flipped because tht's how they see you
What if I want to flip the person tho?

why
why not?
is that audible
i dont think so
drat
programmer discovers webcam feature
no of course not you're fucking muted the webcam is video only
that's stupid
??
external camera may have audio
let me try this
you know you can go live with a camera device right
is it audible
specifically for that purpose
still no
capture devices and whatnot
er it's not printing, it gets stuck on read syscall
because audio is captured separately
on browser end
you have to select the camera as the microphone or something like that
it doesnt exist
needs to be terminated with a newline (unless I've copied the program from my phone wrong)
obs v4l2-loopback plugin
ohmygod i fuckingcan't
Of course it doesn't have audio
Usually physical device will make separate device for audio and video
And that can be selected
^^^^^^^^^^
because a webcam
is
VIDEO
you probably also have to configure pipewire output on obs end
or actually just dont configure it on obs end
configure it separately
it would be infinitely better to use obs
audio virtual device
this is what you want
i dont have any audio btw 
and you can actually select an audio source as well
it seems the program only successfully echoes and exits if i only enter a newline, if i type in anything before hitting enter, it will halt forever
i do have audio
Wait then how do you know konii doesn't have sound?
disregard that
I copied it wrong, here is the actualy code I meant
+>>>->>--<<<<<[,[->+>+<<]>----------[[-]<+>>[+[-->++]--<++[-<+]-<]++[-->++]>-[-<+]-<<]<]>>>>[.>]
I am not an LLM 
PLEASE UNDERSTAND: ANY webcam/capture card/whatfuckinever will be TWO separate devices, one VIDEO FEED only, another AUDIO only (microphone). that's how that works. EVERYWHERE. ANY device.
it also needs 115,000 cycles to echo "Hello, World!\n" so it may take a while
EVERY os.

you could have led with that 
hey now, mandlebrot.bf takes 10.5 billion cycles to complete. This is on the low end
i did not know it would take time
why
a stress test or something
or to test my loops
test the loops
specifically the wrapping
as I used scanners for moving to the location for writing the next char
aka +[->+]- will move right until it finds a cell with the value of 255
so like, how long?
while as in while(1)?
copy.sh takes 2ms, my old rust project took 8ms
but a manually written interpreter can take longer, especially if it hasn't went through a compiler, and doesn't implement any optimisations itself
i wrote this interpreter before the human cpu arc, i wrote it in C
i made it work, and then i forgot about it
haven't done any optimization or bug fixing or anything
wait wdym
2ms and 8ms for that program to echo?
yes
copy.sh compiles the brainfuck into javascript, so it is super fast. my program precomputed the loop jumps but nothing else
CUDA driver version is insufficient for CUDA runtime version
Build cuda_12.8.r12.8/compiler.35583870_0
Driver Version: 580.65.06
are you high nvidia, if anything my driver would be too new
as in how much resources its using or what
like what instructions it's executing
i gotta know where my program hands up
not sure if thats possible
i used gdb to find out what function it is stuck in
actually there probably is a way to do it
no reason that would be impossible though, right? 
something with ptrace or something
idk i've not looked into it
im sure theres a way but idk how
i will surely find out eventually
like monitoring a vm too would work
low-level advanced stuff 
that's what i was thinking
this reminded me how cool i felt when i read and wrote memory of a gpu passthrough vm
totally transparent to userspace software
I am sooooo close, been working 4 months to get Live2D moc3 models to work as a chrome extension in chatgpt
and kernel too, but there's too much heuristics there to collect to detect a vm
i did not test kernel vm detection
mainly because that's only anticheat software and i don't wanna get accounts to ban
too much hassle
surely that's as easy as getting a live2d js library
There's an open-source example with VRM? https://github.com/camenduru/ChatVRM-LocalAI
VRM is even better, more expressive
vrm is literally 3d
Also nothing stops you from making a 2D model in 3d space 🙂
that's subjective, why do you think vtubers use live2d
also why is it in way higher demand and more expensive
it's all hacks though, making 2d look like 3d is a lotta work, riggers make $3000 on a simple model
isn't that a literal game engine or am i misremembering
they're using pixiv's vrm driver for threejs
which is uhh not the same as pixijs
and isn't related
Man I have so much to learn
also it's more like a 2d rendering framework
i was misremembering kind of
Also have you seen this: https://github.com/Open-LLM-VTuber/Open-LLM-VTuber
Classic newbie mistake is to implement something from scratch yourself when there's literally end to end solution that you can adapt to your case
Unless this was intentional from start to learn things
me when vm fusion doesn't have gpu passthrough
visual accompany to the chatgpt interface
i used qemu
also very nice that i could recompile it to strip the stupid qemu labeling and serials that were triggering vm detections left and right
or rather replace them
all my homies hate QEMU HARDDISK
can the self/this argument for functions inside classes interfere with function wrappers in python
i feel like i should know this lol
is there this in python
So you can just rip out this and insert it into Chrome Extension, this is rendered on <canvas>
live2d renderer in JS
All the wiring still a lot of things to do 🙂
but I'd argue this is sort of better to learn entire thing so you can then later use something from a shelf and be ready to jump into fixing a bug that might appear somewhere down the stack
you can use whatever you want for classes
you linked a react component that's 130 loc and half of them are comments...
You could use this, linters will execute you but it's possible
i've never actually seen anyone use this in python
ive only even seen anyone use this once
I've used myself once
thats just a crime
The project was jank and self was already used in scope
Yes, it's the place where we render the live2d on canvas. The way you'd rip that out is clone entire project, add your Chrome extension as a module, then import this as a component into extension.
Then if needed you can start purging all the electron 💩 but only if you really want 🙂
the goal is to bundle the extension
i

that would be so confusing to read
I might switch it to this for the lols
should be I, that's less confusing
nononono dont 😭
that's a shit way to do anything i'm sorry
to complete a contract and collect money? ok
but still weird
I've swapped it from myself to this 
this is honestly more acceptable just bc its still like
you’ll spend way longer surgically ripping it out than implementing it yourself, in this case in particular at least
javython
For contract case it's even more weird if you decide not to use available solutions 🙂
are we gonna waste 4 months of dev time + all the costs making a barely functioning product?
that's too expensive for any sort of investor/company
gotta ship value fast and dirty, that's how it is in most companies today
that could either be
a) actual port of python
b) really terrible joke language
c) nonexistent
I didn't have any ideas when I had to do it, so having a good name is nice
just use self
actually scratch that
look up what the proper practice is for whatever lanugage you're using
It's already in scope in it's intended use
I don't agree but I respect your opinion 🙂
what are you talking about. it’s a library that takes 20 lines of glue to set up
and then dump that and use self anyways
Soooo...mine’s intentionally from scratch so I can control every layer and "own it" a bit more. Chrome extension context, Live2D rendering via PixiJS, model fitting, scaling quirks, all of it is self inflicted harm lol. This is a new world for me. I tried finding already built ones, and found a few but none were chrome extension based but more "plug into your website via FTP,etc etc. I’m basically building a “visual companion” for ChatGPT rather than a VTuber pipeline, so I’m skipping Three.js/VRM entirely....or lets see 🤷♂️
For me, the fun (and pain) is learning the wiring so later I can rip apart an off-the-shelf solution and fix bugs without crying. 😅 Well okay lots of crying and frustrations, damn. Also I need to set it up for my future plans with this 😄
hear me out just ask chatgpt to make the extension for your /j
If it wasn't exactly what the project is, then I'd agree. Cursed stuff with python's internals is not one of those cases.
20 lines for loading model, expressions, making audio work, lipsync, sending audio data in chunks, ... and so on?
just so you know, as far as you’re concerned VRM is the same thing as Live2D, but for 3D models. and threejs is obviously for 3D. just threw me off that you said you’re “skipping” them
well, this sort of makes sense, you make a lot of mistakes and learn your own way; then screw it all and use something better but already knowing what you've went through
kinda like: "oh I KNOW the pain point, and THIS is the best solution for it!"
Oh wait im confusing myself, I need to sleep lol, appreciate the chat though 🥴
yall if I use a lot of threading in my projects should i switch them to use asyncio
if you're using threading it is already kinda sus 🤣
what's wrong with threads tho
Threads and asyncio serve completely different purposes
Though I guess maybe not as much in python
I'd assume you are sending messages/sync between local processes to do some arbitrary work with them?
If asyncio worked on multiple cores, I'd not be able to use it on one of my projects due to race conditions.
sort of
why not use gRPC/http/any other standard protocol?
im not sending requests really
mostly im trying to run a lot of stuff concurrently
it's sort of vague, are we talking long-running processes or short running?
uh
like I/O bottle-necked or something else
hard to say
i just looked up asyncio because i don’t do python and i can’t see any mention of threads, is it just green threads/event loops
kinda varies
why are you concerned about threading then
yeah
(among other things)
i get that it’s in the fucking name
async
i’m just saying it doesn’t thread
it uses an event loop system
python doesnt thread even
so one thread
python threading isnt real threading
you can do real threadpools in python
most of the time at least
you can also disable the GIL in new versions of python
good morning konii
its 11pm

this is outdated and also wrong
you can do true multithreading in python, even without spawning multiple interpreters, if you just disable the GIL
concurrently running stuff
i didnt mean that you literally couldnt do true multithreading
i just meant that like
Threading is good if you need to share context in a single process, if you want some concurent/parallel processing, etc
This is good for example for consuming lots of messages (event processing) or responding to many web requests simultaneously (e.g. nginx), where shared context is minimal.
But if you use it to start/stop sub-processes that do some stuff without real communication you don't need this level of granularity / control over resources.
A normal set of processes would do just fine. If you're on linux you can even do sockets if need to send a few bytes here and there
the point of threading in python is for IO heavy applications
if one thread blocks on IO then another can resume work
aside from that they are just concurrent
while the GIL is enabled
im using them mostly for concurrency
yeah but if we take that explanation at face value if you block every thread except for the one that’s actually executing there’s no concurrency
or am i stupid
nix has that version in the python313FreeThreading package apparently
no that’s literally what that says 
threads can run in parallel but the problem is memory safety, are you sure your thread 1 would not modify shared memory at the same time when thread 2 works?
not with the GIL
that’s why they use an event loop
or locks in this instance
GIL = cannot run in parallel
in cython (pre-gil removal), the threading model is kinda bad but its still useful for io-bound workloads
other implementations of python (like the experimental free-threaded cython) can have different threading models that allow proper threading
event loop doesn't save you from accessing shared memory 🙂
in a parallel context there is always some form of shared memory unless you do message passing
its solved with atomic operations
wym
Atomic types
i mean they’re not shared between threads hence you can’t have traditional race conditions
it’s not
whatever
event loop on one thread, accepting many connections at once, processing things one at a time but imagine you created a global object everybody can access (aka shared memory)
e.g.
- you have a Facade for API client that is "cached" for performance purposes (big mistake)
- first request goes in (customer A), sets the API token inside that global
api_client, does the request - second request (customer B) goes in, lets see, oh we already have
api_client!111 gonna use that (woohoo performance!11) - second request from customer B uses api token from customer A, they fetch the Shopping Cart
- WTF I didn't add THESE items in my cart!?
- OH WHY THERE'S someone else's address on my profile? WTF going on
this really happened to a real project I was at back in 2019 🤣
event loop btw
very safe they say btw
it's thread safe right, one thread running all the time 
I had to do all-nighter to remove all the cached api clients throughout entire frontend app...
that... would work the same way in a sync context.... i don't understand, are we clearing the token at the end of proccessing the request?
that's the hat trick, we didn't 🙂
classic mistake, don't clean up after the request is finished
so, where's the issue with concurrency
the trick is to always create separate context / shared memory for requests, then you have no problems with concurrency
but that rule was violated (global api_client) and there you go
i've never felt more stupid
i really don't understand why this would not happen in a perfectly sync environment
if there's no event loop then you have to create a new thread every time a request goes in
it's isolated
thank god i'm not actually stupid
so you were not clearing the token and the issue has absolutely NOTHING to do with any form of concurrency
it would happen regardless
great
it would not happen on django backend for example
which is not concurrent on asgi/wsgi
technically you have workers on event loop that pass web requests to thread pool
then django selects a web request and assigns a free thread from that pool
difference really is just how much context is shared
ahhhh i get it, "threads" which don't actually share anything and are subprocesses
i'm so mad i wasted mental capacity on this
Threads ≠ subprocesses.
Threads within the same process share the same address space (globals, heap, FDs).
Subprocesses don’t.
In Python, threads still share memory even with the GIL, only one thread runs Python bytecode at a time, but they interleave and C libs can release the GIL.
That’s why putting per-request data in a global (e.g., a cached client with a mutable token) is risky in both threaded and asyncio setups.
Fix is architectural, not “async vs threads”: if you keep state per request (ContextVar / threading.local() / DI), make clients immutable or pass the token as a param you're
.
If you want hard isolation, use processes.
why does my ai have to have 5 minute latency 😭
model is warming up / you have a slow inference provider / classic first run where model is actually being downloaded / pick your poison
i really don't know how this ended up the conclusion i reached since you mentioned a cache variable
its running locally
man i need sleep
lemme think hmm
total_memory_available = os.get_ram_size()
total_memory_used = os.get_used_ram(this.process) + os.get_swap_size(this.process)
shared_memory_size = total_memory_available - total_memory_used
(I'm not a systems programmer)
it went straight from 3gb to -2.37gb
how do you have negative filesize
also it probably just grabs the actual filesize of the shared memory instead of calculating it
it just means that the thing you are subtracting is larger than thing you're subtracting from
I dont think that's how it's computed..
that was for one process specifically btw
you wrote the thing twice
yeah i get it but it's genuinely such a stupid architectural decision. the point of an event loop is to magically make your sync code do async without threading. if you're doing something that would fail in sync code and assumes subprocesses where there aren't, it's not just a skill issue, it's firing worthy - you cannot program, congrats, and why do we pay you? you can't even fucking write sync code
yeah i get that it's "shared memory" technically, but then you can argue any global state is "shared memory" in ANY app, sync or async, threads or subprocesses or different machines altogether etc. the problem with shared memory with threading is race conditions, where you truly concurrently access the same memory. that is not a concern if you're not accessing memory concurrently which you aren't in this case
sorry my brain CPU is melting at 27C room temp and I'm throttling 🤣
yes concurrent access to shared resource isn't constrained to threads/event loops;
in fact it's everywhere even with process isolation, if you store state in a DB and you have two clients accessing it at the same time it's gonna corrupt
ok
im just gonna assume that deepseek is enjoying using all my memory or something
and taking an extra long coffee break
that's what transactions are for, and that's way outside of the realm of the language/runtime
its taking like 5 minutes to generate
when you run model for a while, you have context overflowing into your ram/disk
its not been running for a while
are you running on RAM/VRAM?
and once again, you can't access memory concurrently in an event loop
what kind of model are you running, 1B, 7B, 420B?
how much ram do you have
36gb
and vram?
and they have shared memory or whatever it's actually called, my brain is fried now
point is, however much vram it needs
time to see if the prompting is even finishing
it takes from the system ram
im just gonna restart ollama lol
can you confirm or deny you're on an apple silicon macbook
i am in fact on a sillicon macbook
then you should be fine if the model can fit in 36gb
you can still stomp on shared state via interleaving (cooperative concurrency) when you await
import asyncio
counter = 0
async def bump():
global counter
tmp = counter # read
await asyncio.sleep(0) # yield → other tasks run here
counter = tmp + 1 # write stale value
async def main():
await asyncio.gather(*(bump() for _ in range(1000)))
print(counter) # often << 1000
asyncio.run(main())
it doesnt usually take this long
oh god what
ok thats concerning
the laptop is quite hot but the fans are on the lowest setting i think
yeah no shit you're yielding
but it's event loop
and there's no concurrent memory access here
at no point
yeah, no simultaneous access to memory but still counter is broken
that's the point
because you're storing counter in tmp before yielding...
that's exactly the misuse of shared state
then just don't yield?
or don't store it?
idk this feels like painfully obvious misuse
don't use event loop if you don't know you can shoot yourself in the foot, I'd say 🙂
or threads
use good old processes
ok i thing they're definitely something wrong with th ai
i do js for a living, somehow i've never ever had any issues with that
newbie mistake 🤣 wait until you do
how much are talking? 10 years, 20?
it took me ... hmm
actually working way less than that, but i absolutely did async in js in like 2019-20
it took me around 6 years to encounter the problem I outlined above with event loop + shared state
I didn't even code it myself, it was another genius frontend dev
who decided to rewrite entire app into TS
and I was the one on fire debugging his shit code
my bad I approved his MR I guess 🤣
also we were leaking memory in Node.js easily just by forgetting to clear setTimeout
again, the problem you outlined is so fucking stupid it makes no sense for this convo to even exist
why are we setting a global in the first place
what caching
why
but it did happen, and not a single dev could quickly figure it out, we were basically stuck because things started breaking randomly, because on top of this we used pm
so the problem was like, happen not on every request but every 4th or so
15 engineers
you're telling me not a single dev questioned setting a global
in a request handler
yeah it was a startup and I was the only MR reviewer
had to ship value fast
no time when you juggle backend, frontend and figure out how k8s work on GCP
that just never happens idk if you knew that
there's practically 0 reasons to do that in any scenario
it was not a global, it was a singleton pattern and I was like "hmm ok we should be safe because we create it inside a function in the js, right?"
little I knew about how event loop works back then
it was a shitshow for sure
but teached me two things
- don't trust singletone pattern
- don't trust event loops
- don't trust yourself 🤣
still, yielding while in the process of touching a global object should set off the loudest alarm bells in your head
I mean... I was exhausted from 12 hour workdays
or i'd go as far as to say mutating any global object in an async context should
hindsight is 20/20
I'd quadruple check myself before I even think about using low-level primitives to "launch some apps concurrently" or do a "simple communication"
I mean, we do have docker containers you can scale with pretty low overhead. Do you really need to save on RAM?
Are we talking drivers / embedded?
btw sometimes not even DB transaction can save you
-- Setup
CREATE TABLE counter(id int PRIMARY KEY, value int NOT NULL);
INSERT INTO counter VALUES (1, 100);
-- T1
BEGIN;
SELECT value FROM counter WHERE id=1; -- 100
-- app computes new=101
UPDATE counter SET value=101 WHERE id=1; -- holds lock, not committed yet
-- T2 (in parallel)
BEGIN;
SELECT value FROM counter WHERE id=1; -- 100 (stale snapshot)
-- app computes new=101
UPDATE counter SET value=101 WHERE id=1; -- waits, then overwrites
COMMIT;
-- T1
COMMIT;
-- Final value = 101 (should have been 102)
-> Lost update under READ COMMITTED
Why: each tx writes a constant based on a stale read; the DB serializes writes but can’t infer you meant “+1”.
Fixes (pick one):
- Do it atomically in SQL:
UPDATE counter SET value = value + 1 WHERE id=1; - Lock on read:
SELECT ... FOR UPDATE → compute → UPDATE. - Optimistic locking: add version and
UPDATE ... WHERE id=? AND version=?(retry on 0 rows). - For cross-row invariants, consider
SERIALIZABLE(with retries) or proper constraints.
vanor uses ligatures 
btw here's Hello World in ES6+
(await (async () => {
const { log: printer } = await import('node:console');
@((cls) => cls)
class ℍ𝕖𝕝𝕝𝕠 {
#world = 'Hello, World';
get [Symbol.toStringTag]() { return this.#world; }
async *[Symbol.asyncIterator]() { yield this.#world; }
}
const hello = new Proxy(new ℍ𝕖𝕝𝕝𝕠(), {
get: (t, p) => {
const v = Reflect.get(t, p);
if (v == null) return t[Symbol.toStringTag] ?? '🤷';
return typeof v === 'function' ? v.bind(t) : v;
},
});
const msg =
`${(await hello?.[Symbol.asyncIterator]?.().next() ?? { value: String(hello) }).value ?? hello}`;
function tag(strings, ...vals) {
return strings.raw.reduce((a, s, i) => a + s + (vals[i] ?? ''), '');
}
globalThis['🖨️'] = printer;
globalThis['🖨️'](tag`${1n} → ${msg}`);
})());
This actually compiles in babel 🤣
hello
i have returned from going to mcdonalds with my sister and her friend for icecream
I love the mcflurry
?
Let me check ure meta data of this image or screenshot shot 🙂
it's not my image
Ure are safe
i know
Phone: motorola ,mm ?
honeslty this is completetly worthit if they didnt break to board. just needs a new fan for 5 bucks
it does make you wonder how it happened though
BROKEN RTX 3090 ?
yes that's what it shows in the image
Ask to owner
If the gpu process and vram it has
And there is a slight dent in the back
love that video
I seem to remember FE cards only having the gpu on the left and the right being a flowthrough cooler.
relative’s old laptop not doin too hot
this is gonna be going back to an older relative, none of the data matters
i’m tempted to slap like windows 10 ltsc enterprise iot on it hoping that itll run significantly better but idk
can only go so far with a battery that’s like 8 years old
You have unlocked new role
congrats on unlocking new role vani
thanks i worked really hard for it
Any reason they can't buy a new battery?
Lts is the best one in windows
they can, the relative who's inheriting this laptop is cross-country and my family brought it back to wipe/do whatever with until it's handed back in however many months
Use it / donate it / wait of orginal owner
make sure the laptop can boot without a battery
the battery in my asus laptop did that back in february and it was really annoying
even when plugged in, it would shut off if the battery was too low, which would happen if it was too cold
the only way I could get it to boot some days was by booting into the BIOS for like 15 minutes to warm it up
i added basic discord functionalities to an ai im working on and tried to test it
but i forgot it has a 5-ish minute latency since i'm running everything locally on my laptop
10 minute latency at times even
this is quite painful.
uhm
seems like we're gonna get 12 minute latency
15 maybe
darn
its still goin
ok i killed it

ok so the issue is the memory
apparently I can't feed it 30 lines
so i cleared most of it
ok so ig i gotta improve that now
Still loading......
I would assume so if you have any even remotely useful LLM in there
Laptops are known for having lower VRAM GPUs
it's quite budget since I'm literally inserting it into the prompt
once i can confirm it can send messages on discord i'm going to work on the memory and make it actually decent
You're gonna have to do something crazy to fit it into VRAM if you don't want to simply get a smaller model
classic
I made the mistake of installing cuda v13 before realizing torch hasn't been updated for it yet so I had to install cuda v12.9 and change some system variables
but nothings working 
you're in for a long haul
I don't doubt it :c
took me 20 hours
what was the issue for you?
anyone remember the Snapchat hotdog

1 power point 🙂
if i use the gpu in my laptop i get about that much too
but ye on "best battery life"
that battery is cooked
i dunno about you guys but this feels off
atleast true tho
this thing is running an i3-7100U with 4 GB of ram how the fuck does it only last an hour
gotta unscrew the entire back panel to get access to the battery too
u have been using 1 months
i hate this design because there are cases where you'd want to pull the battery out quickly
like if you spill something
well its like a cheap $350 (at launch) acer laptop so
EITHER waterproof it OR make it accessible
bring back those big battery slots at the back
actually put it on the front, i need io in the back
er
Give me a back slot under the cameras like how it was in the olden days
Yes I'll have less battery capacity, but I can also grab more batteries
try to remove battery and direct connect to Power connection
i already used on my phone
thats not the point
Or hell, I'll have a thicker phone to double stack batteries and add a heatsink for the extra heat.
if i have to use it while plugged in i might as well jsut use my normal pc
if i had the money idd def make a custom chunky phone
good? bad?
We love 4gb ram
vedal complains about 2 second latency
i have theoretically INFINITE latency
1h and it still didnt do a thing
look at this fuckass battery
ok 100
Tasty
running an llm shouldnt take that long for even a small amount of output
are you training it mayhaps?
or is your pc just ancient?
slimjim
5300mah, we have phones with more these days
batter must be survive dont give up battery
Man that is so cursed but completely tracks
nah that battery is cooked, better of at s recycling plant that being used
yeah
im not training it no
it usually has like 3 minutes of latency at most
i don't know exactly what's gone wrong
:bwaao7:
well it must have gone wrong somehow, a full hour means its stuck somewhere
yeah
i've had a similar issue before but it turned out to be the ai gaslighting me since it does have the option to do nothing
it misunderstood a prompt
but this time its just not taking any actions i think
my pc has no microphone AND still USING stream link on mobile AS microphone
testing ❌
YEAHHH BAYBEEE
only took 3 hours 
5300mah??
holy small
at 11.1V its 58Wh though
the battery is almost certainly toast. Check the health with Nirsoft BatteryInfoView
you know how electric bikes ahve batteries the size of my keyboard?
i need on of thsoe to be able to slot into my laptop
sike right now
Did you install the right Torch for your CUDA?
Silly
then I needed to reconfigure the interpreter pycharm was using
yall im gonna try implementing vector-based memory to my ai system wish me luck
then I realized I was using python 3.13 and torch is only compatible up to 3.12
Have you checked if it's even running on your GPU?
How large is your LLM?
uh
i havent given it a lot of thought
im just kinda
That could be why it's slow
im using deepseek r1 8b
i have an m3 pro
also the prompt gets exponentially longer as the memory grows
which is what i'm tryna fix
Why are you using a DeepSeek model for a low-latency task? DeepSeek R1 models have thinking which really slows it down
the thinking is kinda what is useful about it though
Because that's jow the context window works?
the way I'm handling memory is literally just dumping it into the prompt
its not efficient
Not if you can't run it at high speed on a GPU or want good latency
so im trying to rewrite it
What is your GPU and what quant of the model are you using?
like i said I have a macbook m3 pro
so the m3 is also the gpu
And with how much memory?
no clue how much vram
The VRAM and RAM are the same on Mac
36gb then
Kinda tiny
I guess the main cause for the slowness is a combination of thinking and the unified memory having horrible bandwidth
likely
i also haven't particularly tried to kill the latency
I could probably run a much larger model much faster on my 3090
likely
Apple is a scam
Use Linux
You can make Linux look like whatever you want
Want MacOS-like UI? You can have it
vector-based memory
Linux is the superior OS
i dont really want to have to rewrite most of my custom applications again for linux
What languages are they made in?
pretty much entirely python
its not gonna be a complete rewrite
but im gonna have to tweak some stuff so libraries use different backends
Basically just install the libraries you need, that's it
Recompile? Python is not compiled
im not planning to get a new laptop anytime soon
isn't that just called embeddings
yes but i want applications not scripts
there are libs that basically setup portable python envs and bundle them in to apps for macos
or windows exes
python can be compiled
cpython itself is a compiler
yes but it's not a compiled language generally
python is runned on a vm
its interpreted
thats what most people will say
(normally at least)
anyways i do actually want to get the memory started
so cya in a bit
it's a byte-code interpreter which can be also compiled 
btw deepseek r1 8b is not surprisingly
8b parameters
oh god
just occured to me
adding vision is gonna be a nightmare
the latency on that is gonna also be an issue
vision embedding model
You mean Gemma?
If you want to run fully locally with a decent enough vision model you're in for a bad time with a slow setup
Python's default impl can definitely compile. Python even has bytecode objects to manage dynamically compiled parts of the program. (Why one would even do this is beyond me, but it is there)
Normally you exec a string directly
but you can also call compile to put it into bytecode first then pass it to exec
nuitka exists and that blasts it into C++ then into a binary
package installers do similar like xcfreeze or whatever that was called
cx freeze
pypy and numba both compile JIT on first run and then keep it like that till done which speeds em up a lot
same w/jax
ok im kinda almost done
shoutout to chatgpt for walking me through it and also providing a good amount of code (i dont mindlessly copy and paste it tho dont worry)
now I need to handle fragile info like discord channel ids
in metadata ig
Surely 48 GB is enough for everything 
Sure would be a great machine to train NeuroSynth on
yall ii have the vector memory set up i think
but im not sure what to use for querying it
since the ai needs a LOT of context
like i was feeding it the whole memory for a reason before
what should i do
it is a lot
i just need to buy a nvlink bridge as well
holy shit why are they used 700$
frick the ai boom
The bridge?
I'm itching to ping Cloud lmao
cloud unfortunately burst already :/
ye
????
certainly much better than 24GB, yeah
They're like 200 on ebay here, which granted is still absurd
tf you mean 700 for an nvlink bridge
IIRC one of the sizes is cheaper but I forgor which one
Am I mistaken nvlink for SLI?
oh lmao just checked, the gpus are not compatible with each other
cause the asus card is a bit wider
who cares it's not the end of the world
i can always do ddp
Sli is for graphics to split the workload, nvlink is just a faster, direct connection between gpus
i dont wanna use sli
Oh, so that's why you're all talking about combining 30 series card
I'm pretty sure SLI, SLdied with more recent driver versions anyeags
Because SLI is not supported on those card IIRC
Yeah
It technically should be supported if you have an older driver at least
On the 3090 at least
on the 4090 it's dead dead
shouldn't they be compatible regardless? the only concern is thickness/spacing
let me just slide the nvlink to the left rq
That feels like something nvidia would require
I feel like they wouldn't so they can say their cards are conistant
yeah, and that's my current understanding of how it works
card length may vary but the NVLink connector should be in the same spot
Have to wait on shad for this one, I was just memeing
if not then there's always the option of using risers 
as a bonus you can use the cheapest bridge you can find regardless of spacing
It's one of those things were signal integrity is #1 priority and being able to just freely move it around sounds like an awful idea
Will it not kill the bandwidth?
I don't think nvlink risers exist
not if you use an x16 riser, no
No, you rise the gpu
Oh
Both of them
Then no
not an NVLink riser, a PCIe riser to align the cards properly for the bridge to fit
Well assuming you have a decent riser I guess
That riser will probably cost more no?
don't 💀 me
anything to reduce cost
depends? they're pretty cheap sometimes I think, and they're not uncommon so you may already have one lying around
obviously just go for whatever is cheaper
PCIe Gen 4 
though you can probably get away with just running it at Gen 3
Muh precious bandwidth 
Wut? 6 is out?
No

RTX 5060 
soon though
I'm really curious how they're going to cool gen 6 m.2 drives
water
the only interesting GPUs that do PCIe Gen 5 x8 are the Intel Arc Pro B60 Dual GPU ones
they allocate 8 lanes to each GPU and do P2P transfers over the bus instead of over something like NVLink
I wonder if they could somehow layer peltier on the silicone
Flamethrower, that'll run cooler than the SSD
I'd say waterblock with maybe metal to metal contact if they decide they want to produce those kinds of memory (not controller) chips.
If your gonna overkill on the controller, might as well slightly cool the memory cells
I think the seebeck effect is faster to transfer heat
Hmmm, I wonder what is the limit for infinitely thin seebeck effect layer
The larger the difference in temperature, the harder it has to work to keep a temperature. So you'd need to not allow temperature to leak while also acting as a gate.
Half of me wonders does the effect stack, but the other half is saying your better of just increasing voltage.
-# Can you add enough thermal mass buffers and isolate a stack to where room temperature exists on one side and close to sub zero exists on the other? Got no idea
thermodynamics is just voodoo magic
Which is what I was wondering about. How efficient it is to stack them infinitely thin 
But I am too distracted by other thoughts
The peltier 10 pack is calling out to me
I climbed up chat and see topics being changed every few messages and so 
it knows my desire to do something stupid
I can change it again to food since I am hungry
offtopic smh
Nono, technique to cook food is technology you know
can someone answer me here
Cooking using peltier 
You have stove on top, fridge at the bottom
Could be done too. I was thinking more about the buffet style food container
Since they usually have some form of heater beneath
Coffee machine 
But also a way to not have the stove overheat for some reason
divert to something else while keeping the cool side cold
Yuh, basically treat it as a heat source instead of as a heat transfer/remover
the real proper way to cook
Belt and pulley blower
Subscribe: http://bit.ly/subPT | Never miss a video! Enable ‘ALL’ Notifications!
Watch my newest content: https://youtube.com/playlist?list=PLGnWLXjIDnpBR4xqf3FO-xFFwE-ucq4Fj&playnext=1&index=2
Follow Primitive Technology:
Wordpress: https://primitivetechnology.wordpress.com/
Patreon: https://patreon.com/user?u=294588...

Dang it, now I really want to look into this
Bruh, why is my cursed idea always get some interest here 
I know some can handle high heat, as meant for energy collection from a fireplace or smth similar. But what if we just ran a current instead 
We are all very cursed
well can anyone see why my commits are taking that long like i didn't yet made a pull req or commit on my main branch
do verbose on your pushes idk
Look into RAG
verbose?
@glad path
You did not commit binary blob right? ...RIGHT?!
Only Sam is allowed to do cursed stuff with git

I wish he just walked in and saw that
do you perhaps have LFS stuff
uh...
This comment does not bode well 
i think i did cuz i been re installing and trying to fix my python env since i created the branch using py 3.8.9 THEN switched to latest version

that'll be helpful for the part of the ai that speaks and whatnot
but idk what to do about the decision making part of it (chooses whether to talk, do nothing, etc)
not that it doesnt get a direct prompt from the user
Committed the venv?
oh fuck i think so
The AI needs to be trained for tool use too
wait no
So I'm not allowed to have fonts in my dotfiles? 
duDe SHIT YES
internally it uses deepseek
83 degrees C temperature difference, what in the frick am I reading?
.ttf?
otf
i think i am just going to copy past my main code and reset the api keys and create an proper env
Make sure to add the venv folder to .gitignore
cuz i think i messed up the env
Yeah, RAG and tool use. I do not know about deepseek specifically. But if you want to lower the context token used, that's one way to do it





