#programming

1 messages · Page 261 of 1

uneven pulsar
#

Lets make a game I'm bored to train ai models from gpt

copper quiver
#

Hey.. so my volume became sentient. and evil. Please help (this isn't a joke)

olive sable
#

like a phone?

#

pc?

copper quiver
#

pc

olive sable
#

maybe a usb device?

#

some keyboards have volume controls

copper quiver
#

No like every second the volume is going up.

olive sable
#

like mine

copper quiver
#

i've tried

olive sable
#

even with keyboard disconnected?

copper quiver
#

let me try that

#

yes, even when i disconnect it

olive sable
#

hmmm

copper quiver
#

i can dm like video of whats happening

olive sable
#

are there volume controls on your headphones?

copper quiver
#

no

olive sable
#

weird

copper quiver
#

Even the button ui is stuck on my screen since it won't stop

inner palm
#

try restart
if still happened try disable the audio driver maybe?

olive sable
#

so its probably software issue then?

#

restart def worth a try

copper quiver
#

Wait the volume calmed down! but the ui is still stuck on my screen..

olive sable
#

ye still jsut a restart is a good idea

copper quiver
#

yep I will after I finish some updates! Thanks

olive sable
#

updates neuro7

uneven pulsar
#

Yo

olive sable
#

Yo

uneven pulsar
#

Now time to change

#

AI IS NEXT OS

olive sable
uneven pulsar
#

I HAVE ENOUGH DATA TO TRANSFORM UBUNTU TO AI OS

#

Now it cuda problem with os

#

[Hardware (CPU, GPU, NPU)]

[Host OS: Ubuntu core + custom kernel/modules/drivers]

[System services (systemd units) & daemon userspace]
• model-registry
• model-runtime / inference-manager
• device-manager (nvidia/cuda, rocm)
• sandbox engine (containerd/podman + seccomp)
• assistant-agent (desktop/cli)
• update-manager

[App layer]
• Python environments, SDKs
• Desktop apps (Electron/GTK/Tailwind)
• Containerized inference microservices

young plover
#

custom kernel
Will it just replace all permission checks with asking Neuro politely for access?

#

vibe scheduling

hearty notch
#

vibe delegating

short ingot
#

no idea, v9.0 didn't have it. so it failed at compile

uneven pulsar
#

I WILL STICK WITH NO GUI MODE

#

WELL THIS BLUE PRINT WILL CHANGE DEPENDS OF ME

#

Or use asm to code !

#

Maybe I will make own is

#

Live on Twitch: https://twitch.tv/lowlevellearning

Turns out ARM chips have thumbs! 📚🚀 #Cplusplus #CodingTips #OperatorOverloading #MatrixMultiplication #CodeTricks

🏫 COURSES 🏫 Check out my new courses at https://lowlevel.academy

🙌 SUPPORT THE CHANNEL 🙌 Become a Low Level Associate and support the channel at https://youtube....

▶ Play video
#

x86 and ARM are two of the most widely used Assembly architectures, but what sets them apart? In this video, we'll break down the key differences between x86 and ARM Assembly, including instruction sets, performance, power efficiency and real-world applications. You'll learn how each architecture works, their advantages and limitations and where...

▶ Play video
obsidian mantle
#

Ai os neuroMonkaOMEGA

uneven pulsar
#

IT WAS PROTOTYPE

#

Dan it why boot has 58 mb

#

Option 1 make a huge file for boot which cannot handle (max is 64 or 128 mb )
2 work on rest of
(26 mb bootloader) Other will load from driver

#

Or usb which iso

solar gorge
#

Yo wtf?

uneven pulsar
#

I will scrap idea

#

DUE TO HARDWARE LIMITATIONS

glad path
#

hardware limitations are very annoying ngl

karmic birch
#

Vibe compilers for languages

amber fractal
#

The vibe complier when I define True as false and False as true (it is multi-purpose so it is going to assume it is python or something)

hearty notch
jagged turtle
uneven pulsar
#

W -= lr * dW
b -= lr * db
if step % 200 == 0:

#

No rules !

#

My ai is Alpha stage so no final product and here is change logs

Change : 0.02
ADDING MORE WINDOWS CORRUPT FILES FOR WINDOW USER

Tunning for more realistic output like ure talking to humans

Changelog :0.01
Fixing bigram

Fix weight and
And improving network

Removing emotional tree and Replace with ADMT
( ADVANCE DECISION MAKING TREE )

TUNING THE MODEL

ADDING MEMORY TO AI

ADDING WINDOWS CORRUPT FILES

obsidian mantle
#

What are you cooking

young plover
#

smoking out the kitchen

#

TempleOS 2

jagged turtle
#

I genuinely want to ping heir to ban this account

#

because it looks very schizo ai

obsidian mantle
#

Well

#

It has an i

jagged turtle
#

i for idiocy?

rigid snow
#

it was pmo at first but i got used to it

#

oh my fucking god

#

thanks ios keyboard

trim valve
jagged turtle
rigid snow
#

the 100 nonsense ©

jagged turtle
#

what does pmo mean again

stray dragon
#

pissing me off

maiden geyser
jagged turtle
uneven pulsar
clear sedge
uneven pulsar
rigid snow
#

ice neuroNotNoted

south lagoon
#

How is everyone

uncut panther
#

I don't know how to write drivers and almost broke my system

rigid snow
#

testing your drivers on your main system lol

uncut panther
#

but I have a old laptop for such experiments

#

I'm more worried about how skill issue I am

rigid snow
#

vm configuration issue

#

it possible to fool kernel mode ac

#

why wouldn’t your driver work

uncut panther
#

skill issue

uneven pulsar
#

Im testing ai in Mobile without cutting float

clear sedge
dense sky
#

colon three

rigid snow
karmic birch
rigid snow
maiden geyser
#

is there a point in buying an 18tb hdd

patent shard
#

16tb+ seems to be the sweet spot in price per tb
26TB is the top end, 28TB has significantly higher price per tb

#

so, yes?

opaque sigil
#

they also sell high capacity external drives for pretty cheap on sale often that you can chuck for even more savings

patent shard
#

new hard drives prices are pretty bad right now, try to get one from serverpartdeals or goharddrive or something.. and wait for a sale, I've seen them for around $11/tb

patent shard
#

yeah, serverpartdeals and goharddrive are used
you can def get cheaper, those are the really reliable, very lightly used hard drives
$13/tb might be a lot easier to get, those $11/tb deals didn't last long...

olive sable
#

Goodmorning

brave shore
maiden geyser
obsidian mantle
#

is this shit doable or no

#

its a troll task right?

#

to filter the weak

#

you either give up and go on or give up and go away

#

no win here

maiden geyser
brave shore
#

Its Lisp?

obsidian mantle
#

yes

#

oh i cut the question itself

#

i kind of want to solve it but i dont want to spend 3 days solving unsolvable shit

brave shore
#

Put it in a compiler and step through it? Be good see how it works. Lisp is a head wrecker with all that recursive stuff.

obsidian mantle
#

so i did this but its stull confusing when x > 1

#

its 2^(something) definitely

rough bloom
obsidian mantle
#

im getting a function but it breaks when i change parameters

#

it works in some scope yes

opaque sigil
#

Ah yes the ackermann function classic

small anvil
#

Hello programming chat

#

I lowkey forgot about this server ☹️

#

Too busy on uni

maiden geyser
#

hello mister nex.h

obsidian mantle
#

i'll hate myself if i look up the answer and its actually doable

small anvil
obsidian mantle
#

fuck it im googling it

#

it will take hours im too old for this shit

noble zodiac
#

just read the code its not witchcraft

obsidian mantle
#

it looked simple at first

#

i understand the code

#

it gives nothing

#

aha nice solution bro

#

literally doesnt work for (A 1 0)

rough bloom
#

0 is not a positive integer value nwero

obsidian mantle
#

ok i missed that part

#

neuroCry i was really trying to fit in the 0

opaque sigil
#

reading the description do be half the battle sometimes

obsidian mantle
#

surely it will not kill my morale glueless

#

its just, before there was another exercise that was trick question for no reason

#

and now i expect others to be same too

#

also they described this book as weird

opaque sigil
#

the ackermann function is an actual function you can evaluate

#

it's just uhhh

#

very very very recursive enub

obsidian mantle
#

i already googled it

#

i know the answer, it was not a troll exercise

#

whatever

noble zodiac
#

fun fact, they named the aot character after this function

obsidian mantle
obsidian mantle
#

maybe im not so bad

#

i expected it to be some bullshit like
{ something > 0 then a
x = {something > 1 then b
{ etc

#

i hate when they put troll questions it kills the belief

faint sandal
#

math eww

obsidian mantle
#

its like math but they wrap it in programming so it feels bad if you fail

#

it was definitely solvable i just didnt believe in myself

#

and in the book

#

i guess it will have more fun exercises later which i can try to actually complete

#

also how the hell do one come up with a name for a chess bot neurOMEGALUL i've been thinking about it from time to time and it seems weirdly hard to do

#

makes sense since my nickname is literally my name ICANT

olive sable
#

too much cheese EvilDead

split sigil
#

hai gang, dumb question because i like to know (and yes i did google my dumbass question) is "Automate the Boring Stuff with Python" good or na?

olive sable
#

what?

#

automate what?

#

"the Boring Stuff" what does that mean???

nocturne olive
split sigil
olive sable
#

ohhh

#

idk i dont read books

nocturne olive
split sigil
olive sable
#

evilShrug i dont read books

split sigil
#

I meant any resources like videos any stuff ;-;

#

my English is failing me today mb

olive sable
#

are you like new to python or is it specifically to optemize stuff?

split sigil
#

new

olive sable
#

this goes over it pretty quickly, but im inpatient

opaque sigil
hearty notch
split sigil
hearty notch
#

ye as long as youre internalizing the lessons it's useful imo

split sigil
#

i am, but I'm the type of person to know stuff but not know how to explain it, if I make sense lol

hearty notch
#

that's an intermediate step imo eventually you should be building towards verbalizing your own understandings too, but no rush, learn first

stark needle
#

chat i finally got faster internet

#

🥹

olive sable
#

damn

stark needle
#

i come from 100mbit

olive sable
#

same

#

but im still at 100

stark needle
olive sable
#

fiber?

stark needle
#

yeah

hearty notch
#

happy halloween

stark needle
#

finally i can download datasets at actually reasonable speeds🥹

olive sable
#

halloween?

#

today?

#

nah thats the 31st

olive sable
hearty notch
#

look im just showing my prep

#

it releases on halloween

olive sable
nocturne olive
young plover
#

Almost never saturate it glue

stark needle
olive sable
#

8.5 down 1.5 up?

stark needle
#

but it's only accessible via a single 10gbe port

stark needle
#

so it's technically 10gbe but in practice 8gbe

olive sable
#

oh. here 10gig means 8.5 down 1.5 up

stark needle
#

yeah no here it's full duplex

hearty notch
#

wtf r u people downloading to feel the difference between gigabit and like 100mbit

hearty notch
#

wild

#

aint envious of the ML life

olive sable
stark needle
hearty notch
#

also fair i ive a pretty low tech life compared w you guys

#

i legit dont think ive watched anything in real 4k in my life

olive sable
#

the speed itslef isnt an issue, its when someone is using all the bandwidth to update fortnite or whatever

hearty notch
#

ye

#

do you want a utility to throttle everyone on the network to a certain max so that cant happen

hearty notch
#

fortnite updater of the household located

olive sable
#

that just means you'll never use the full bandwidth

hearty notch
#

it means people can reach full bandwidth using it together but nobody can hog it to the point others get throttled

#

if implmeneted well

amber fractal
#

For the 4 of us we are at gigabit, there is some priority systems but not much balencing otherwise

nocturne olive
#

gigabit network would be really good but I'm stuck with 100 megabit

amber fractal
#

we used to be at 20 megabit, thankfully before all software decided to bloat but we were starting to get 4k tv and stuff and temporarly doubled house capacity.

#

That was not lasting for 8 people any day of the week

hearty notch
#

ok i looked up existing methods out of curiosity and Smart Queue Management looks like the common 'best' solution rn

#

(this is just for my own curiosity at this point)

amber fractal
hearty notch
#

lol

#

ok so the only way to achieve this without modifying the router itself is to put it on a raspberry pi or similar between the router and modem

#

hmmmm

sage crag
#

hello programming

olive sable
#

hi konii

amber fractal
sage crag
#

samuel vanuel manuel

hearty notch
#

hello konii 2.0.1 may I see your changelog

olive sable
#

thats me

sage crag
#

also now it can speak to the world neuroPogHD

olive sable
obsidian mantle
#

where does jit get code to execute? is it compiling it right before its getting used?

sage crag
obsidian mantle
#

jit overall seems to work bad for big code then

sage crag
#

i also wrote a more cursed version that hands off control to the jitted code rather than calling it as a function

#

both of them are in there and both of them work

#

provided you are using gcc-x86_64 and additionally use the compiler flags from build.nix

sage crag
#

its not typically for compiled languages

#

its to make interpreted languages faster

obsidian mantle
#

by compiling things before use?
ooh so it pays off when we are reusing the compiled things then

sage crag
#

without JIT java wouldnt be nearly as fast as it is

opaque sigil
sage crag
opaque sigil
#

hiiii

sage crag
#

read the code deliv

opaque sigil
#

i have

sage crag
olive sable
sage crag
#

the new version?

opaque sigil
#

well the one you sent above

sage crag
#

im a bit sad because the manual syscall makes it less portable

#

"portable"

#

also the ret instruction

hearty notch
#

what kinda project is this overall i cannot recognize anything

#

is this a game

sage crag
# sage crag also the `ret` instruction

but the problem is:

  1. i cannot call anything from inside these opcodes (segfault)
  2. if i change ret for return gcc reorders the functions and my cursed code no longer works (also segfault)
#

i can fix the second one but its less elegant

#

and the first one is "to be determined"

sage crag
opaque sigil
#

are you trying to add a jit compiler to hbvm

hearty notch
#

i mean that only narrows it down very slightly but maybe thats just because my imagination is powerful

sage crag
#

but not a good one

#

the worst one

opaque sigil
obsidian mantle
#

why do they not have native jit glueless

hearty notch
#

lets see if gemini can guess what kinda project it is from your screenshot

sage crag
#

also hbvm only has three implementations

opaque sigil
#

i'd imagine you'd need a lot of very good heuristics and statistics for a decent JIT

hearty notch
obsidian mantle
#

is hblang very fresh language

hearty notch
#

oh ok

sage crag
#

one of those implementations is written by me

sage crag
sage crag
#

gemini wont be able to tell you anything about what it does with just that image

sage crag
hearty notch
#

tbh it told me what i wanted to know which was just the genre in the first place

opaque sigil
hearty notch
#

im like kinda new to programming but i learned some random parts of the lore deep and am 100% ignorant on other parts

#

most lowlevel is still on the 100% ignorant end

opaque sigil
#

ignorance is bliss as they say

sage crag
opaque sigil
#

nice, first result is a dead mozilla blog

hearty notch
#

GO RUST

sage crag
opaque sigil
#

is this just each opcode gets its own thread/subroutine or am i misunderstanding

hearty notch
#

konii i am a rust binary machine if you give me any exact spec of what u want one to do i will get it done [but you have to be exact]

#

also like micro stuff obv not full systems

opaque sigil
#

1 KiB hello world

hearty notch
#

NO

#

too hard

#

im out

sage crag
# sage crag this is the third stage of my "direct threaded vm" project
// stage 0 - naive vm
switch (pc++) { ... } 
// stage 1 - computed goto, basic direct threading (far faster than switch) 
goto *optable[*pc++];
// stage 2 - translate binary into series of instruction pointers, jump through the list of instruction pointers
//           (about 20% faster by my measurements, pretty good) 
goto **program++;
// stage 3 - translate binary into native code via cursed devil magic (no real JIT)
goto *program;
#

i dont know what the performance characteristics of this latest vm are but i would posit not much faster than stage2

#

the amount of UB im causing is stunning

opaque sigil
obsidian mantle
#

** enub

sage crag
#

i dont care enough to explain it

obsidian mantle
#

is this not c *

opaque sigil
#

it is

obsidian mantle
#

so just pointer to pointer

sage crag
opaque sigil
#

that sounds like a nightmare to prefetch for

obsidian mantle
#

why is switch slower NeuroHuh

sage crag
#

i have some images from my hbvm-c impl showing about 0.02% branch misses

#

which is insane

opaque sigil
#

damn

opaque sigil
young plover
sage crag
#

at best you might get a cmove (usually faster than a jump, but not in this case, because a jump is still required)

obsidian mantle
#

smh dumb switch just get one

opaque sigil
#

i guess it's too unpredictable to construct the table on its own?

sage crag
#

and gcc/clang havent added this optimisation automatically because the semantics are complex

opaque sigil
#

hmm

#

would make sense

#

risky optimisation = NOPE

sage crag
#

computed goto is more restrictive than switch, it also doesnt make much sense unless you are planning to reuse the table

obsidian mantle
#

they always find some weird exception and make it 5 times slower just to get that universality

sage crag
opaque sigil
#

sth sth slow code is better than broken code

sage crag
#

computed goto is only helpful for a dispatch loop

#

which is a niche that is already filled by tail-calling with function pointers

#

technically

young plover
opaque sigil
#

konii how do i get the benefits of non-atomic vectorised loads when i need to atomically write into all the things i'm reading neuroSadge

#

can you fix the magic machine

sage crag
#

there are diminishing returns with complexity of course

young plover
#

Weird. Must depend on how much state you need to spill when calling.

opaque sigil
sage crag
#

mhm, i expect they did something very wrong enub

sage crag
sage crag
#

when i initially implemented a tail-call based vm, it was about 30% faster than the computed goto version

#

but, it was because i had made a mistake in the computed goto version

#

which was pessimising it a lot

#

computed goto is a lot more temperamental than tail-call

sage crag
#

me spend all day making this thing work

opaque sigil
sage crag
olive sable
#

damn

#

hypercurse

sage crag
# sage crag ```c // stage 0 - naive vm switch (pc++) { ... } // stage 1 - computed goto, ba...
void translate(flvm *restrict vm, const void *ops[]) {
  size_t code_size = vm->code_size;
  uint8_t *bytecode = vm->exe->bin;
  size_t pc = 0;
  while (pc < code_size) {
    uint8_t opcode = bytecode[pc];
    vm->program[pc].opcode = (void *)ops[opcode];
    size_t instr_size = fl_operand_size[opcode] + 1;
    for (size_t j = 1; j < instr_size; j++)
      vm->program[pc + j].operand = (uintptr_t)bytecode[pc + j];
    pc += instr_size;
  }
  vm->code_size = 0;
}

void flvm_run(flvm *restrict vm) {
#define x(name, opcode, instr_size) [opcode] = &&name,
  if (vm->code_size != 0)
    translate(vm, (const void *[]){fl_bytecode(x)});
#undef x

  fl_program *pc = vm->program;

  while (1) {
    goto *pc++->opcode;
  evc:
    fwrite_unlocked("env call\n", 1, 9, stdout);
    pc -= 1;
    continue;
  }
tex:
}

here's a minimal example of stage2 for anyone who was interested

#

relatively simple

#

i found it actually beat standard computed goto in every instance though

#

which was surprising

#

i expected it to do worse in programs that didnt have jumps

#

but it was actually faster

obsidian mantle
sage crag
#

ne

#

take back

#

my vm obsession healthy and normal

hearty notch
sage crag
#

not addicted

hearty notch
#

same but rust crates

sage crag
#

wrr

opaque sigil
#

oh god i now noticed why 64 bit atomics didn't work

#

i was still bit shifting as if it was 32 bit

sage crag
#

tostie

opaque sigil
#

worth it, surely this isn't just statistical noise glueless

sage crag
#

maximum of 1.06* faster ye

young plover
#

oop, conversation [filtered]?
Must've discovered a rule. Will avoid that. salute

opaque sigil
#

this is 4x32bit vs 2x64 bit purely for querying and it's measuring a lot more tbf

#

i should do a query only test but neurolingSlep

sage crag
#

🐸

opaque sigil
#

nvidia baited me by giving me a ulonglong4 type but it doesn't actually have hardware support neuroSadge

#

looks like it is just noise after all

sage crag
opaque sigil
#

c++ compile times are so fun Gladge

olive sable
opaque sigil
#

midi right

olive sable
#

ye

#

only the "note on" parts cuz this is for procedural animation

#
0      0.000   0.154   |   24     7f     
0      0.000   0.154   |   2a     7f     
0      0.000   0.154   |   2a     7f     
0      0.000   0.154   |   24     7f   

i have no fuckign clue why its activating these notes twice

opaque sigil
#

i like how you can't even see there are 3 different lines on top of each other Gladge

olive sable
#

we love the midi drum mapping for Hand Clap Minamhm

#

does midi player software jsut come with a library of different hand claps?

hearty notch
#

GOOOOO INSERT THATS MYBOY

#

wait no higher runtime is worse

#

its so over

opaque sigil
sage crag
#

in theory O(1) NeuroClueless

opaque sigil
#

beeg constant

sage crag
#

O(n) worst case for standard hashmap, some hashmaps have O(n^2) worst case

#

same generally true of all hash tables really

opaque sigil
#

technically insert is constant time since it gives up after 500 evictions

sage crag
#

not just hashmap

#

i dont remember the notation for best-case, average, and worst-case time complexity

opaque sigil
#

(it doesn't ever give up anymore after i fixed the hashing)

sage crag
#

i just use big-o notation

#

but i think its an abuse of notation actually

opaque sigil
#

i can't stand big-o notation

#

though for things like this where the goal is to deal with massive input sizes it kind of makes sense

sage crag
#

i think big-o is actually for worst case time complexity

opaque sigil
#

it's the upper bound yeah

#

little-o for lower bound but who cares about that

sage crag
#

if i remember correctly big theta is average case and big omega is best case

sage crag
#

not what i remember

young plover
sage crag
#

me not remember well

opaque sigil
#

heavily templated cuda c++ at that too

#

it takes like 10+ seconds to compile this filter

sage crag
olive sable
#

mapped enub

sage crag
#

hash map

#

btree map

#

linear map

opaque sigil
#

maps everywhere neuroSCHIZO

sage crag
#

map map

olive sable
sage crag
#

key-value map

#

unspecified implementation

olive sable
#

i have no clue what a Cuica is, but its in the map i stole from google

young plover
olive sable
#

"Open Hi Conga"

sage crag
sage crag
#

yee desmos

#

it have uhh

#

ye

#

let me show you one of the functions

#

here are some of the instruction primitives

trim valve
#

ono

sage crag
#

similar vein here is a full-adder

#

it adds arbitrary length binary numbers AYAYA

trim valve
sage crag
#

its actually pretty simple

sage crag
#

to write the standard logic gates that is

#

the full adder itself is just a normal full adder once you have the logic gates

young plover
sage crag
sage crag
#

i think i want to rewrite it though, there are opportunities for improvements still

opaque sigil
sage crag
#

i cant think of any reason why you would need that

opaque sigil
#

oh it's exactly the code that i thought it was

sage crag
#

this is not my worst c code

#

i think that title goes to the "jit" vm

olive sable
#

all your code is pretty incomprehensible to me meow

sage crag
young plover
#

One thing I wanted to do, but don't have the patience for is to generate the assembly for all of the opcodes at runtime with xbyak, profile the emulated program, and insert direct branches for the most common instruction sequences to save slots in the indirect branch predictor. Would also help avoid spilling things like the cycle counter. Implemented a couple opcodes but got bored.

olive sable
#

you do very low level stuff

#

too difficult for me

sage crag
sage crag
#

im too unproductive to use external libraries

young plover
#

glue I sure wasn't going to implement my own x86 machine code emitter.

olive sable
opaque sigil
#

doesn't hblang have a custom x86 backend or am i misremembering

sage crag
# young plover <:glue:1360392827661717535> I sure wasn't going to implement my own x86 machine ...
__attribute__((aligned(1), noreturn)) void _start() {
  uint8_t prog[] = {0, 1}; // program bytecode
  void (*exec)() = mmap(0, 1024 * 1024 * 1024, PROT_WRITE | PROT_EXEC, MAP_ANON | MAP_PRIVATE, -1, 0);
  void *scratch = exec;

  for (size_t i = 0; i < sizeof prog; ++i) {
    uint8_t opcode = prog[i];
    size_t size = (optable[opcode + 1] - optable[opcode]);
    __builtin_memcpy(scratch, optable[opcode], size);
    scratch += size;
  }
  __builtin_memcpy(scratch, epilogue, fin - epilogue);
  scratch += fin - epilogue;

  size_t stack_size = 1024 * 1024 * 4;
  regs[254] = (uint64_t)scratch + sizeof(uint64_t) + stack_size;
  // write abc to stdout
  regs[1] = 1;
  regs[2] = 1;
  regs[3] = (uint64_t)"abc";
  regs[4] = 3;

  goto *exec;
}

my "jit" proof of concept suspends execution of _start and jumps straight into the generated machine code ReallyInnocent

#

the aligned(1) is required for it to function

olive sable
#

see this is what i mean with too low level for my small brain

#

you're allocating like a gigabyte of space, then you do some magic, and then you do some register stuff

sage crag
#

main implies that your program has normal control flow

opaque sigil
young plover
#

That do be how JITs work

sage crag
#

"uncommitted memory" it's called

olive sable
sage crag
young plover
opaque sigil
sage crag
# sage crag the hard part is always "how do you generate the code"
#define _DEFAULT_SOURCE
#include <stdint.h>
#include <sys/mman.h>
#include <unistd.h>
#include <stdlib.h>

static uint64_t regs[256] = {0};

#define ops                                                                    \
opcode(op0, __asm__(\
  "movq (%0), %%rax\n"\
  "movq 8(%0), %%rdi\n"\
  "movq 16(%0), %%rsi\n"\
  "movq 24(%0), %%rdx\n"\
  "movq 32(%0), %%r10\n"\
  "movq 40(%0), %%r8\n"\
  "movq 48(%0), %%r9\n"\
  "syscall\n"\
  "movq %%rax, (%0)\n"\
  : : "r"(regs+1)\
  : "rax", "rdi", "rsi", "rdx", "r10", "r8", "r9", "rcx", "r11", "memory"\
)) \
opcode(op1, regs[1] *= 2)                                                      \
opcode(epilogue, __asm__("mov $60, %%rax\n" "mov 8(%0), %%rdi\n" "syscall" : : "r"(regs) : "%rax", "%rdi"))                                              \
opcode(fin)
#define opcode(name, ...)                                                      \
__attribute__((naked, aligned(1))) void name() {                     \
  __VA_ARGS__;                                                               \
  __asm__("" ::: "memory", "cc");                                            \
  __builtin_unreachable();                                                   \
}
ops
#undef opcode
#define opcode(name, ...) name,
    static void *optable[] = {ops};
#undef opcode

for me, i made c do the code generation for me NeuroGutter

#

110% of this is undefined behaviour

opaque sigil
#

yknow i feel like

#

at this point you may as well just use fasm

sage crag
#

no no

#

the goal is actually to use less asm

opaque sigil
#

must be a far away goal then glueless

sage crag
#

right now syscall is my only way of doing IO because calling a function inside these opcodes causes the program to segfault

#

opcode(epilogue, __asm__("mov $60, %%rax\n" "mov 8(%0), %%rdi\n" "syscall" : : "r"(regs) : "%rax", "%rdi"))
also this exits the program

#

which is why i dont need main

opaque sigil
#

main is bloat anyway

sage crag
#

true

#

dont need

#

wouldnt be bloat if the c runtime allowed static linking and inlined main into start

#

but oh well

opaque sigil
#

musl neuroPogHD

sage crag
#

musl good but

#

bad

#

still c you see

amber fractal
olive sable
young plover
#

Saw someone post a ChatGPT hallucination in another server

By naming the bestRecord parameter in the header, the compiler's understanding of the function's signature and argument usage becomes consistent with the implementation, resolving the stack offset difference observed in the assembly.

Sounds legit
https://godbolt.org/z/o6sr9KqKc

sage crag
#

you can permalink from godbolt?

#

huh

opaque sigil
#

uh oh c++26 reflection

young plover
#

Yeah you can share > shortlink

young plover
olive sable
#

she uses C premium or something idk

young plover
#

I mean, that C code is also bad, just more advanced Kek

opaque sigil
#

gulag c more like

sage crag
#

hopefully it doesnt obliterate the compiler flags

#

if it does it wont work

young plover
#

Program returned: 6
abc

#

🤔

sage crag
#

young plover
opaque sigil
#

The thought of clangd having to deal with code that uses a lot of reflection scares me

young plover
#

I used it in VS Code and it coped a lot better than I thought it would. Not perfect.

opaque sigil
#

I guess we'll see enub

olive sable
#

i ran out of cheese

#

back to coding

sage crag
#

cellar of cheese

olive sable
#

i sadly dont have a cellar of cheese

#

im not in the 1%

sage crag
#

wrong

#

on two counts

#

🐸

olive sable
#

what?

#

care to elaborate?

sage crag
#

n o

#

no*

olive sable
#

i have a cellar, but no cheese

#

what is the difference betweene a cellar and a basement?

amber fractal
#

I'm not sure on how to feel about having this compact mode active

olive sable
#

compact mode?

hearty notch
#

cellar evokes vibes that its completely unfinished, has wine storage in it

#

like kinda like a cave under your house

olive sable
#

lemme just take a picture

hearty notch
#

basement in my mind evokes vibes of like standard midwestern american finished basements

#

which are different

#

and feel more modern

amber fractal
hearty notch
#

other people probably have valid conceptions of basements too but i grew up with one in michigan so

amber fractal
trim valve
#

I find compact mode is a pain outside of dms

amber fractal
#

the only thing I disliked off the gate was the time placement, so because I don't really backread on PC I just oped to remove it

trim valve
olive sable
amber fractal
#

I'd consider this cellar

olive sable
#

Its mike 5ft high so we all have to walk hunched over on here

amber fractal
#

That looks like pain to accidentally scrape your head on

olive sable
#

Yep

amber fractal
olive sable
#

makes sense

#

anyways, as you can see in the picture, no cheese

#

only freezer

gritty dust
olive sable
#

i have lived in this house for 18 years

#

so i have learned to duck

gritty dust
opaque sigil
olive sable
#

oh im blind

#

wait

opaque sigil
#

5 hours 19 minutes

olive sable
#

nevermind

#

ignore that

opaque sigil
olive sable
#

did the schedule jsut come unusually late?

#

i thought it was still monday

opaque sigil
#

Seems so

olive sable
#

im picking up my 3d printer in 12 hours or so

#

dont tell my parents enub

amber fractal
#

How much did it cost enub

olive sable
#

300

olive sable
#

2ndhand

sick owl
#

Helped my sister make the switch to bazzite today after Windows 10 corrupted her shit for the umpteenth time

olive sable
#

so ill be able to engrave my name in shit now

sick owl
amber fractal
olive sable
#

thats not my name

sick owl
olive sable
#

fair enough

uneven pulsar
#

Hmmm where should I blame on ?

manic jacinth
uneven pulsar
#

My network Bro

craggy jungle
sick owl
#

Not perfect, but pretty good

#

Anyway that's why you dual boot though, best of both worlds

olive sable
#

the biggest problem is kernel level anticheat iirc???

opaque sigil
#

and some devs also saying no because frick you

olive sable
#

lazy devs smh

amber fractal
olive sable
#

erm

amber fractal
#

I said nothing

olive sable
#

i broke something again 😭

faint sandal
#

me when I group together a band in space

olive sable
#

that do be me

#

oh

#

now there is no sky at all

#

ok fixed okp

amber fractal
#

@olive sable can I ask

olive sable
#

what do you want to ask?

#

the textured part of the drum?

amber fractal
#

Yeah

sick owl
#

Active hostility to Linux by devs is the key barrier these days

olive sable
#

basicly, if the first primitive in the gltf file doesnt have a texture, none of the files' texture want to load

#

something is broken witht he loader

sick owl
amber fractal
olive sable
#

so i jsut manually edited the gltf file's json to make it use material 0

amber fractal
#

Ah

olive sable
#

also, geovanni has a material that doesnt have a texture and jdut says "use colour rgba = {...,...,...,...}, and the engien doesnt support that

#

so they're just black in opengl, and use the material 0 texture in vulkan cuz i never unloaded it

olive sable
#

this lets me change the matrices in a different thread than the rendered thread, and has less overhead

#

so all in all very based

#

this doesn't work in webgl tho bwaadow

#

why is webgl so ass?

amber fractal
#

web

young plover
#

It's based on GLES 3.0, which is hot garbage because it's designed to be supported on 10 year old phones.

olive sable
#

well

#

i want support for 10 year old phones

#

but im pretty sure these features should be pretty backwards compatible

young plover
#

Mobile GPU drivers are terrible, and you will never convince mobile users that their device is the problem.

olive sable
#

OpenGL 4.4 is the minimum for this feature supposedly

#

which is 12 years old

#

phones use es apparently, so doesnt work

#

uh

#

we'll make the phones use the shity webgl version's back-end, or vulkan

young plover
#

Yeah GLES hasn't been extended since 2015 and it was already out of date then.

opaque sigil
olive sable
#

khronos group has really given up on opengl i guess

young plover
#

No Vulkan on web. WebGPU technically exists but really only on Chrome.

olive sable
#

ye i know

olive sable
opaque sigil
#

so do i

#

idk why it doesn't detect it

olive sable
#

then why is it saying 3.2?

opaque sigil
#

who knows

uneven pulsar
#

Do u have something interesting news

olive sable
#

evilShrug weirrd

opaque sigil
#

could be nixos being nixos for all i know

olive sable
young plover
olive sable
#

oh

#

why?

young plover
#

🤷‍♂️

olive sable
#

they could have at least kept the naming good

uneven pulsar
olive sable
#

idk

#

i dont use cuda

#

my cuda version is whatever version the 3090 has i guess

ember loom
#

What a cool guy am I right guys

olive sable
#

miyamoto my lord and saviour

#

every single succes nintendo has, is due to miyamoto

#

people don't like the wii, they like the miyamoto

ember loom
#

“We are not worthy!”

#

He seems like a nice guy, he’s not even control of the prices at Nintendo, that’s like the pr or ceo guys

olive sable
#

have you seen his signature? its cool as fuck

#

it has an apple at the end

ember loom
#

Eyes

olive sable
#

i mean, i see it as an apple, but its probably eyes or something

#

my game history teacher says "they released the miyamoto" like he's some feral animal KEKW

#

he hasnt made many games recently and it really shows, recent nintendo games have fallen off

amber fractal
#

I love oled dark

olive sable
patent shard
hollow matrix
#

Holy shit, it's been a fucking hour and this is still loading neurOMEGALUL

amber fractal
#

We love unreal loading time

#

but this is unity not unreal engine

olive sable
glad path
olive sable
#

i wish lol

hollow matrix
opaque sigil
#

that poor drive is begging to be put down neuroCry

olive sable
#

USB AINTNOWAY

hollow matrix
olive sable
#

ye no shit its slow

#

you're getting 500kb/s reads

hollow matrix
olive sable
#

ye i noticed

#

flash storage would be faster

hollow matrix
#

And I have a storage problem neurOMEGALUL

olive sable
#

i mean, 500 gb is not that much to begine with

#

i say while daily driving 220 gb ReallyInnocent

hollow matrix
olive sable
#

bruh

hollow matrix
#

Hoping to replace that at some point though

olive sable
#

actually

#

my mobo has 2 nvme slots

#

is it easy to move a linux install to another drive?

hollow matrix
#

But I'm not using Linux anyway, I'm using the piece of shit known as windows 11

#

Although I do use WSL frequently

olive sable
#

i curreently have windows on a 1TB nvme, but i switched to linux at the start of july, which is on a 220gb sata ssd

#

im gonna move the windows nvme drive to the second slot, and ill buy a 2TB nvme for my linux i think

hollow matrix
#

My laptop is this: a Dell G15 5535

hollow matrix
#

Do you know how to make a shader to make an object glow btw, I'm not great with Unity

olive sable
#

uh

#

no

#

i don't use unity enub

hollow matrix
olive sable
#

i guess dot product of the view vector and the normals of the object to get the edge, and colouring that? evilShrug

hollow matrix
olive sable
#

well, uh

#

idk how unity shaders work so me neither

#

i only do opengl and vulkan

#

which use glsl

hollow matrix
olive sable
#

HLSL cant be that different from glsl NeuroClueless

olive sable
#

you shoudl see a normal in the vertex shader?

hollow matrix
#

Hold on, I just need to wait for a bit

olive sable
#

bruh

hollow matrix
hollow matrix
#

For some reason, you can find every possible thing you can imagine answered for 3D Unity projects, but for 2D projects, you're just on your own

olive sable
#

called a "fresnel shader" apparently

#

i guess its not really glowing around the object, only on the object itself

olive sable
#

i guess you'd want bloom?

hollow matrix
olive sable
#

is that not built into unity?

hollow matrix
olive sable
#

you need a shader with emmision apparently

#

"URP" shoudl be able to do it fine then

hollow matrix
olive sable
#

actually i found a video

hollow matrix
#

I think I'm going to use VSCode instead of Visual Studio, I don't have the RAM to keep them open at the same time neurOMEGALUL

olive sable
#

why were you using visual studio to begin with? neurOMEGALUL

hollow matrix
#

brb

#

Actually, I wonder how good fleet would be with this

opaque sigil
#

Still in public preview deliv

#

Hasn't it been like 3 years or something

hollow matrix
#

What I like about fleet is instead of it being essentially the same no matter what you have open like vscode, it can change the layout to suit the type of development

opaque sigil
#

I think vscode can do that too now finally with profiles

#

Never felt the need personally

hearty notch
#

claude just literally pulled xkcd 927 on me

olive sable
#

race conditions are driving me insane

hollow matrix
hearty notch
#

classic

#

btw guess the problem im trying to solve in that screenshot

hearty notch
#

polyglot package manager with universal api/adapter layers for every language + upfront forced reporting of deps costs

hollow matrix
#

I do love claude sometimes

hearty notch
#

lol

hollow matrix
hearty notch
#

lol

#

sanitize ur strings friends

young plover
#

nah, that's based
If you care about what a password contains then you're not storing them correctly

hearty notch
#

i mean also true idk what kinda password processing these days wouldnt be robust to that

#

but xkcds from the 2000s those were diff times

hollow matrix
#

@hearty notch neurOMEGALUL The title of the image

hearty notch
#

lmao

hollow matrix
#

smh no password length limit neurOMEGALUL

faint sandal
#

lmao gelsinger is back on his shenanigans again

#

templeos 2 trust

young plover
glad path
#

lol

hollow matrix
glad path
#

om

finite obsidian
#

Well, I somehow managed to get the lava lamp to work in home assistant.

hollow matrix
#

Ok, controversial opinion, but TypeScript is better then python and easier

olive sable
#

why does my code have so many race conditions NeuroSchizo NeuroSchizo NeuroSchizo NeuroSchizo
bwaadow

stiff micaBOT
olive sable
#

i have an idea

hollow matrix
obsidian mantle
#

I cant stop thinking of clicking your nickname because it looks like a spoiler ICANT

olive sable
#

same

hollow matrix
#

You two are the second and third to say this neurOMEGALUL

olive sable
brisk laurel
#

i need a local file compressor does anyoone know where i can find one?

obsidian mantle
#

winrar

olive sable
#

this u?

hollow matrix
olive sable
young plover
#

Windows added support for a few different format in a Windows 11 update.
.tar.zst is usually the best compression

brisk laurel
brisk laurel
brisk laurel
young plover
#

oh
ffmpeg voodoo

brisk laurel
#

mp4 video compressed

brisk laurel
olive sable
#

i didn't fix my race conditions, i only moved themcatscream CerberScream AAA aaaaaa EvilAAAAAA

opaque sigil
#

Look into handbrake

young plover
#

well ffmpeg can generate a video in whatever codec you want
problem is figuring out the command line options

handbrake probably is easier. never tried it

olive sable
#

vlc media player can export files too ReallyInnocent

opaque sigil
#

It's very intuitive in comparison

#

Well anything is intuitive compared to ffmpeg I guess

patent shard
#

Handbrake is okay, the defaults may not be great, I suggest you look at things
and it's forced 4:2:0 subsampling, won't let you change that

young plover
#

yeeeeah
basically all video is 4:2:0 subsampled

brisk laurel
brisk laurel
hollow matrix
olive sable
young plover
#
param(
    [string]$inputPath,
    [string]$outputPath = $null,
    [int]$preset = 4,
    [int]$crf = 40,
    [int]$keyFramePeriod = 150
)
if (!$outputPath) {
    $outputPath = Read-Host "Output path"
}
$vfparams = "zscale=t=linear:npl=100,format=gbrpf32le,zscale=p=bt709,tonemap=tonemap=hable:desat=0,zscale=t=bt709:m=bt709:r=tv,format=yuv420p,scale=-1:720"
ffmpeg -i "$inputPath" -c:v libsvtav1 -preset $preset -crf $crf -g $keyFramePeriod -vf $vfparams -sws_flags area -c:a copy $outputPath

my incantation for recompressing HDR screen recordings for discord.

hollow matrix
lament igloo
hollow matrix
#

I don't know if I should be doing this neurOMEGALUL @lament igloo

opaque sigil
#

I'd expect it to lock cause there are no atomics big enough

olive sable
#

what

hollow matrix
lament igloo
opaque sigil
#

You're capped at 64 bit atomics

lament igloo
olive sable
opaque sigil
#

Well hardware atomics

young plover
opaque sigil
#

It'll work

#

But it might just be slow

hollow matrix
young plover
#

You really should just slap a mutex on it or use some kind of queue to send it

olive sable
opaque sigil
#

Just lock that section

hollow matrix
opaque sigil
#

Well whichever part you need to

lament igloo
lament igloo
olive sable
#

the player and stuff gets updated in thread 1, while the rendering happens in thread 2

ideally id have just the view matrix and those 3 dot products atomic but alas everything i try fails bwaadow

opaque sigil
#

Why are you loading the same one 3 times neuroErm

hollow matrix
olive sable
#

i copy pasted that

opaque sigil
#

Ah okay

hollow matrix
lament igloo
lament igloo
patent shard
opaque sigil
olive sable
#

same

#

bwaa

opaque sigil
#

Sounds like it's time to call it a night

#

Come back tomorrow

olive sable
#

nah, i need to be awake to go after the 3d printer im buying

young plover
patent shard
young plover
#

would rather just use Opus

opaque sigil
#

Opus my beloved

olive sable
patent shard
#

I don't like how noisy Opus is.. it also seems to have issues hitting transparency

hollow matrix
olive sable
patent shard
#

Opus is also really horrible for stuff like piano.. it loses to even MP3 big time

opaque sigil
#

Probably had an old af version of vlc or something

olive sable
#

the only reason i use it is for 5.1 surround sometimes

opaque sigil
#

Or they patch the ms store one idk

hollow matrix
#

Why does this guy have 5 YouTube accounts neurOMEGALUL

lament igloo
#

Would you like to find out

hollow matrix
hollow matrix
#

Why is it so big neurOMEGALUL

lament igloo
brisk laurel
#

free btw

#

now i dont have to convert to those websites

#

but locally i can now

hollow matrix
brisk laurel
lament igloo
hollow matrix
olive sable
# opaque sigil I'd expect it to lock cause there are no atomics big enough

nah it jsut doesnt run at all.

ld.lld: error: undefined symbol: __atomic_load
>>> referenced by atomic:308 (/usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/15.2.1/../../../../include/c++/15.2.1/atomic:308)
>>>               output/debug/main.o:(std::atomic<glm::vec<3, float, (glm::qualifier)0>>::load(std::memory_order) const)

...
...
lament igloo
#

Alrllllllrrt

olive sable
opaque sigil
#

Should've expected that I guess

#

When in doubt throw a mutex at it

hollow matrix
opaque sigil
#

and then notice how horribly slow it is and go back

olive sable
#

im probably gonan try to do double buffering hopefullty maybe it works

#

onyl an atomic index should help with how shit this code looks rn

opaque sigil
#

If you just need to wait for something to be updated before doing something else there are also condition variables but idk if that helps here

lament igloo
olive sable
#

its not really i want it to wait, it's more like, use the new data if its there, otherwise use the old data since at 16K fps you wont notice anyways

hollow matrix
lament igloo
#

Theres nothing there

hollow matrix
lament igloo
olive sable
#

just for my own sanity, you're hyperblaze right?