#programming
1 messages · Page 225 of 1
shimi shimi ya shimi ya shimi yah



drank swalalala
Where do they get probabilities from 
depends on the encoder and decoder
look into RANS and TANS for different ways of getting the probabilities
Wait how could Microsoft patent something that already exists 
rANS
Or is that forum I stumbled on lying
no they did patent it
its expired though
you can use it dont worry

unless it's nintendo
then they can and will use military forces against you
bold to assume it will only be militarily
just live somewhere where they don't operate

during takeoff and landing too i heard one plane had to goaround because someone ran to the restroom during landing
recently

they're just big doggos
they can just eat the linux guy and i can wait until they finish first
then i can sit with them
problem solved

question
Answer
//! For Windows(MSVC) compatibility
#if defined(_MSC_VER)
#define DLLEXPORT __declspec(dllexport)
#else
#define DLLEXPORT
#endif
this is in chessapi.h for MSVC compatibility
Yes that's what you want
there's an issue to add this to bitboard.h, do i have to worry about it already being defined
e.g.
#ifndef DLLEXPORT
//! For Windows(MSVC) compatibility
#if defined(_MSC_VER)
#define DLLEXPORT __declspec(dllexport)
#else
#define DLLEXPORT
#endif
#endif
Uhhhh
So what happened, was the Chess API exploded?
didnt have time to make changes yesterday
im taking a look at open PRs and issues today first
do this unless you have a reason to override a user-set dllexport
i'll change chessapi.h to use this as well
oh also
i guess bitboard.h should have
#ifdef __cplusplus
extern "C" {
#endif
...
#ifdef __cplusplus
}
#endif
ye

also adding #pragma once to it, shouldnt be needed but good practice
that should be all the easy compat changes for the header files
ligma
#pragma once is non-standard 
already in use in chessapi.h with no issue 
it's supported by all compilers that matter
wontfix
It's interesting how batch size effects training speed
Up to a point higher batch size will be at least the same speed, but eventually it starts to slow down, but also not linearly
Quite interesting
shiro how are you a java dev 
you are given a more verbose option and you just ignore it

this isn't enterprise software tbh, no point in making it too verbose, regular unreadable is enough
all this token saving over the last couple weeks has wiped my java skillset
long names are still one token 
no
#define best_score_eq_best_score_gt_score_best_score_or_score_sc best_score = best_score_gt_score best_score : score;
oh god

java skill inversely proportional to code length 
that's a Java dev alright
drawing tablets work on linux right?
at least its not
bseqbsgtsbsssc

that would be your average C dev
true
x86 instruction 
mostly 
need drivers of course but anything common should be supported
most mainstream distros provide drivers for drawing tablets
fedora comes with a few preinstalled :3
cbrsccbcv
cat stepped on your keyboard
or it's a widely used C stdlib function for string manipulation
There's probably an instruction with that name
average python dev naming scheme
@shadow sinew apologies for the ping, i wanted to see if you would be free to get the PR resolved before a planned breaking api change? sorry for all the running in circles, that's on me
not python itself
python devs
for some reason they love shortening variable names to hell and back
literal opposite of java devs
variable names are fine to shorten tho
they're local
just name them whatever you want
Half the "python devs" are just mathematicians 
don't you know? writing numpy all the time gets tiring, gotta save 3 characters
Meanwhile me: Kotlin
if you're using non-self-documenting identifiers, you're either a psychopath or a code golfer 
its true though 
And I'm a vocal synthesist
autocomplete 
plot twist: everyone here is both
np. faster than num<tab>.
shruge
Sometimes i make a 5 word sentence variable and i feel like its too long. Sometimes i leave it unchanged
I like long variable names usually
what if i'm both 
by what, a couple hundred milliseconds maybe, not like typing speed usually limits the speed at which you can code anyway
also identifiers are selfdocumenting by their assignment 
gotta save yourself two keystrokes to make someone else / your future self check all your imports and variables for what the hell np means
It adds up
Is there a limit to variable name length
I think my Chess bot has a major lack of long and dumb variable names
There's always a limit
pretty sure there isn't unless you can store data in the variable name, then it's 64 bits 
maybe if your future self has dementia
i'm against wildcard imports
i'm not against arbitrary renames
the drawing tablet has mouse acceleration 
what
as long as you can check what some name means, it doesnt matter if its short or long as long as its vaguely relevant
tablet smoothing?
you can turn it off
somehow
if i move faster it goes further
Average Chess bot import table import chess.api.*
disable relative mode maybe 
fine in code golfing
Silly
python is especially painful in that regard. you can't tell where something is declared at times unless you spend minutes reading your code
time to do the same with JS 
it seems to only do that for toush inputs
the pen is pretty acurate to the width of my monitors
just remembered an evil hack i made
that does mean it moves 3x as fast horizontally cuz i have 3 monitors

