#programming

1 messages ¡ Page 21 of 1

olive sable
tender river
#

the reason i dont like these concepts as much anymore is because i realized how poorly imperative code composes

#

but its the best thing we have for bringing C programmers out of the gutter

olive sable
#

i was wrong on this btw
small triangles are bad cuz of wasting quad samples while rasterizing.
this doesnt mean you should have no small triangles, this means you should maximise triangle area

#

so left bad, right good

trim valve
#

*except for nanite meshes

olive sable
#

we need to go on a pilgrimage to NN

#

fumes?

#

is NN toxic?

prime ridge
#

a lotta rage baiting in NN

#

Can't last more than 20 seconds there

olive sable
stark needle
#

i introduced bwaa, konii introduced neuropoghd

olive sable
#

branding

#

it would be funny to brand game-jam 3 game under "bwaa studios"

#

i need to buy that domain ngl

#

im poor tho so nah

rigid snow
#

bwaapoghd

olive sable
#

enub is just konii in my head

#

cuz short

tender river
#

just checked wikipedia and apparently my height is a couple cm above average

olive sable
#

like regioanl average? or just average global?

tender river
#

regional

#

(i'm below 170 but idr the exact value, something like 168 or 169)

olive sable
#

according to wikipedia the average male height here is 176.8cm

#

so my 183cm is above

tender river
#

well i assume async wont be supported right?

trim valve
tender river
#

epoll is a beast

#

and theres io-uring too how fun

#

async doesnt require threads

#

its just polling the kernel for new data for multiple files at the same time

#

yeah

#

i think just copy the posix api open read write, maybe creat

#

will file handles be platform independent?

#

or will ableos use some special thing for representing files

#

on posix-compliant systems its just an integer

#

just write a File object that wraps a file handle, write (write data from a slice, returns how many bytes it actually wrote and may have to be repeated), read (read data from the file into a slice, returns how many bytes it read), open (flags like read, write, append, create should ideally exist, idr much else)

#

i think for an actual good lsp i might have to use epoll to read files and process requests in parallel but the good thing is i just want a working lsp not a good lsp for now

#

also paths are their own can of worms but lets just work with unix paths for now

#

also stdout/stdin should ideally have the same read/write API as files (should be natural since stdin/stdout are just files internally)

#

oh also flush is important

#

and the bad thing is, all of the io operations can fail

#

and i dont want the lsp to crash when it fails to read a file

#

oh and a rename (move) api might be useful for atomic filesystem writes

trim valve
#

hm do I need to prepare a june variant of my cat pfp

tender river
#

yeah i saw something about linking to C

#

its cool but wheres the fun in that neuroSad2

olive sable
#

i have mobile detection now i guess

tender river
#

you can at least optimize by copying in 8 byte chunks but not much more i guess

#

or or or

#

need a way to jit code

#

then you can just write the assembly

#

actually

#

doesnt hblang have function pointers

#

if so you can already do it neuroPogHD

#

yeah but you have to find the right one

#

find a compiler bug that emits wrong assembly neuroPogHD

olive sable
#

grass and hair is pretty similair if you think about it

tender river
#

can you get a function address at least

#

how do i compile for x86

#

wait i just realized i can probably overrun the stack and execute arbitrary code neuroPogHD

#

this is clearly the best solution for optimized memcpy

#

well, time to derust my binary exploitation skills

#

i think ROP is the most realistic approach here

olive sable
#

tablet still gets recognized as not a phone so i might need to fix that idk

#

with shadowmapping the tablet gets 70fps, and the phone gets 0.5fps. so for phone it needs to be turned off, but on tablet its fine to be on imo

#

this depends on the tablet tho so i might have to fix this someday

tender river
#

oh no... this code sets up a []u8

#

i think it might be fine at the end

#

i just want a buffer on the stack that i can overrun...

#

no it has to be on the stack

#

i already did it but i just want asm thats easier to work with

olive sable
#

i was wondering why my heightmap didnt work on mobile

#

In Google Chrome on mobile, the maximum texture size allowed for WebGL is generally 4096x4096 pixels.

#

why must mobile always cause extra issues?

nocturne olive
olive sable
#

@ bwaa fix chrome please pleading

tender river
#

progress

nocturne olive
#

You may just have to create a tiled texturing system specifically for use on mobile devices

tender river
#

i successfully jumped to the shellcode but it segfaults on first instruction

#

probably have to make the page rx (or rwx)

opaque sigil
#

just checked

#

guess it depends on the gpu and/or driver

#

or maybe not actually, chrome says 4096 idk

olive sable
#

why must things be this way bwaadow bwaadow bwaadow bwaadow bwaadow

#

i just want heightmaps to work

#

do i just make a lower quality version that gets used on mobile? i guess that works...

opaque sigil
#

is cutting it into multiple textures not option?

olive sable
#

kinda

tender river
#

please back me up i'm bullied by the compiler

#

o you think uint is a type

olive sable
#

damn, google has AI code boxes now. and the code is not too bad

olive sable
tender river
#

this is all i did vedalBwaa

#

yeah i tried a bunch of things but they didnt work but now that i return @syscall it works

#

thx

#

(i tried assigning the result to a variable before, that didnt seem to work)

#

grr it still segfaults

#

why wont the cpu just let me have fun

opaque sigil
#

Chrome & Firefox dump courtesy of gpt, idk how useful this is but here you go @olive sable

olive sable
#

thanks

opaque sigil
#

my phone is a bit unusual since it has an amd gpu tbf

olive sable
#

wdym webgl 2.0 not supported?

#

what

#

thats crazy

tender river
#

i guess i just cant execute that part of memory

#

i should copy it somewhere

opaque sigil
#

the test page could also just be wrong idk

stark needle
#

Mannnn there was an australia ahh looking ~8cm arm span spider under my bed😭😭

opaque sigil
#

okay yeah i think something went wrong with the webgl2 check neuro7

#

desktop firefox should support it but it also says unsupported

tender river
#

it worked when i allocated a separate chunk of memory neuroPogHD

#

it just didnt work when i used the binary's static memory

#

time to strip the size of the shellcode executor down and like make it actually return control to the caller

olive sable
# opaque sigil

it seems to say webgl 2.0 not supported on my side too
eventho it should be supported on desktop chrome

stark needle
#

I love massive unemployment

opaque sigil
tender river
#

memcpy performance is more important than whatever useless code the users are writing

opaque sigil
#

i'm getting different results now

olive sable
deft pike
#

Does anyone know what pathfinding algorithms games like StarCraft, League, or other MOBA's use?

tender river
#

A* is the one you should know

#

you might also want to separate "global" pathfinding and per-chunk pathfinding

deft pike
#

Thanks

#

Yea dijkstras seemed too slow

tender river
#

its faster if you use a pqueue

opaque sigil
#

Take new dump courtesy of claude, no guarantees though @olive sable

tender river
#

the canonical implementation uses a vector but you can replace an O(N) with an O(log N) if you uses a pqueue

deft pike
#

Pqueue?

tender river
#

priority queue

opaque sigil
#

fib heap glueless

tender river
#

a collection where you can add an element with a priority and remove the element with the lowest (or highest if you want) priority

olive sable
#

seems to check out ye

#

so 16K on firefox, 4K on chrome

opaque sigil
olive sable
#

This is new

#

so good news, i can see the terrain being rendered on firefox

#

bad news, why is it so SMOL????

nocturne olive
olive sable
olive sable
#

weird

#

oh well

opaque sigil
#

If it's good enough for musl it ought to be good enough for me is my motto

nocturne olive
olive sable
#

hi

safe path
#

i am here to once again complain about how perfect the linux sound ecosystem is

#

it's so good, i love it so much

#

explain to me how it is possible for sound to travel large distances, to twitch servers, then down to some random persons computer faster than it goes through my sound hardware then into my ear

#

i am literally just monitoring the audio directly how in the world do i have 8 seconds of latency compared to somebody who is across the planet

#

how

#

raaaaa

opaque sigil
#

8 seconds of local delay is crazy AINTNEURWAY

safe path
#

bro i wish i was joking i actually have video proof

rough bloom
#

just switch to JACK NeuroClueless

tender river
#

i'm about to add simd to hblang without even modifying the compiler you cant stop me deliv

safe path
#

WHAT hblang does not have SIMD yet

#

unusable

tender river
#

and it wont

safe path
#

konii explain this

opaque sigil
#

Wasn't it 30% yesterday

#

wtf happened

tender river
#

i successfully made the shellcode return control... to libc neuroDespair

safe path
#

konii have you considered implementing SIMD anyway

#

it would be funny

#

but

#

fast

#

speed

#

verySadge wow the efficient local inference LLM i was going to write in hblang is no longer possible

#

this is true and not 100% made up, but it doesn't change the fact it is no longer possible

opaque sigil
#

c interop surely comes to save the day

safe path
#

@import("tensorflow")

#

ReallyInnocent can i link hblang to the python runtime and then run pytorch

opaque sigil
#

Inline asm/bytecode when ReallyInnocent

#

Do you?

tender river
#

i succeeded neuroHypers

#

i returned from the shellcode

faint sandal
#

what the hell are you guys making

tender river
#

mov rax, 0x3C is to demonstrate that the shellcode does something

#

and then it just returns from the original function

rough bloom
#

doesn't hblang have fancy comptime stuff?
just launch the assembler neuroPogHD

rare bramble
#

solve the halting problem in comptime

#

no need to worry about runtime execution speed

tender river
#

ideally i'd make it so after running the shellcode overwrites the original function with what it's supposed to be and jumps there newero

rough bloom
#

Hmm hblang x86 emulator...

tender river
#

if they do then what i just did is kinda pointless neurOMEGALUL

#

i kinda felt like that while implementing the gc

rough bloom
#

I know that it runs natively on x86
I mean embedding x86 programs to run at comptime or in hbvm so that you don't need to rely on native FFI or IPC xdx

tender river
#

hm

#

because they only exist in a meaningful fashion at comptime probably

#

isnt return code just the lowest byte

#

okay i guess all i have left to do is make it actually do something useful rather than just write to eax

low cedar
#

hello can anyone help me with a python project im working on? its basically a website where i can calculate pp using oppai-ng based on inputted mods, acc, and # of maps wanted. however, i can't seem to get the files to download properly

tender river
#

i guess you can do something evil if you know what order the compiler puts symbols in

hoary lion
#

😠 I am not getting the concepts of flax

tender river
#

i wrote assembler code that adds two numbers neuroPogHD

#

well thats easy but it runs in hblang neuroPogHD

#

code:

    mov rax, [rsp - 0x30]
    push rbx
    mov rbx, [rax + 8]
    mov rax, [rax]
    add rax, rbx
    pop rbx
    jmp [rsp - 0x20]
#
func := fn(arg: ^uint): uint {
    a := arg
    f := &a
    // run_shellcode didnt change
    return run_shellcode(@bit_cast(f))
}

main := fn(): uint {
    arg0: [2]uint = .[1, 9]
    ret := func(arg0.ptr)
    return ret
}
opaque sigil
olive sable
tender river
#

and if i change it to return ret + 1 it actually returns ret + 1

hoary lion
#

atlas
10M tokens neuroNOWAYING probably not scalable like previous titans but still

tender river
#

so uh do with this what you want neurOMEGALUL
simd, syscalls, blowing up the computer, vcvtne2ps2bf16, whatever you want

#

you are now free

#

neuroPogHD ❓

#

ah depends on known function address

#

my solution is less prone to breaking neuroPogHD

#

it still can break easily neuroPogHD

#

my solution doesnt depend on known addresses it depends on stack offsets staying the same

#

they can change across compiler versions though

#

i dont really think i can do better without the ability to call arbitrary addresses

#

actually i might

#

i just dont want to

#

because the solution is looking for the nearest integer in the stack that points to executable memory

#

and then patching the shellcode to return to the correct address and use the correct input address (both are pretty easy, in fact you can just make the input be a global variable since everything is single threaded)

#

wait theres a better solution

#

its adding one more indirection, func2

#

then then idk i lost chain of thought

#

oh right

#

then you overwrite func2's return address to return to the shellcode instead of func, but the func caller's address will stay in the stack so you can just ret

#

but this depends on the function not being optimized to a jmp

#

anyway this is cursed and pointless so i'm done neurOMEGALUL

#

gonna actually do some work for once

#

right doesnt it do dfs from the entry point

#

i mean, if you can run stuff on program startup everything becomes a bit easier

#

one of the ideas i rejected was making the shellcode rewrite its calling function with itself on initial execution and then jump back to main to restart the program

#

it would work but might execute some code twice so i rejected it

#

but it would be worth it for the sheer cursedness

#

the code i wrote for addition in asm is enough to implement literally anything, no additional code required

#

because it passes a []uint to the assembly code

#

which can be used to encode arbitrary data like first item being the function to run and other items being arguments

#

thinking of ways to use it for evil

#

wait i just realized i dont need static linking if i have dynamic linking and a shellcode to call arbitrary functions

#

const char**, probably somewhere in libc

#

found this code

char **get_argv()
{
  static char **preset_argv=NULL;

  if (!preset_argv)
  {
    extern char **environ;
    char ***argvp;
    void *p;
    asm ("mov %%esp, %0" : "=r" (p));
    argvp = p;
    while (*argvp != environ)
      argvp++;
    argvp--;
    preset_argv = *argvp;
  }
  return preset_argv;
}
#

extern char **environ is key i guess

#

oh environ is on the stack too

olive sable
#

apparently im able to get context info like max samples and stuff, but not the max texture size

gleaming harness
#

“Awww dammit this system is too hard to crack”
“Your fired”
“What?? Why?!”
“This man is running wfw 3.11”
“… you’re joking”
“Nope”

olive sable
#

what does this mean?

gleaming harness
# olive sable what does this mean?

It means that no firewall matter for me because I’m only safe because hackers just forgot about me

||And also because I made a huge lan brick with a firewall antivirus and htTPS to HTTP encode and decoder ||

uneven pulsar
#

I have to learn rust :(

gleaming harness
#

Nope

#

It’s not on Windows 3.11

#

Hell, they just barely still support Windows 7

olive sable
#

why do we have people asking to play roblox now here?

gleaming harness
#

You’re just unnecessarily toxic

#

It really isn’t

olive sable
#

sure bro

gleaming harness
#

And I bet in everything that you’re a nine-year-old who asks your mother for fruit snacks every morning

#

Surrreee

gleaming harness
#

Are you drunk?

#

Like bro, you literally just joined

#

And you just want to ask about Roblox???

#

And your discord account has existed for three fucking days

open copper
#

i killed him

#

ignore

#

ill start deletiong

hard shale
#

Lol

olive sable
#

i was wondering why it said no mutual servers lamo

gleaming harness
#

Let’s be honest he probably was under age

#

Like who goes into a programming channel in an ai server.. goes up to someone running fucking Windows 3.11 and says “ wanaa plaiy rooblx”

hard shale
#

Doesn't matter. Too late now

olive sable
#

as long as you're 13+ its fine, just dont be a an asshole i guess

gleaming harness
real sierra
#

was a throwaway account

#

someone just flexing their unemployed status

#

pay it no heed

gleaming harness
#

I think it was both

#

They’re probably just gonna come crawling back and ask to play roblox again

olive sable
#

just move on

#

dont give them attention and they'l stop

gleaming harness
olive sable
#

damn

#

you had me in the first half ngl

gleaming harness
olive sable
gleaming harness
#

Ngl they probably do go there every day for about five hours before getting picked up by two deeply in love heterosexual adults with opposite genders that are related to them

#

A.k.a. a very in-depth description of a mother figure and a father figure

#

And them going to daycare

olive sable
#

dude

#

stop

#

what even is that supposed to mean?

gritty dust
#

what happened?

nocturne olive
tender river
#

stdout works, and division will probably make x86 basically 100% usable

#

not counting potential compiler bugs

gleaming harness
olive sable
#

was a rhetorical question but ok

nocturne olive
prime ridge
#

This is just ridiculous for a single problem

#

35 sections to a single question...

olive sable
#

blender shit

tender river
#

interesting

#

it probably will

#

wait i guess i have to support \u in json

gritty dust
#

screw it close enough its better than before at least

real sierra
#

ive tasked myself with implementing right bit shift

#

with subpar hardware support

#

why is it so much worse than left bit shift

olive sable
#

just left bit shift enough till you right bit shifted xdx

real sierra
#

if i had left rotate, that would actually work

#

could left-rotate 15 times, and then apply a mask that zeroes the MSB

#

unfortunately for me, left rotate is very hard when you have uhh

#

...two registers

olive sable
#

2 registers huh....

real sierra
olive sable
real sierra
#

so instead

#

im completely leaning on the stack for this

#

going to do what's effectively a copy of the upper 15 bits of the input to the lower 15 bits of the output

#

but loops are hard (two registers!!!)

#

so im doing it recursively xdx

#

stack frames are basically free memory anyway right

tender river
real sierra
#

stack pointer is not hardware, its just at a fixed address in ram

#

the other two registers are for general stuff

real sierra
#

YEP you would be correct

#

just wait till you see the instruction set

tender river
#

i dont expect multiplication from what you said neurOMEGALUL

real sierra
#

the ALU supports

  • addition
  • subtraction
  • increment
  • decrement
  • AND
  • OR
  • XOR
  • NOT
tender river
#

though multiplication isnt that hard, its just bulky, a lot of bit shifts and adders

real sierra
#

pfft

#

nice try

#

i already implemented multiplication recursively

tender river
#

...but you'd have to have bit shift for it to actually be fast

#

or, well,work

real sierra
#

yeah...

#

lack of bit shift is hindering a great many things

#

which is why im currently implementing it

#

left shift is easy enough, just add something to itself

#

right shift...

tender river
# real sierra pfft

multiplication of A by B is basically:
for every 1 position in B, shift A to the left by that amount of bits and add to the result

#

child's play compared to division

#

though admittedly i don't actually know how division works

real sierra
#

the naive way is to subtract the divisor from your value until the divisor is negative

#

the number of times you can do that, minus one, is your answer (if we're doing integer division)

tender river
#

i mean yeah or you could bin search the answer if you have multiplication

real sierra
#

that seems kinda annoying to work out the logic for

#

if you're doing something like 15/2

#

there isnt an exact answer

#

actually i guess you know how many steps your bin search will take

#

shouldnt be an issue

dense cosmos
#

What are you working on, that you have to implement such low level details, if you don't mind me asking?

tender river
real sierra
dense cosmos
#

Y not add a module for right shift, if you need it?

real sierra
#

not sure i have instruction bits to spare

dense cosmos
#

Ohhhh

dense cosmos
#

hmm

#

-# add more bits tho

real sierra
#

YEP JUST DOUBLE THE BITS

#

the ripple carry adders already hurt to watch

#

dont do this to me

opaque sigil
#

Replace them with carry-lookahead-adders ez, how bad could it be glueless

tender river
# real sierra dont do this to me

if you implement cool stuff like division i'd love to hear you talk about it neuroPogHD nothing like the feeling you perfectly understand something without putting in the effort because someone else talked about how they did it

real sierra
tender river
#

no you can talk about much easier stuff too neurOMEGALUL

real sierra
#

i feel like i might've set your expectations a little high

tender river
#

no this is very cool already

real sierra
#

i spent 4 hours trying to figure out why i could only do recursive calls 2 stack frames deep

tender river
#

i know how time consuming even simple stuff can be

real sierra
#

turns out i was trying to restore something after throwing away the stack frame it was in

#

and this just didnt manifest as an issue unless you went deep enough

#

huge props to this game tho

#

very cool

tender river
#

i remember some online learning tool that made you write various functions in verilog and checked their outputs

real sierra
#

the built-in assembler lets you define your own tokens as binary values

#

here ive used them to map out my opcodes

#

then there's the macros Aware

tender river
real sierra
#

and now im putting together basic math functions in a little library YES

tender river
#

most of the bit tricks i know are from competitive programming not from any hardware related stuff

real sierra
#

i was thinking about learning it or VHDL at some point

#

but it seems painful and theres no way i could ever use it Om

tender river
#

there are some cases where you can trivially solve a problem for every bit and then merge the results

real sierra
#

malbolge

#

this pdf is a crazy read

tender river
#

yeah i really like how something like this was possible

#

one thing is saying something is turing complete and another is making it run semi useful programs

tender river
#

its almost purely stack based

olive sable
#

Its seems to bedoing something, but not what i was trying to do

amber fractal
#

where fps?

#

I don't see many frames here

olive sable
#

in terms of fps, we have no fps

#

idk why tbh

#

mobile shit

#

i think i linked touchscreen to the movement, but its also seen as mouse input by pygame so thats also something

real sierra
#

watching the blinkenlights

hoary lion
#

i am witnessing advanced sorcery

olive sable
#

what in the

hoary lion
#

so that's like

#

i dont know how much clock i have

olive sable
hoary lion
#

like million times slow than real time right

real sierra
#

1 instruction on this thing takes 120 ticks with the current clock settings and fetch cycle

#

so at the current tick rate thats uhh

gritty dust
real sierra
#

13 instructions per sec

olive sable
#

i guess il just plop some arrows on the screen and call it a day?

real sierra
olive sable
#

thanks neurosHugA

hoary lion
#

so this is built with python and then wasm compiled right

olive sable
#

yep

hoary lion
#

🔥 🔥

olive sable
#

the link in the readme has the current version, should run fin as long as you're on desktop i think

real sierra
#

right shifting isnt working perish

#

catastrophic failure

#

it returns to a wrong address

#

who knows what kind of stack poisoning might be happening here tbh

#

16 stack frames * 10 bytes per frame

#

i might need to make the stack bigger

#

tomorrow prolbem

olive sable
amber fractal
#

I swear I remember a video on binary opts

#

Let me look through a playlist rq

gritty dust
amber fractal
# amber fractal I swear I remember a video on binary opts

https://youtu.be/rDDaEVcwIJM?si=w48j3r4FKMiGezO8 40:18
The entire video is a masterclass (I'm looking at you human method of square root) but this the division section.

an introduction to a numbering system that's objectively better than seximal

  • external links -

footnotes, script, other readables: https://github.com/lucillablessing/thebestwaytocount
soundtrack on YouTube: youtu.be/MI4xSjRBa_o
soundtrack on Bandcamp: https://lucilla.bandcamp.com/album/the-best-way-to-count-ost
source code: https://github.com...

▶ Play video
#

This probably doesn't help with the current issue but it is fun

tender river
#

it's all coming together, the language ideas i had but didn't know what to do with are somewhat integrated in my head now

#

it's no longer the question of "what" but "how"

amber fractal
olive sable
#

at least it seems to be running well

amber fractal
#

Besides movement being yes

#

it runs well

olive sable
#

the tablet gets 70fps with a snapdragon 870, but it doesn't get recognized as mobile so the shadow mapping is on there

#

what does your phone have?

amber fractal
#

let me check

#

snapdragon 8+ gen 1 (we love tech naming)

#

I'm gonna miss dual networking when I have to end up switching phones

olive sable
#

so 4/3 faster

amber fractal
#

I love having enough ram in this day and age

#

I knew the phone was cooking with video, but not that much

#

didn't know I was paying for a slo-mo camera

olive sable
#

my A52 has this

amber fractal
#

Surely you can get decent 8k photos but software isn't allowing it glueless

olive sable
#

64MP is a lot more than 8K suposedly

#

so its probably just software

#

but i wouldnt actually use 8K from this phone's camera, cuz sensor is SMOL

amber fractal
#

The #1 reason I switched to RAW photos for high rez

#

but yean SMOL

olive sable
#

guys im trying to testrun the LLM stuff apollo sent, does this look correct?

amber fractal
#

it looks like it is running and training

olive sable
#

that does seem to be the case

#

i meant more like the model reporting as 0.4M params

#

is that correct for those settings? i wouldnt know cuz im just the guy with the gpu for this project

fast pagoda
#

i like that training log output in the terminal, what is that

#

from

#

and maybe it just means the amount of trained parameters?

#

like so far, or if it's a lora, the size of the lora params only

olive sable
#

idk

#

i think its supposed to be total?

#

it started at 0.4 and never changed

fast pagoda
#

how big are you expecting

amber fractal
#

I think this version is just smol

olive sable
#

im not expecting anything, since idk how this works

amber fractal
#

params add up to being 0.4B

olive sable
#

so its just a typo i guess?

olive sable
#

python lib apparently

fast pagoda
#

i mean it's definitely rich output

#

but like

#

what tool are you running that has that built in

olive sable
#

idk, not my code

fast pagoda
#

but yes that is definitely rich log style

#

im using that in my batch prompting thing

amber fractal
#

it probably isn't built in, apollo probably spent a lot of time doing it right

fast pagoda
olive sable
#

my pc is laggging every so often from this lmao

olive sable
#

so im running his code cuz he doesnt have a 3090

fast pagoda
#

apollo from this disc? isnt there an apolloiscool

olive sable
#

that is the guy yes

#

aight im gonna let this run while i sleep

#

hopefully it wont go over 24GB and quadrupel the needed time

#

the checkpoints take up 12GB each? welpsagiri

#

im gonna run out of starage space in half an hour

#

12.5GB every 2 min is 6.25GB/min, or 1TB every 2.5hrs

#

how am i supposed to keep this running for 150 hours like this?

amber fractal
#

Deleting old checkpoints probably

olive sable
#

i have school and stuff, i cant babysit this the whole tim

amber fractal
#

Need a script for that if it doesn't already include one

#

If apollo names the checkpoints based off of what checkpoint it is, it should be possible to automate

olive sable
unkempt citrus
#

Anyone read AI 2027?

#

I skimmed it a while back and thought it was astupid

#

but I just watched a video on it and its even dumber than I remember

dense cosmos
#

whats that

amber fractal
#

I'll just wait 2 years for it to exist irl ReallyInnocent

unkempt citrus
#

Where fictional company OpenMind makes an AI Agent that achieves AGI in 2027 then destorys the world after an arms race with China

#

in a stupidly long tale thats really just the paperclip machine

#

but don't worry, it can be stopped if you gets some more AI safety researchers hellawicked

#

Written by some AI Safety researchers

#

No conflict of interest there

#

And these people definitely have qualifications yep

olive sable
unkempt citrus
dense cosmos
#

well, tbh it does make sense that the people most paranoid about ai would want to be in the positions to stop said ai

unkempt citrus
#

2nd section

amber fractal
#

There is no preventing AI from having bad thoughts, just like how you can't force thoughts into people

unkempt citrus
#

yes they'll be able to build 1000x data centre in 3 months time

dense cosmos
#

lulz

amber fractal
unkempt citrus
#

Also hive mind AIs

#

and two evil AIs Agent 5 from Open Mind and DeepCent merge together to take over the world

#

Cos AIs merging is a thing

amber fractal
#

Man people really gave up on new archs huh

#

last time I checked you can convert somewhat but not entirely merge models

dense cosmos
#

was wondering the other day, even if the capabilities of ai scaled with parameters and therefore their ability to self improve, resulting in exponential growth, it's still going to be stymied by the curse of dimensionality... right?

amber fractal
unkempt citrus
amber fractal
unkempt citrus
#

but data is more the limiting factor than hardware usually

unkempt citrus
amber fractal
#

I feel like eventually one will need to incorporate synthetic data as part of training larger models

#

I mean some methods already exist, but probably a lot more so

amber fractal
olive sable
#

how do i code it to delete the file? is there like a torch.delete()?

#

or is via os.remove() accepttable?

unkempt citrus
amber fractal
#

I'd be doing os.remove()

olive sable
#

aight

#
old_checkpoint_name = f"discord_llm_step_{self.step - 200}.pt"
old_checkpoint_path = os.path.join(self.config["checkpoint_dir"], old_checkpoint_name)
os.remove(old_checkpoint_path)

code NODDERS

amber fractal
#

Though I'm not 100% if it is synth data or just a method to use data better

olive sable
#

the code for removing the old checkpoint seems to work

#

im going to bed now

amber fractal
amber fractal
hoary lion
#

let's make a DSL based on JSX

amber fractal
#

neuroHypers I have no idea what this means

hoary lion
molten pollen
#

heard the name tho

hoary lion
molten pollen
hoary lion
#

am i contextually right

amber fractal
molten pollen
#

oh is it a private one?

amber fractal
#

I can see if the owner opened training data

molten pollen
#

so what did u find

amber fractal
#

still looking, had to boot up laptop

molten pollen
#

anyways are like 10million twitch chat msgs enough to train a 124M gpt2 model

#

or i gotta go smaller on the model size

amber fractal
molten pollen
#

oh

#

i love ur profile pic btw

#

whats it based on

unkempt citrus
molten pollen
#

what is it like a horror fiction story

#

tf is openbrain

amber fractal
molten pollen
#

what did u censor?

amber fractal
#

I censored because I needed to censor

molten pollen
#

real

amber fractal
#

server is 13+ after all

molten pollen
maiden geyser
#

why do ai people always have to use emojis in everything they create

hoary lion
#

see

#

little do we know is that that figure is made with ai

hoary lion
molten pollen
hoary lion
#

please use uhh react icons neuroPray

unkempt citrus
#

but theyve adopted AI a lot

molten pollen
molten pollen
#

what they hustling

#

anyways did anyone implement transformers 2 or squared

#

whatever its called

dusky jackal
#

I see so much shit like this. Just wait until the people eating up these articles learn about Neuro-sama. neurOMEGALUL

ruby timber
#

Good morning neuroWaveA

mighty bane
#

Any of you nerds play Space Engineers? 😄

maiden geyser
#

morbing

nocturne olive
nocturne olive
#

This is done because making a full vocal synthesizer dataset from scratch (which we will do for 1.0) takes a lot of time

maiden geyser
#

reinstalling windows was too easy this time wtf

#

i didn't even have to do regedit or oobe\bypassnro

#

why can't microsoft invent Microsoft Basic Display Adapter 2 or something

burnt aurora
#

Meanwhile LinuxMint :
neuroFumoFriend 👉 ⬇️
miiverseload
LinuxMint ➡️ 💻 ✅

burnt aurora
#

And more telemetry

maiden geyser
burnt aurora
#

Too much work

#

The only real way is to ai generate the resolution and image and everything with Microsoft Copilot Display Adaptor

#

Who needs 3:1 ai frames if you can have all ai frames

real sierra
#

does anyone have advice on a good way to build a stack frame

#

I'm not 100% on what should really be put in it

#

right now what I'm using has the function args, return address and a pointer to the parent stack frame

#

feels like I'm missing something

#

I was mulling over stack canaries tbh

#

currently shit just fails catastrophically if I corrupt the stack accidentally

#

debug info might be smart too

#

but I'm not 100% on how to format that

#

idk where to put that info either

#

if you're unwinding the stack you're probably discarding stack frames as you go

#

so where to store the return addresses as you go

#

well I was thinking for a stack trace

#

it is yeah

#

yes I realize that

#

but if you want a stack trace from within nested function calls

#

your return address in the current stack frame only tells you the immediate caller

#

you would have to inspect the previous stack frame for the information on the next caller up

#

which seems non-trivial to me

#

yeah I don't quite have that

#

what I called a frame pointer earlier actually points to the first stored argument in the frame

#

but the information for how many arguments a frame has isn't stored

#

well I should probably get this fully working first before adding features

#

I have a function that recursively calls itself 16 times and it's causing issues

#

my debugging tools are hell

#

I get to stare directly at ram

#

it's not as bad as it seems, this is all in a circuit designing game so it coddles me a bit

#

but not enough Smadge

#

coddle me more Copege

#

I may as well be

#

don't get me wrong, the only saving grace is that the instruction set is simple

#

and that stuff isn't compressed in memory or anything

#

nor are addresses randomized or stuff like that

#

the ALU is severely lacking though, as evidenced by my trying to implement a logical right shift in software catdespair

mighty bane
#

Also: A few days ago I uninstalled my AV.
Never ran better kookHype

burnt aurora
#

The best antivirus is to not be compatible with the virus

maiden geyser
#

it's like saying frogs are better than humans because they can't contract a human disease

nocturne olive
prime ridge
# olive sable the code for removing the old checkpoint seems to work

Yeah you can delete all the checkpoints. I switched model architectures so those old ones will be replaced with new ones. Also there should be an auto-delete functionality. These damn files are taking literal days to zip. I only expected it to take 30 ish hours to zip but it's just been going and going forever...

prime ridge
nocturne olive
#

The point is there's very much Linux malware

prime ridge
#

well yes ofc

grave fractal
#

i’d love to dive into this with you tbh, but i’ve got an exam on caches coming up — L1, L2, L3, all that fun stuff 7797_shotakun_cry_sad @real sierra

scarlet arch
#

I love these kinds of videos. They're so adorable.
https://youtu.be/ta99S6Fh53c

AI vs AI Playing Soccer!
https://brilliant.org/AIWarehouse/
If you want to learn more about AI and deep reinforcement learning (how Albert is trained), there are amazing courses teaching those exact concepts on Brilliant! You can use my link to get a free 30 day trial with 20% off! I've personally gone through the course "Introduction to Neural ...

▶ Play video
#

I love that whole channel actually

olive sable
#

Goodmorning

#

I am alive

#

For now

knotty current
#

i regret ever legging chatgpt write numba code

#

damn that was not type safe

loud thicket
knotty current
#

no

#

i was schzoing over at the ARG thread for the whole day evilDeadge

olive sable
#

only did 2% while i was sleeping

#

this is gonna take a while huh

real sierra
#

every exam question is a cache miss on my brain

grave fractal
grave fractal
rare bramble
#

to me caches are just black magic, being able to massively boost performance just be reordering some operations is kinda nuts

grave fractal
opaque sigil
#

I like caches, they're not my problem to implement

nocturne olive
grave fractal
olive sable
#

my GPU voltage keeps dropping from 1.050 to 1.010 and then goes back up

#

i think my 750W PSU is struggling

nocturne olive
#

The GPU core voltage is not coming from the PSU

olive sable
#

ive never actually seen my disk util go to 100% before

real sierra
#

the processor is something I rigged together in this random circuit design game over the course of 2 days

#

16-bit

grave fractal
real sierra
real sierra
#

16-bit system with two general-use registers, a program counter register and uhhh

#

that's about it Om

#

separate ram and rom

real sierra
grave fractal
#

i made a 32bit core in risc-v (in hdl {verilog} tho)

real sierra
#

impressive

#

verilog and vhdl scare me

olive sable
#

try not to flex challange

real sierra
#

seems tough to learn

grave fractal
#

just stay away from floating point alus , you will be fine

real sierra
#

oh don't worry my ALU can't do floating point

grave fractal
real sierra
#

it's missing some really vital operations

#

like a logical right shift

#

turns out this is agony to do in software

olive sable
#

then do it in hardware

#

make a pcb

grave fractal
#

no division neurOMEGALUL

real sierra
#

division will probably just get binary searched

real sierra
#

wait can I even do that

rare bramble
#

how can you binary search without a division

real sierra
grave fractal
real sierra
#

I guess we're doing repeat subtraction then xdx

#

even stuff like this has been extremely challenging though

grave fractal
real sierra
#

both registers are needed for most arithmetic so there's nowhere to really store stuff like loop counters

olive sable
#

just make more registers

real sierra
#

as such I've restored to recursion for even stuff like multiplication

burnt aurora
real sierra
#

no storage? use a stack frame Tomfoolery

grave fractal
real sierra
#

make sure you put the smaller arg second

rare bramble
#

for division, could you do something like:

6/2:
2x1 >= 6: false
2x2 >= 6: false
2x3 >=6: true

6/2 = 3?

#

evilDeadge discord formatting

olive sable
#

that works with certain ints i gues

real sierra
#

does such an algorithm work with two's complement negative values

olive sable
#

but if you try to do 1/2 you're fucked

rare bramble
#

like 1/2 would be 0 (or 1?)

grave fractal
olive sable
#

probably yes

real sierra
#

I was about to say "floating point would get a software implementation" but if bit shifts are already software that might be intractable

burnt aurora
# nocturne olive Silly

Also, genericism
Windows only has 10 and 11, and most win10 stuff works on 11, so malware can target pretty much all consumers and businesses at the same time (win7 can be ignored atp)
Linux has so many different base distros (ubuntu debian arch gentoo etc), which themselves get made into even more distros (ubuntu alone has too many to remember them all) with so many ways to customise everything that writing generic malware is much more difficult, so i'd assume that most of it is targeted at distros that get used by money makers, like server distros

grave fractal
#

for A / B , it should be B × Q ≤ A

real sierra
#

but also uhh

#

there's no hardware multiplier

grave fractal
burnt aurora
#

But yes, the linux malware can go much deeper

#

Which is why you make backups and partition home away from the rest, reinstall, and plug in your backup

stray dragon
#

whatever, go my windows defender

burnt aurora
#

Ngl if i was actually someone who gets targeted by malware I'd have shit like bulk reinstall scripts
Format the whole drive, reinstall linux from scratch, and run bulk-install-programs.sh

real sierra
#

baseg proprietary software user

burnt aurora
#

🍷

real sierra
#

yeah, my software comes from a company with hundreds of paid professionals maintaining it BASED

burnt aurora
#

My software runs at more than 10fps tho

burnt aurora
#

It's incredible how shitty the fusion 360 ui performs
Especially because the 2d ui somehow runs slower than the 3d cad view

#

On windows

nocturne olive
#

That seems a little crazy

burnt aurora
#

(On linux it's all kinda slow because wine isn't great for performance)

#

But that's why I'm learning freeCad

olive sable
#

what about proton? is that any better?

opaque sigil
#

proton is just wine isn't it

olive sable
#

idk

#

i dont use linux

opaque sigil
#

well, with some extra stuff on top

uneven siren
#

its better wine

burnt aurora
#

Proton is wine for games

#

And it runs great

#

Except if you use the wrong nvidia drivers

stray dragon
#

classic nvidia drivers

burnt aurora
#

I forgot which one it was but it made every polygon on screen take away a frame

olive sable
#

Classic nvideoiae

burnt aurora
#

Satisfactory died completely

uneven siren
#

TBH if it wasn't for games I play needing kernel level anti cheat I would have ditched windows for it.

olive sable
#

even on windows satisfactory has graphical glitches due to the new nvidia drivers

burnt aurora
# stray dragon classic nvidia drivers

It's amazing, they even broke on windows long before i switched to windows
We almost mailed the pc in under warranty because it looked like the gpu was deadge

burnt aurora
burnt aurora
#

I think it may have been 570 but I'm unsure

stray dragon
#

came with graphical bugs day one

#

right out of the box

burnt aurora
#

3070QM here

olive sable
burnt aurora
#

The top 3cm of screen were rendered above the bottom 3cm in windows, in a streaky almost transparent pattern

nocturne olive
burnt aurora
#

Only win11 tho tjdogekeklaugh

#

23h2

olive sable
#

it wasnt windows update that was the problem

burnt aurora
olive sable
#

happened only after updating nvode drivers

real sierra
#

could I get someone to verify the code for my right bit shift hmm

#

I wanna believe it's correct but

#

it's crashing every time

olive sable
stray dragon
#

after trying to fix an issue with the gpu that was causing stutters as i left the pc on, and reinstalling the drivers at least 6 times, i gave up and switched the card out for the RX 6600 XT i had sitting around

real sierra
#

I'll send it when I get home lol

nocturne olive
olive sable
#

i will verify, but i will have no clue what im looking at actually

burnt aurora
#

Why do chips not have modulo in their ALU if it's doable via hardwiring input to output neuroThinkSmug

olive sable
real sierra
burnt aurora
#

If only i could

#

But sadly it's a laptop, dad denied my pleads to just get a powerful desktop and mediocre laptop

#

And now the only thing that required a laptop is done by his phone

#

Idiot mahiroDepressed

real sierra
burnt aurora
#

Is that a chip

#

Emulator

olive sable
#

i have to read a book and make a project about it, and i have to make a motivation letter by tuesday.
so imma do that now
bye

nocturne olive
real sierra
# burnt aurora Emulator

it's a little niceified, it abstracts actual electricity away so you can just work with logic gates and high/low logic level

#

but yes

grave fractal
#

i'll be studying tho , so hit me up dm or mention me neuro7

real sierra
#

shifts despair

opaque sigil
#

replace shifts with subtraction and it works ig

real sierra
#

not in hardware

#

oh wonderful

#

this architecture actually has a name

#

The Hack computer is a theoretical computer design created by Noam Nisan and Shimon Schocken and described in their book, The Elements of Computing Systems: Building a Modern Computer from First Principles. In using the term “modern”, the authors refer to a digital, binary machine that is patterned according to the von Neumann architecture m...

olive sable
#

chatpgt is fine to know my home adress right?

#

they surely wont store it NeuroClueless

real sierra
#

16

#

@olive sable @grave fractal i'm home now, here's the code i'd like reviewed:

# math_shr(x) returns x right-shifted by one position.
function math_shr 1;
    push_arg 0;
    push_value 1;
    push_value 2;
    call math_shr_recursive;
    push_retval;
    return;

# internal backing call for math_shr(x)
# math_shr(v, mask_out, mask_in) performs a right shift by copying bits using masks.
function math_shr_recursive 3;
    push_arg 2;
    pop_d;
    if_else_d JGE math_shr_recursive_if math_shr_recursive_else
    @ math_shr_recursive_if
        push_arg 0;
        push_arg 1;
        push_arg 1;
        add;
        push_arg 2;
        push_arg 2;
        add;
        call math_shr_recursive;
        push_retval;
        goto math_shr_recursive_end;
    @ math_shr_recursive_else
        push_value 0;
        goto math_shr_recursive_end;
    @ math_shr_recursive_end
    push_arg 0;
    push_arg 2;
    and;
    pop_d;
    if_else_d JNE math_shr_recursive_shift math_shr_recursive_ret
    @ math_shr_recursive_shift
        push_arg 1;
        or;
    @ math_shr_recursive_ret
    return;

not sure if there's better highlighting i can provide

olive sable
real sierra
#

oh Sadgi

olive sable
real sierra
#

with division? no not really

#

easily calculated if you can do division

#

i always get these mixed up Om

#

my LSB is on the right

#

does that help

rough bloom
#

big endian is the one that makes sense and has the correct byte order if you just read it as a sequence of bits
little endian is the one that's fucked up

#

if the b in lsb stands for byte here, then yeah, lsb on the right is big endian

real sierra
#

then im BE

#

i think my one complaint about this game's assembler is

#

you can't nest macros

#

so i have to expand any macros i use in writing my macros down to their assembly

#

this leads to wonderful things like

#
# call <functionName>
macro call {LOAD ARGS; LD R; LOAD SP; LA R; LR D; LOAD SP; LR INC_R; pointer rv inline 0; LOAD rv; LD A; LOAD 12; unpoint rv; LD ADD_DA; LOAD SP; LA R; LR D; LOAD SP; LR INC_R; LOAD a?; JMP; LOAD SP; LR DEC_R; LA R; LD R; LOAD ARGS; LR D; LOAD SP_SWAP; LD R; LOAD SP; LR D}
scarlet arch
tender river
real sierra
#

you seem like the person who actually uses goto in java

rough bloom
real sierra
opaque sigil
grave fractal
scarlet arch
tender river
real sierra
#

but you seem to have figured it out on your own

tender river
grave fractal
#

still tho

tender river
#

truncation is trivial, no address mangling necessary

real sierra
#

so it does look like its working?

#

or at least, shouldn't be corrupting the stack

tender river
#

i do use big endian in networking

real sierra
#

honestly i was kinda hoping that wasnt the case, because it means there's a bug with my stack macros instead Sadgi

#

while
no thanks

#

make it recursive and ill think about it

grave fractal
real sierra
scarlet arch
tender river
#

so it makes sense to optimize for the former

grave fractal
#

man i didnt touch asmb like for 2 years NeuroPossessed

tender river
#

bigints are generally stored in little endian too i think

grave fractal
#

so rusty NeuroPossessed

scarlet arch
tender river
#

maths

scarlet arch
#

I'm mostly joking at this point haha

#

Not like I can have any valuable opinion on this

real sierra
# grave fractal the wrapper is fine (math_shr ) , maybe the (math_shr_recursive) ,, it may act u...

add, or, and pop 2 values off the stack, perform the relevant computation and push the result back onto the stack
push_arg <n> copies the n-th function argument and pushes it onto the stack
push_value <n> puts the literal value n on the stack
push_retval pushes the result of the last function call onto the stack
pop_d pops the topmost stack item into the D register
if_else_d <condition> <true_branch> <false_branch> checks the value in the D register against the jump condition and branches accordingly

#

Prayge my math library depends on you konii

grave fractal
#

i cheated tho

#

took a peak on the wiki you sent

real sierra
real sierra
#

didnt even know the wiki existed until today

#

much better reference than what ive been using

grave fractal
#

so yah it looks fine , from 30 second review NeurOhISee

#

buut , as i said , i'm rusty NeuroTease

tender river
#

there should be a game about quantum ISA design

maiden geyser
grave fractal
#

you mean something like :
CMP EAX, EBX
JNE label_true
JMP label_false

tender river
maiden geyser
real sierra
grave fractal
real sierra
#

push_value accepts a literal and pushes that onto the stack

tender river
real sierra
#

so you can use push_arg at any time

#

and as many times as you'd like

tender river
#

or does it only work before the first call

real sierra
#

stack frames look like this atm

#

stack grows toward the bottom of the screen

#

when a function is called, the return address is pushed and the function is called to

#

then the current value of the ARGS global is pushed onto the stack so it can be restored later, and the new one is calculated and stored in the global

#

when returning from a function, the topmost stack value is popped and stored in a RETVAL global, then the current ARGS global is stored in a SP_SWAP global as it's used to restore the stack pointer, then the prev args ptr is popped and stored in ARGS, and then finally the return address is popped and jumped to

tender river
real sierra
#

now i just need to port it to my language

#

actually

#

can i get a math check

#

the yellow args here

#

for each frame, the first one should stay the same, and the last two should double

olive sable
#

Realtek's equalizer sucks bwaadow

real sierra
#

but i feel like 0x0600 is not twice 0x0100

#

is my math bad on that or

#

ALU?

grave fractal
#

i was away

real sierra
tender river
#

so is it something like this?

math_shr_recursive(a, b, c) {
    if args[2] >= 0 {
        a = args[0]
        b = add(args[1], args[1])
        c = add(args[2], args[2])
        ret = math_shr_recursive(a, b, c)
    } else {
        ret = 0
    }
    v = and(args[0], args[2])
    if v != 0 {
        ret |= args[1]
    }
    return ret
}
grave fractal
tender river
#

also buffered reader is important for reading until newline, good luck

real sierra
#

adding something with itself is a left shift, and once the bit reaches the highest position the number is interpreted as negative, which is why that first condition is args[2] >= 0

tender river
real sierra
#

nor do i

#

which is why im worried

#

if the function returned the wrong result, that'd be fine

#

but it shouldn't be crashing horribly

#

if the ALU is having issues tho, that could explain it

#

probably the ripple carry adders again ReallyMad

#

ill slow the clock and see if that helps

tender river
#

hardware debugging, like software debugging but you have even less idea what's going on neuroPogHD

real sierra
#

at least it's consistently wrong

tender river
#

not if you have multiple cores!

olive sable
#

but i made it myself aquacry

#

i have become the AI

maiden geyser
olive sable
#

cuz i get graded on this shit

#

i cant do another year man

real sierra
#

felt that Pointless