$=console.log,i=99,k=1,a=_=>`${i||"nN"[k^=1]+"o more"} bottle${i-1?"s":""} of beer`,c=" on the wall",d=".",e=", ",f="\n";for(;i;)$(a()+c+e+a()+d+f+"Take one down and pass it around"+e+a(--i)+c+d+f);$(a()+c+e+a()+d+f+"Go to the store and buy some more"+e+a(i=99)+c+d)```
look at this beauty from the year of our lord 2023
hell yeah
shiro why does <x> not support ' in identifiers
bad language
On mine I'm waiting for a fix to a probably API-based bug

theres a reason people dont use superLongVariableNames in math 
keeping them short makes your code concise
when you dont see the code, thats when you gotta have descriptive names
interface boundaries
and the more generic your code, the less descriptive names you even can give to variables
what are you gonna name it, "argument1"? yeah just name it "x"
i single-handedly carrying 50% of for loops 

:neuroTrue: place the definition in comments

And then there's fun countOwnPieces(board: Board) = PieceType.entries.sumOf { ChessApi.getBitboard(board, color, it).value.countOneBits() }

you're kind of strawmanning, i never said always use long names
my argument is usually it's best to use descriptive names, x, y, z may very well be descriptive for something like a vector
descriptive =/= long 
i do v' = push element v not vWithElement = push element v
i use idx outside of the context of loops
sumOf { } is just more Kotlin STD goodness, it sums up and returns the return values of running the given integer returning block on each element of the given iterable
call me a psycho, but i use index 
v' is not as descriptive as vWithElement, but its more readable
v prime 
same goes for intermediate variables in data processing, i'd rather give them no names at all and use point free style but sometimes i have to give them names in which case i'll just do x or y
Basically this is very small
var sum = 0
for (type in PieceType.entries) {
sum += ChessApi.getBitboard(board, color, it).value.countOneBits()
}
return sum
some_func_that_returns_result().map(|x| x.do_something()), not some_func_that_returns_result().map(|some_func_result| some_func_result.do_something())
PieceType.entries.forEach { ... } might save you some tokens
Already got fun countOwnPieces(board: Board) = PieceType.entries.sumOf { ChessApi.getBitboard(board, color, it).value.countOneBits() }
Kotlin STD peak
and most variables are equally as useless imo
only exist because of language skill issues not letting you chain functions in a nice way
(most not all)
if you can reasonably say that you can infer what a variable name means, that is descriptive enough
i cant infer what x means from x alone
the context surrounding it is also important
but i can look 4 tokens to the left and see what it means
thats my point
no need for long names when the assignment is right there
so you can literally just see what it is
x not descriptive
Meanwhile I must do var scoreCpy = score because score is not mutable
And later legalMoves[move] = scoreCpy
this is some java single-index array level bs
oh i remembered go 
HOW DOES ANY OF THIS WORK ANYMORE
Well it's iterating over the elements of a MutableMap<Move, Int> to score them
MY TREE IS A CIRCLE
pretty sure trees are supposed to be planted in dirt, not be a circle...
Wuh
shiro circular trees are the best 

if you wanted non-circular trees you could just rust
boring

rust (derogatory)
rust (oxide)
ok ok so
rust (plant disease)
consider the following game state tree, where you can make a move (indicated by letter) and the state is represented by the unordered set of moves preceeding it

the problem with this tree is that the state AB occurs twice, but we regard them as separate entities
this means the work we did analyzing the first occurrence is repeated
which is not ideal

to resolve this, we might consider merging the states:
but then a new problem arises, which is that this is no longer a tree, it is a graph
nodes no longer have a concept of "parent", as they can have multiple parents
circles in circles i go around
i'm still waiting for the now-diamond with two wings to turn into a circle
looking for something that cant be found
the problem then becomes you have to start working with indices if you weant to reuse stuff
this causes a number of problems, such as with backpropogation; if we were to naively propogate results up to each parent node from AB, they would be double-counted at the root
so now i have to rewrite my backpropogation functions to keep a list of visited nodes
just add infinite more nodes
use hash that includes parent hash
i plan to
because two boards with the same position that come after one another are NOT equivalent
duh doi just download more ram
they are different

Bye chat
because the later the position the closer you are to draw
bye vixen
this is a fair criticism but probably worth addressing later
My deskspace has become too small 
depth should be an easy thing to integrate to the hash
thats medium 
or halfmove counter, for your particular example
monitor arm time 
dont those cost a lot?
especialy for triple
maybe thats not even an issue
if the node occurs twice and is a bad result, it should be counted doubly bad, once for each branch in which it occurs
I mean
it depends
nice ones are expensive
but also you wouldn't need a triple one, just get multiple arms 
question
on a one-to-one basis, is realloc or malloc more expensive
i have a case where i can either dynamically expand an array or add items to a linked list
bench it
the only way to tell is to bench it 
too much work
gonna find someone on stackoverflow who did it already
pretty sure it also depends on the code around it so their result may not be exactly relevant to you
On a modern OS the realloc will win by a huge margin because it can remap a buffer to a new address
monitor arms are made to go against gravity so i cant mount one upside down right?
different use case but relevant principle
i mean, malloc can reuse buffers too
won't the malloc equivalent be at least roughly two syscalls though?
one for free, one for malloc
ultimately i wish i just didnt have to do this

who says free is a syscall
but i really dont have an upper bound on transposition table parent count
free isn't a syscall??
it depends 
free is a syscall
munmap is
but libc free doesnt necessarily free

libc malloc/free do a fuckton of micro-managment of memory to avoid calling to the os at all costs
because syscalls are really slow
syscall overhead is pretty big and can only allocate in pages



reminds me of some object pooling code i wrote once
on a pure stdout throughput test fprintf (which locks, writes to, and unlocks a buffer) hugely outperforms the write syscall, which doesnt even do locking
:idathinking:
like, if write reaches 20 MiB/s, fprintf reaches 1GiB/s
Their words not mine
Happy birthday Shiro!

std::endl vs '\n' moment
even more if you swap fprintf for fprintf_unlocked
doesn't std::endl force a flush?
so does '\n' for stdout 
i have this in my cp template
#ifdef LOCAL
#include "lib/local.hpp"
#else
#define VDBG(...)
#define DBG(...)
#define endl '\n' // remove this line for interactive tasks
#undef assert
#define assert(expr) (expr) || (__builtin_unreachable(), 0)
#endif
flush is a bit different

Inserts a newline character into the output sequence os and flushes it as if by calling os.put(os.widen('\n')) followed by os.flush().
https://en.cppreference.com/w/cpp/io/manip/endl
thats a fun thing i discovered while making the C API
'\n' wouldn't necessarily flush, no?
\n to cout doesnt flush 
cute chess happens to be one of those "not always" cases
which is why the api has calls to flush after every important printf
io is annoying
and the classic ios_base::sync_with_stdio(!1); cin.tie(0); cout.tie(0);
phrr
📣 phrrr

extern c
how come
or can i
i pushed a change today
it worked fine for me 
did that break or fix your issue
the one you just described
no i never touched bitboard yet just wondering
there's a now chessapi.h and a new bitboard.h
the latter should support C++ and MSVC DLLEXPORT now
yay
i like how steam just shows me a big blue delete icon next to proton experimental
ah i remember now, stdout is only line-buffered when it's a tty

you should try playing the new proton experimental
i only use lts protons sorry
https://www.youtube.com/watch?v=fxFL_BGev8M
This true?
Thank You Boot dev for sponsoring this video
Click this link https://boot.dev/?promo=CODESOURCE and use my code CODESOURCE to get 25% off your first payment for boot.dev.
This is the story of C — built in the labs of Bell, shaped through experiments, and defined by choices that still echo today. To understand C, is to walk into a room in 19...

is java the most used?
first i've heard of it

sth sth 3 billion devices 
java is in every intel me and in java cards
so maybe 
that's exciting and terrifying
the vm approach worked really well for them 
and nobody really made a vm standard that could compete
wasm is kind of getting there?
hbvm
semantics 

shiro i'm gonna right bitshift you
is that not against the server rules??
barrel shift..?
DO A BARREL ROLL
rule 16. you can shr a shiro 

you must be my long lost twin
javac is made in java
i actually dont know if id rather do a linked list or realloc for this array
isn't openjdk's javac made in c?
"rustc is made in rust"
linked list has token overhead of the recursive call
realloc has token overhead of reassigning the realloc'd buffer
the standard library is also made in java
what are you going to write the standard library in except the language its written for 
eventually bootstrap compilers become secondary
as soon as self hosted compilers reach a fixpoint
a better argument would be llvm
but doesnt apply to java
stupidly, frankly 

it's the year of the graalvm everyone!!!
i feel like that's every compiled language developer's dream
the JVM is also made in c++
its a fun goal but not useful for most languages
just compile 10 years worth of compilers and you're done bootstrapping from source it's not that hard
it's a useful metric, it means your language can make a language

actually self hosting is one of the most popular projects to make in a language
langdevs optimizing for langdev 
"useful" <=> "popular" 
surely 
its reasonably useful since it instantly makes you your language's user and you don't have to maintain a compiler and a second big project as a test suite
why are you guys yapping and not mastering your bots 
holy
im pickling
bot can wait
have you even started your bot

i thought you were the one saying a month might not be enough time
i have a question
what do i do if my bot beats random bot every time?
give it to stockfish to analyze moves?
ye because no time i have picklesto pickle 
(its not beating yet but all i need is checkmate mechanism)
it's really up to you, but there's a few ways you can try testing
(im procrastinating on stuff i have to actually do)
you can play games against it yourself, but get all of your moves from lichess or something
sure, if you can talk someone into doing it
i dont trust people here not to reverse engineer my code for fun

I should maybe test if at least with error catching to prevent crashing from the bug in the piece getting stuff my bot does well
i also dont think anyone wants to run a random binary i upload
and im not sharing the source code
There's actually a ton of overhead from just priting errors so I have to remove that
the rewrite has brought me down to 756 tokens
when I wanted to test my bot I just recruited random people from genchat to fight it
but the bot is stupid
lots of room for new features
Hey superbox, funny question when you have a few minutes, is your neuros.click ftp server up
Silly
I definitely need a better way to test mine at some point
Oh good catch, something had crashed it
I am tempted to make a matchmaking thing and throw it on a cheap vps
i found it valuable, playing against my own bots doesn't show me any weaknesses
but unfortunately people who don't write in rust, c or c++ exist and need bespoke ways to run
ok
so I have the mildly cursed idea to basically make a "proxy" mode
True once I have a better bot I should try that
Right now though I have to figure out what causes it to be too slow/stall
gcc is also compiled
which would also absolve me of running anything

sorry i meant ghc
yeah im planning to deprecate threads.h
Weird

we're just gonna go back to pthread.h and windows.h
It works within IntelliJ but seems to break in CuteChess
uci is made to be run over the web
which is probably the better solution anyways as long as noone tries to be sneaky and throw in stockfish
in theory you just let people connect and print moves to you
ye
And I have no clue why
over a network connection of some kind
idk how the end user gets the match results tho
maybe I should throw in 32 core stockfish on max level to make people think I have a good bot
i was probably gonna write a little wrapper program regardless
because I think it'd be useful if every bot wasn't just "My Bot"
about that

you can actually configure the fields sent in the uci handshake
i figured ppl didnt wanna waste tokens on it
entry point just means it wants a main
so i just did it this way
i can't edit chessapi.c really
my point was more that if people are connecting over a web interface with their bots
they can change this on their own
ye i'm showing that it compiles with /std:c17. that is a linking error not compilation
actually random question but would it make sense to throw an ifndef before those so people can pass -D to gcc
i kinda expected c++ to not work with it
c++ is not a superset of c
sure, that can be done
not entirely sure if -D is the right thing but 
It also works in regular terminal
Something is wrong with CuteChess, potentially caused by the errors happening due to the API returning invalid stuff
its fine because the c++ standard doesnt support many of c's new features
ideally it'd be runtime
actually potentially have chessapi.c read a config file from the cwd or something idk

that sounds like a pain
and also not really that important
yeah
-D is probably plenty
it works which is all that matters
(pls don't use any of the weird new c features shiro)
please do 
does anyone even rely on it working in a c++ context
so how would that work with bindings that use a prebuilt shared library?
well, done "correctly" at least, using their build system,
i can just not do that i guess
talking about node-gyp? or whatever it was called
yeah
you can link to c code without compiling it as c++ code
i have to rebuild the library on my end when people submit anyway
i bought the 3 monitor arms btw, shoudl arrive tomorrow. while i was at it i bought a larger mousepad
ill just recompile libchess for each submission
fair
but locally, just rebuild it if you wanna rename your bot (or yourself?)
i hope you made sure they can carry enough weight too
if you wanna put in the work 
better option
use env vars
shiro compute millionaire
libchess takes like 0.1 seconds to compile
we're gonna have what, 50 bot submissions? max?
5 seconds compile time 
Shiro slave labor... hey Shiro calculate all moves for my bot kthx
i have to hand check each source file anyway, i promise making libchess will not be the bottleneck
they do 10kg each supposedly. so that probably means 10kg with sag and 5kg without sag, and my monitors weigh 4.2kg according to lg
you will have one of the worst bots of all time with this strategy
i am horrendously bad at chess
should be good then 
but it'll be special
i promise you env vars are easier, you forgot about bindings 


bindings just use libchess in their directory anyway
wdym 

I'm still mildly trying to figure out how I'd pass those vars to my rust bindings
bindings devs making life harder for people
well if ur bindings dont run on my machine thats on u 
the mosuepad arrives in oktober tho 
they do but they use their own libchess 
their own libchess?
(simply because i dont wanna make users set LD_LIBRARY_PATH so i link statically)

Rust bindings compile it as part of the program for example
(I also link statically)
everyone compiles it statically 
So somehow recursion = 2 works but recursion = 3 breaks in CuteChess
no, just some people 
bindings devs not following the spec and requiring the spec to change instead of adjusting the bindings
bad practice
then again at least for Rust it should be possible to make it a compile-time const somewhere in a config so it doesn't take tokens...
i did try to use .so but stack was being weird
this is just better ergonomics
And it doesn't seem to be a matter of it just being slow, unless running under CuteChess has insane overhead
Hopefully it's not some shadow effect of the weird get piece error
i just have to figure out how to get env variables in c
i wouldnt
but 3 character savings
computer explode
i'm concerned
cmake is celebrated as an improvement
-1
just how bad is gyp
ikr 
bad
i mean cmake would actually be able to compile c as c and would not shove /std:c++20 everywhere it can
and its considered "true" in boolean checks
now i see what was my problem
msvc flag 20 is latest msvc supports
c++ is not specified
and yes

well it also has "latest", which is something between 20 and 23 apparently
Howwwwww?????
This thing thought promoting to a knight and causing a draw by insufficient mating material was a good idea
And this is supposed to be the bot with recursion
It's literally dumber than the bot with no recursion
Either the bug with get piece also corrupts board states or my multipliers and score numbers completely suck
By the way what happens if a move is made on a board object that is already in draw in memory?
everyone gets moves from chess_get_legal_moves tho 
Then that can't be the bug either
so its generally not an issue
Yeah except when there's that one broken castling move
i thought there was an issue open for the castling stuff but it vanished
But that probably has nothing to do with the weird bug with getting pieces that's causing me annoyances
Maybe I should do recursive move evaluation after all the non-recursive evaluation so it doesn't end up flipping the score negative
thanks Copilot, very cool 

so who's writing the chess engine for the tournament 
stockfish contributors
incredible google pull

now I can truly realize my llm chess bot
1024 tokens, so itll need to be a small language model
10 word vocab
tokens 
?
im just gonna use cute chess

compile all bots
JS bindings for shiro-chess, a fast chess engine in Rust
i get crazy numbers with this, something isnt right
so i get bitboard which is super big number for example 2,305,843,009,213,693,952
and it doesnt look like / or % by 8 is going to give something alright
i need to divide by 0b100000000
you need chess_get_index_from_bitboard on that
git fetch origin
git checkout 7-create-the-lrzip-compression-benchmark-program
oh right
that will give you a number 0..63
im so bad

fatal: not a git repository (or any of the parent directories): .git
would this work though 
no
why
a2 is exactly this 0b100000000
From github.com:[FILTERED]
* [new branch] 7-create-the-lrzip-compression-benchmark-program -> origin/7-create-the-lrzip-compression-benchmark-program
branch '7-create-the-lrzip-compression-benchmark-program' set up to track 'origin/7-create-the-lrzip-compression-benchmark-program'.
Switched to a new branch '7-create-the-lrzip-compression-benchmark-program'
worked for me 
might save tokens
well a2 might be, yeah, but are you going to do that for every square individually?
i am not trying to shrink tokens yet, will do everything as explicit as i want
then when im done i will do the shrinking
"y" which is a number is alright
but i feel like getting x will be worse
a is 1
b is 2
c is 4 and so on
i need to get log2?
oh ye first i mod by this
then log2
by mod i mean % is it called "mod" in your language?
its called mod in english 
oh
or in maths rather
esl
(full name is modulo but its shortened to mod in maths and programming)
i heard full name as modulus

a modulo b, not a modulus b
it loses to itself in 29 moves
play it vs stockfish
glass have full
lmao
glass is completely full actually, 50% air and 50% water
also
minor spelling error
glass have full
that sentence stunlocks my brain every time i read it i keep forgetting what im doing and needing to reread what i just did
smh noob, I can win vs myself in two moves
clearly it will never be agi
this has thoroughly made me consider writing it
on one hand, would be cool
on the other, I have a cover letter to write
This bot seems like a dead end
I may just have to go and figure out how real Chess bots are done and start from scratch

Ver8 was my peak for MK1
As soon as recursion was added it broke
And became stupid
Tournament
there's a setting for concurrent games in tournaments too
(do not set it larger than floor(threads / 2) otherwise cute chess segfaults
)
makes sense 
aw look at the lil baby om
i dont know if i'll do concurrent games for the final tournament or not
i dont want one bot thinking really hard to potentially impact the others
it shouldnt but
you never know

I can throw so many slow simd instructions at shiro's cpu that it downclocks and slows down my opponent
sadly you have no avx512 so its not incredibly easy to do
big brain
(I say this having experienced ffmpeg downclock me to 4.2GHz at full tilt)
I guess I'll wait for fixes and try a new bot from scratch
How silly
My CPU can sustain 5.1GHz all-core with an undervolt, hopefully more once I get my new AIO
does your cpu have avx512
my tournament freezes
i think my bot disconnects after several games
because that is a different beast entirely
i would show yall the image but my king just decided to roam around lmao
12th gen so no unfortunately
avx512 go brrrrr
what can possibly cause my bot to freeze in tournament?
bot crashing
how do i force a crash to check if cutechess detects a crash
there's a setting like "recover crashed engines" that forefits if a crash happens
because rn it doesnt look like crash it just doesnt make a move (and not processing it)
OOOOH
i think i know why
wasting a token 
is while true better or no
i think true is 1 token and ;; is 2?
oh someone mentioned it didnt see
shruh
surely goto is less tokens

ok time to write a chess server and instantly implode
bred trying to crowdsource move data 

do I look like I have the storage requirements for that
actually I wonder how bad that would be
probably not very
you could probably do a usefulness heuristic and only store a move if its hash has occurred more than a certain number of times

shrug
that lets you trim storing lots of data for rare positions
I get 40 gigs of storage to play with (realistically less because of the os but shh)
surely
grandmaster 
I will be fine

shrio about to submit a bot that plays random moves on alt accounts to bloat my numbers
me submitting two random bots to play 1 million games against each other on bred's server
wtf
smh shiro
i minimized my nn down to 88 NN parameters shiro i cant with these optimizations😭
fp4
at least I don't have to run the bots myself 
you're taking part in the contest?
i am taking part in the contest
do ternary 
hi shadow
At least you can store it in 64bit if that doesn't consume too many tokens to desplit
oh wait huh
i lost to it 
(im bad at chess)
they made the intel servers the same price and specs as the arm servers at hetzner
neat
smh why are the amd ones more expensive, I can't project my brand loyalty into vps purchasing
my nn will be the most overtrained net in existence
trained on 100M games but only 88 nn params
😭
overtraining isn't real, its called being goated
✅
more training means better network
god I really should buy a new domain soon
are you gonna just stop training midway
quitter mindset
As long as it isn't stuck in a suboptimal layout
I'm still not sure if I could pull off a submission but I can try to.
gemini is so carrying with the nn minification
i'm still trying to get it to compile
if you allocate 256 tokens for nn data thats up to 16384 bits which is ~10k params for a ternary network 
The best method to play mhm
i have no idea how one would train such a network but i trust shadow to pull it off more than other participants
true
you train it like any other network 
gradient descent with 1.5 bits per weight 
or alternatively you train it on sane precision and quantize later
idk what that means
I think you have to do both because you'd lose too much data to quantizing
Your already starting very small
wont it have to run on cpu btw?
-# Quantizing is basically less precise data in exchange for less data storage, it just gets converted to floats later
im gonna lose my mind
the NN in question
my duplex neighbours have synchronized their smoking schedule with when i open my window apparently
i should just start dropping bricks out my window
and ternary in this case means -1, 0, 1
the three possible weights
you should synchronize your smoking schedule with them
sam thank you for this deep statement
no problem, im here till 1am or so
my numlock isn't tho
how many floors
i couldnt be bothered to install and configure that numlock exstension
ill just suffer
only 1 floor
Shattered brick 
i was feeling kinda sick so i took some nyquil
now im 
holy
how do i code like this
feels like 5am
Code on a random project unrelated to your current one mhm
Some people are doing NNs now?
caffeine after a sedative?

many people doing NNs
And meanwhile my bot is completely useless when it has recursion
I may have to start from scratch and look up actual techniques used in actual Chess engines
im sorry but what the hell is that NN supposed to do with that amount of params

honestly maybe i need to do a rewrite too
bot starting to feel stapled together
not enough foresight
I have no idea what I'm gonna do but I'm gonna have to start over from nothing and do something completely different
i have a pretty good idea of what i need to do 
this challenge makes me want to start eating bricks
I have no idea at all what I need to do
Right now I'm waiting on any possible API fixes and changes and then maybe I can start building a new bot
hai
Funny number go
i see a#5
@opaque sigil https://qwerasd205.github.io/AnnotationMono/
bro its yung elo wtf 😭

Yeah it's a pitch
i know we talked about a#5 a lot
Well there's a lot more of it now

One of the datasets was copied and pitched up an octave
In the RVC inference stage so no quality loss from pitching up
mhm
There's now apparently 4 examples all the way at G6
Though those are likely garbage noise
its time to update api, i finally need the bitboard.h
That's crazy
HUHHHH??
This model literally was just spawned into the world and it already has insanely low loss
2. e4 3.0s Qa5+
3. c3 7.0s b5
4. Bd2 11s Qa4
5. b3 29s Qa5
6. c4 3.7s b4
7. d5 1.7s c5
8. Nf3 4.9s h5
9. Bd3 24s h4
10. h3 8.5s Rh5
11. O-O 5.1s e5
12. g4 9.9s hxg3 0.59s
13. Kg2 18s gxf2
14. Ng5 42s Rh4
15. Rxf2 14s f6 0.56s
16. Nf3 10.0s Rh5 0.52s
17. h4 6.5s g5
18. hxg5 12s d6
19. gxf6 14s Bh3+
20. Kg1 10s Bg4
21. Nh2 75s Bxd1
22. f7+ 5.2s Kd7
23. fxg8=Q 2.9s Be7
24. Be2 33s Bxe2
25. Rxe2 3.2s Kc7
26. Na3 51s Qxa3
27. Bc1 37s Qa5
28. a4 7.8s Rh3
29. Qe6 13s Rg3+
30. Kf1 15s Kd8
31. Ng4 32s Rxg4
32. Qxg4 2.9s Qa6
33. Bg5 12s Qa5
34. Bxe7+ 1.9s Kxe7
35. Qe6+ 5.8s Kd8
36. Qxd6+ 9.4s Nd7
37. Rg2 5.1s Qb6
38. Rg8# 10s, White mates ```
brotli sucks
lrzip is better
-# for my specific use case
lrzip was straight up ~17.3x faster and with a better compression ratio

Chat, I am trying to do anything but work on the NN framework. I really don't feel like trying to deal with a loss function without floats.
So much so I'm trying to see if I can implment what I need to with literally anything else.
It is indeed very weird
vscode doesnt like this
(gcc compiles it alright)
what the hell is that "travel" doing
@nocturne olive i think your ftp server doesn't like when i try to download a lot of stuff, appears to be down again
This must be a bug that was introduced recently, hopefully a new FileZilla server version comes soon
Try different files, and also what client are you using?
filezilla
Try WinSCP
only 1 concurrent transfer 
finally someone mentioned a program i know
Maybe FileZilla server x FileZilla client is broken somehow
That's decent, has 6TB more storage than my system
Yes I have 29TB on my local machine
SMOL
Would my 2TB laptop be smol 
Yes it is SMOL
i also hit the jackpot because i bought a sff disk enclosure:
and they forgot to take out the sas SSDs
holy shit
I don't have anything crazy like that, I need more funding to expand the NeuroSynthProject infrastructure
Lackrack
I only have this one machine
Counting the amount of storage I have, 2TB, 1.5, 2, 1. 0.5, 0.5. (9.5TB plus whatever I forgot existed) Man is my storage split up like crazy.
Crazy indeed
Adding +1 for whenever I figure out the fate of this laptop's old drive
Unlike a lot of chatters here, I have the storage but not the amount of interface to use all of it. So most of it is cold spares
I have some storage but I want a dedicated storage server of like 100 TB with parity
I'd be fine with a desktop rig to at least collapse what I have
I just have a major lack of money
2 NeuroSynth comms from Aurum did not do much
Just paid for my new CPU cooler
Storage server is far off for me as I'm light on data usage
I use so much data a storage server makes a lot of sense
I don't think there is much tech I'd put cash into next. Maybe just maybe GPU, but if I swap for a desktop VRAM will already be less of an issue.
I personally would like more of just everything
Either more 3090s, or a 4090D with a 48GB mod
But it's so pricy, I would need to get a ton of NS comms and nobody wants those somehow
I feel like people mostly get the songs they want officially, so not much interest in unoffical
How silly
NeuroSynth is really good though
There's orders of magnitude more songs than have been covered by Neuro and Evil
I'm sure there are ones people would want to see
Don't know what to say, people are just people. I'm not someone who is into marketing
yes and no
the joy of it comes from them singing it live on stream
potential isn't in covers
not just the fact of that cover being available for you to listen
Kinda unfortunate
Because despite being quite good at this, I can't do that
i dont think you can run vedal's channel for him LULE
Vedal already doesn't make the karaoke anyway
i feel like neurosynth is best for unofficial songs, as in original
well, he still has to use his synth model to get the voice output, but that's just part of the pipeline already
most of the work as usual is done by pb
Not biased at all, but I do agree with that
I'm sure PB does that too
https://www.youtube.com/watch?v=49CrynNZAR0
Well there is also CHXI stuff
collaboration with Superbox, this makes it the first (unofficial) Neuro-sama cover of BOOM!
come chat w/ me on discord if u like! discord.gg/8ry5dn3UjA
check out the instrumental version! - https://youtu.be/KSxZScNeJBo
NeuroSynth-BETA-3 developed by Superbox & Wispers
Motifs:
BOOM (Evil) - https://youtu.be/8Nt9YPnYyjs
Only present in instr...
no way vedal touches the songs at any point, he trained the model at most
even the inference is probably done by pb it's just easier
yuh, but its probably as simple as just 'select audio file' -> 'press button' -> 'download synth audio'
No, it's 100% not
That's not how vocal synth works
That's not at all how vocal synth works
This would be RVC, which is an outdated and useless tech stack, which we also deprecated in favor of vocal synthesis
afaik thats how you do all the processing with any NN model if you want to wrap it in an app
I wait for a neurosynth orginal 













no way
⚡
