klange changed the topic of #osdev to: Operating System Development || Don't ask to ask---just ask! || For 3+ LoC, use a pastebin (for example https://gist.github.com/) || Stats + Old logs: http://osdev-logs.qzx.com New Logs: https://libera.irclog.whitequark.org/osdev || Visit https://wiki.osdev.org and https://forum.osdev.org || Books: https://wiki.osdev.org/Books
nyah has quit [Quit: leaving]
zid has joined #osdev
zid` has quit [Ping timeout: 276 seconds]
linear_cannon has quit [Ping timeout: 250 seconds]
pmaz has joined #osdev
Left_Turn has quit [Ping timeout: 250 seconds]
gog has quit [Quit: byee]
zid has quit [Ping timeout: 255 seconds]
ThinkT510 has quit [Ping timeout: 255 seconds]
mavhq has quit [Ping timeout: 255 seconds]
joe9 has joined #osdev
andydude has joined #osdev
skipwich_ has joined #osdev
skipwich has quit [Ping timeout: 248 seconds]
<heat> bnchs, rust? more like, shitust
<heat> am I right bois haha gottem
<bnchs> your compilers works like shit, it's no wonder it was called rust
<bnchs> it probably got corrodied, you need a rust remover like C!
skipwich_ has quit [Read error: Connection reset by peer]
skipwich has joined #osdev
ZombieChicken has joined #osdev
<bnchs> your data structures are cool and all, now tell me how i can make an array of structures!
ZombieChicken has quit [Client Quit]
ZombieChicken has joined #osdev
skipwich_ has joined #osdev
skipwich has quit [Read error: Connection reset by peer]
<clever> bnchs: but in some cases, a structure of arrays may perform better!
ZombieChicken has quit [Ping timeout: 255 seconds]
ZombieChicken has joined #osdev
pmaz has quit [Ping timeout: 252 seconds]
zid has joined #osdev
<zid> aha, I'm back
<zid> My ISP's BGP or something went insane
<zid> I could hit things that had UK mirrors, but nothing else
zid has quit [Ping timeout: 276 seconds]
pmaz has joined #osdev
zid has joined #osdev
andydude has quit [Quit: leaving]
[itchyjunk] has quit [Ping timeout: 276 seconds]
terrorjack has quit [Quit: The Lounge - https://thelounge.chat]
ZombieChicken has quit [Ping timeout: 255 seconds]
terrorjack has joined #osdev
ZombieChicken has joined #osdev
pmaz has quit [Ping timeout: 248 seconds]
ThinkT510 has joined #osdev
<heat> zid, welcome back
<heat> do you want to play football manager now
<heat> it's all the fun aspects of football with best aspects of being a nerd and looking at a stats spreadsheet
<geist> do you get to write macros?
skipwich_ has quit [Quit: DISCONNECT]
<heat> good question, there's probably ways to export into excel
skipwich has joined #osdev
<heat> unfortunately the INCOMPETENT GAME DEVS didn't write a macro system for their sports game
<heat> smh
<kof123> inb4 moneyballOS
<zid> bad game
<zid> do not purchase
<zid> I only get 840M/keys sec at RC5 on this cpu :(
pmaz has joined #osdev
smeso has quit [Quit: smeso]
smeso has joined #osdev
ZombieChicken has quit [Remote host closed the connection]
ZombieChicken has joined #osdev
slidercrank has joined #osdev
slidercrank has quit [Ping timeout: 248 seconds]
gildasio has quit [Remote host closed the connection]
gildasio has joined #osdev
Left_Turn has joined #osdev
Left_Turn has quit [Read error: Connection reset by peer]
ThinkT510 has quit [Ping timeout: 276 seconds]
zid has quit [Ping timeout: 268 seconds]
zid has joined #osdev
ThinkT510 has joined #osdev
ZombieChicken has quit [Remote host closed the connection]
tiggster has joined #osdev
<zid> I still don't have full connectivity and they keep rebooting random routers :'(
<zid> heat fix my isp
bgs has joined #osdev
epony has joined #osdev
slidercrank has joined #osdev
bnchs has quit [Remote host closed the connection]
slidercrank has quit [Remote host closed the connection]
slidercrank has joined #osdev
zid has quit [Ping timeout: 268 seconds]
ThinkT510 has quit [Ping timeout: 255 seconds]
slidercrank has quit [Remote host closed the connection]
slidercrank has joined #osdev
slidercrank has quit [Remote host closed the connection]
slidercrank has joined #osdev
gxt__ has quit [Remote host closed the connection]
gxt__ has joined #osdev
goliath has joined #osdev
pmaz has quit [Ping timeout: 265 seconds]
zid has joined #osdev
mavhq has joined #osdev
ThinkT510 has joined #osdev
pmaz has joined #osdev
night has quit [Quit: No Ping reply in 180 seconds.]
night has joined #osdev
zxrom_ has joined #osdev
zxrom has quit [Ping timeout: 248 seconds]
zxrom_ is now known as zxrom
tomaw has joined #osdev
pmaz has quit [Ping timeout: 252 seconds]
Ali_A has joined #osdev
Burgundy has joined #osdev
bauen1 has quit [Ping timeout: 248 seconds]
GeDaMo has joined #osdev
gildasio has quit [Ping timeout: 255 seconds]
gildasio has joined #osdev
gog has joined #osdev
zxrom_ has joined #osdev
zxrom has quit [Ping timeout: 240 seconds]
zxrom_ is now known as zxrom
Ali_A has quit [Quit: Client closed]
slidercrank has quit [Remote host closed the connection]
slidercrank has joined #osdev
gog is now known as pog
<pog> i'm poggin out
<zid> My internet is pog
* sakasama is more broken than your ISP.
<zid> can you also not find other countries on a map
xenos1984 has quit [Read error: Connection reset by peer]
<heat> why is elon musk doing market manipulation again
<heat> also google's cutting costs on STAPLERS which is fucking hilarious
<pog> heat: he needs to boost his cash flow to pay for his meme and racism factory
<heat> they made a racism factory now???
<heat> damn, industrialization is a bitch
<pog> yeah, wait till you see the GigaBigaFactory, they're consolidating production of every bigotry there
<Ermine> wtf musk is doing?
<heat> i miss the local grown local owned racism
<heat> none of this new Big Racism bullcrap
<heat> Ermine, he changed twitter's bird thingy in the web page to a doge and now dogecoin shot up 300%
<heat> 30*
<heat> misstyped
<Ermine> Crap
<heat> (or it mistyped and typo'd again? :v)
<pog> in the meantime the SEC and the CFTC are looking at him for market manipulation for dogecoin a few years ago
<pog> so he's doing another pump-n-dump
<heat> if you do market manipulation twice, the SEC get confused and stop investigating
<Ermine> I wonder if some airstrike is looking for him
<heat> damn you really did read the communist manifesto like you said a few days ago
<pog> the SEC doesn't have a case for that one, dogecoin isn't a security
<pog> (allegedly)
<Ermine> not really
<heat> feeling qt, might redistribute wealth later idk
<Ermine> I wanted to read it, but I have more interesting things to do
<zid> If I ever become CEO of a big company, I'm going to insert traps into the office budget
<zid> Like, £20/mo for staplers
<zid> and if you attempt to remove said budget, you're immediately fired
<zid> because you're clearly just a busybody trying to make people's lives worse for trivial numberchasing that hampers the ability of the business to function correctly
xenos1984 has joined #osdev
<heat> being fiscally responsible in tech companies is all about careful management of office supplies
<zid> Yea, not the hundreds of millions of dollars in servers
<zid> and offices
<zid> it's the staplers that are the problem
<pog> speaking of google
<pog> is it me or did youtube main page get worse recently
<pog> i had a carefully curated set of things i cared about and now it's vomiting up garbage
<heat> it looks and works ok here
<pog> or did i hatewatch the wrong thing
<heat> probably?
<zid> youtube had non-garbage vomit?
<pog> guess i need to wipe my watch history again
<heat> it's remarkable how well youtube works IMO
<heat> i restarted playing chess and suddenly half the front page was chess videos
<zid> youtube is currently on a kick of recommending me people *analyzing* videos by a person named.. jerma?
<zid> I've 'never recommend this channel' 30 of them so far
<zid> I still haven't even seen a video by this jerma person
<heat> jerma is a popular twitch streamer
<zid> which is precisely I would NEVER watch one
<zid> if you're popular on twitch I probably cannot stand you for even a millisecond
<Ermine> You people care about what youtube suggests you?
<zid> I can't watch project binky on a loop *forever*
<Ermine> I'm just going straight to the subscription list or to the search bar
<GeDaMo> I just use !yt through DDG
justmatt has quit [Quit: ]
<Ermine> ddg?
<GeDaMo> DuckDuckGo, a search engine
<Ermine> Ah
justmatt has joined #osdev
<heat> duck duck go is peak irc paranoidyness change my mind
<GeDaMo> It has many 'bang' commands to access other sites
<zid> youtube search is hilariously useless
<FireFly> I use ddg because it provides better results than google for years at this point afaik
<zid> ddg is google btw
<GeDaMo> I think it's more Bing actually :P
<Ermine> zid: re yt search: huh, usually I find what I want
<Ermine> ddg is a condom for other search engines
<zid> yup
<zid> and all search results are seo'd to shit, because the web is seo'd to shit
<zid> remember when google would de-rank pages if they did that? lol
<nikolar> ddg doesn't understand -term though
<zid> probably not, it was before heat was bor
<zid> born
<heat> bing is the best
<zid> bing might actually be better than google r
<zid> rn
<heat> i have no clue what you people are on about
<zid> (The results are the same bug bing has had 10 trillion fewer dmca requests so far)
<heat> google works fine for me
<zid> you've never used google in 2002, heat
<heat> i have not
<slidercrank> who discussed the transition from Libera to Discord yesterday? It was First April's joke
<zid> go search for like, a recipe in english, and tell me the first time you hit someone's blog or something explaining their actual recipe
<heat> partly because i wasn't alive for most of 2002
<zid> and not an seo content farm corporate website
<zid> google used to give results back like encarta or a library does
<zid> it'd find the *best* example of the information you wanted
<zid> that's why they added the quick results box at the top, because they realize their search results are fucking useless now
<heat> what's a "corporate website" in this case?
<bslsk05> ​www.thespruceeats.com: Classic British Fish and Chips Recipe
<zid> bro
<zid> it has ads inside its ads
<zid> and a studio
<heat> oh i don't see the ads
<zid> it's also web 2.0
<heat> do you not have adblock
<GeDaMo> uBlock Origin
<bslsk05> ​www.dotdashmeredith.com: Dotdash Meredith - America's Largest Digital & Print Publisher
<zid> That's who runs spruceeats
<zid> the fact you couldn't even *tell* says a lot about the media you're used to imo
<heat> i don't fucking know man
<heat> anyone can throw together a shitty generic web page
<zid> Like anybody would put anything on the web at all these days unless it was to earn brownie points with some random corp via web 2.0
<GeDaMo> I thought we were already on web 3 :P
<zid> web 3.0 is what you're on if you paid crypto to use web 2.0-
<heat> i'm on web 4.0
<heat> for no particular reason, i just am
<GeDaMo> Ahead of the curve :P
<GeDaMo> Or maybe that should be aheat of the curve :|
<zid> 2021: Google releases MUM - an AI/ML model that aims to reduce the number of queries a user needs to make by including results for related queries that it thinks you'll make next.
<zid> 2022 (May): An update to Google's search algorithm deprioritizes reference websites like dictionaries, lyric websites, and wikis while promoting video content.
<zid> 2022 (June): After years denying that a pages 'freshness' affects its ranking, Google increases its importance in the algorithm dramatically - reportedly affecting the ranking of 35% of search results.
<zid> If you want actual examples of google just trending into the toilet for if you actually want useful results
<zid> and not whatever fresh seo blogspam exists
<zid> We've sort of.. forked the web to discord, but we have no google for discord yet
<zid> it's more like 1996 where you had to bookmark all the sites you were interested in
<zid> and they had actual humans moderating them not social media executives
<heat> we need google plus back
<heat> that's exactly what we're missing
<GeDaMo> What about Google minus? Minus all the crap they added in the last twenty years :P
<heat> yeah, like staplers
bnchs has joined #osdev
<bnchs> osdev
<heat> hi! sorry but that's offtopic here
<bnchs> okay how about complaining about languages, or petting
<heat> yes and yes
* Ermine compains about b
<heat> i like compaining about my plain
<bslsk05> ​web.archive.org: Wayback Machine
<mrvn> C sucks. you can't even multiply to uint16_t without hitting UB.
<mrvn> two even
<bnchs> mrvn: skill issue
<heat> C is bad because B would've been based
<heat> what does C stand for? Cased? Cbased? doesn't really work here
<bnchs> chad
<mrvn> I think it stands for 3, as in A, B, C
<Ermine> cased
<mrvn> Is there already a D++ or what's the next extension to C++? C+++?
<goliath> ++C
<bnchs> D++ sounds like a battery size
<Ermine> c#
<mrvn> Is there a single letter left that isn't a language?
<mrvn> Ermine: taken
<heat> programming language people on a mission to make cup sizes and programming languages indistinguishable
<GeDaMo> D♭
<sakasama> Is there a DD language yet?
<Ermine> 'What language do you use' is hidden 'What's your cup size'
<sakasama> If nothing else, it's got logo potential.
<moon-child> somebody remind me, is there a gcc thingy for doing accesses wrt fs/gs?
<heat> yes
<heat> __seg_fs and __seg_gs
<heat> but they're not perfect
<heat> some weird limitations iirc
<moon-child> can I do it as an operation rather than a type?
<heat> wdym?
<moon-child> I want fs_load(ptr)
<moon-child> rather than __seg_fs T *var; *var
<heat> i don't think that's possible
<moon-child> I guess I could wrap it. __seg_fs T *tmp = ptr; *tmp
<bslsk05> ​www.kernel.org: 22.8. Using FS and GS segments in user space applications — The Linux Kernel documentation
<heat> in that case, just use inline asm
<moon-child> https://godbolt.org/z/Y5fvTfqWv stupid warning
<bslsk05> ​godbolt.org: Compiler Explorer
bauen1 has joined #osdev
<zid> That's the opposite of stupid though?
<zid> That's only valid if fsbase == 0, which.. would be dumb
<heat> cast to unsigned long and then to a segfs ptr i guess?
qookie has quit [Read error: Connection reset by peer]
Arsen has quit [Read error: Connection reset by peer]
Arsen has joined #osdev
qookie has joined #osdev
<moon-child> zid: valid in what sense
<moon-child> ?
[itchyjunk] has joined #osdev
<moon-child> it won't give the same answer, obviously, but if the point is to construct a load wrt gs...
slidercrank has quit [Remote host closed the connection]
slidercrank has joined #osdev
heat_ has joined #osdev
heat has quit [Ping timeout: 246 seconds]
joe9 has quit [Quit: leaving]
bnchs has quit [Read error: Connection reset by peer]
bnchs has joined #osdev
heat_ has quit [Remote host closed the connection]
heat has joined #osdev
tiggster has quit [Ping timeout: 260 seconds]
heat has quit [Read error: Connection reset by peer]
heat has joined #osdev
sinvet has quit [Ping timeout: 268 seconds]
goliath has quit [Quit: SIGSEGV]
<ddevault> now we're getting somewhere https://l.sr.ht/ISsV.png
bnchs has quit [Remote host closed the connection]
Vercas6 has joined #osdev
heat_ has joined #osdev
xenos1984 has quit [Read error: Connection reset by peer]
heat has quit [Read error: Connection reset by peer]
epony has quit [Ping timeout: 268 seconds]
epony has joined #osdev
xenos1984 has joined #osdev
goliath has joined #osdev
danilogondolfo has joined #osdev
slidercrank has quit [Quit: Why not ask me about Sevastopol's safety protocols?]
troseman has joined #osdev
heat_ is now known as heat
ThinkT510 has quit [Ping timeout: 268 seconds]
<heat> ChadGPT, linux has new patches on -next to make a bunch of different types of page faults not grab the mmap lock
<heat> so it should SCALE
<heat> or as you would put it, it should get UNPESSIMIZED
<ChadGPT> what locks *does* it take tho mofer
<ChadGPT> for example freebsd has patches to skip some of the "mmap" locks as well for almost a decade
<ChadGPT> and manages to suck anyway
<ChadGPT> so ya know
<ChadGPT> were.da.thread
<heat> it takes a per-vma lock
<heat> i don't know where "da thread" is but "da thread" i saw (that adds on top of this) is "[PATCH 0/6] Avoid the mmap lock for fault-around" by willy
troseman has quit [Quit: troseman]
<ChadGPT> > Several people have volunteered to run benchmarks on this, so I haven't.
<heat> ah, the original thread should be named around "[PATCH v2 00/33] Per-VMA locks" (by suren) so search on lore.kernel.org for that
<ChadGPT> i also did not report any results
<ChadGPT> like off mate
<bslsk05> ​lore.kernel.org: [PATCH 0/6] Avoid the mmap lock for fault-around - Matthew Wilcox (Oracle)
<heat> mjg friend
<ChadGPT> ok let's try the original
<heat> it's like, obvious you'll get some performance improvement
<ChadGPT> :)
<heat> you just don't know how much, but this is the obvious step for goodness
<ChadGPT> no, you very well may get a slowdown
<heat> how?
<ChadGPT> it is a classic artifact in multicore. it looks like this:
<ChadGPT> consider a bottleneck which degrades af as more cpus contend on it
<ChadGPT> it very well may be that they have on in the general area
<ChadGPT> conention on mmap lock may be hiding it
<ChadGPT> you whack that, you scale worse until you fix the former
<ChadGPT> this sad fact was used the other way in the past: people would add a lock for some cpus to contend on to reduce contention on a global lock
<ChadGPT> for real
<ChadGPT> that is to say, yes, you probaby want this patchset but it may be not in isolation
<ChadGPT> that aside, it very well may be there is something stupid going on in the area which would be immediately seen with a bench
<ChadGPT> all in all shit prep for not having one
<ChadGPT> if i was a linux dev i would respond very negatively over there
<heat> the og thread has a bunch of data from google
<ChadGPT> that sounds ok
<heat> good improvements in stuff
<ChadGPT> the thread i found does not
<bslsk05> ​lore.kernel.org: [PATCH 00/41] Per-VMA locks - Suren Baghdasaryan
xenos1984 has quit [Ping timeout: 248 seconds]
xenos1984 has joined #osdev
<ChadGPT> > Apps with high number of threads (~100) launch times improve by up to 20%.
<ChadGPT> llvm devs may try to use it as an argument for not regularing thread count
<ChadGPT> that said solid win, but would be nice to see a fg
<heat> hide it from maskray :P
<ChadGPT> some guy claims windows is doing better here
<ChadGPT> for real
<ChadGPT> genuinely curious whaht's going on there
<ChadGPT> personally i don't believe the guy
<heat> i'd like to see a will-it-scale on the patch set cuz i assume the gains on a stupid synthetic bench are going to be even better than an android 8-core app launch thingy
<heat> ChadGPT, dtrace-for-windows!
<bslsk05> ​reviews.llvm.org: ⚙ D147493 [ELF] Cap parallel::strategy to 8 cores when --threads= is unspecified
<ChadGPT> heat: 8 core app launch timing is am icrobenchmark
<heat> "How about turning it into a warning instead:" god fucking damn it no
<heat> nah, it shows real world gainz
danilogondolfo has quit [Ping timeout: 255 seconds]
<heat> not "I spun up 60 threads that all mmap and look at what happened [SHOCKING]"
danilogondolfo has joined #osdev
* pog spins up
<ChadGPT> heat: burpens, not saying no
bauen1 has quit [Ping timeout: 250 seconds]
<ChadGPT> heat: i also note the L person claimed linux does not contend on locks anymore
<heat> "Thought experiment: LLD2"
<ChadGPT> heat: modulo microbenchez
<heat> is this tschuett guy on coke
Left_Turn has joined #osdev
<ChadGPT> lemme show you a loller
<bslsk05> ​github.com: mold concurrency issues with ninja · Issue #117 · rui314/mold · GitHub
<ChadGPT> > Mold works great when compiling for a single target binary, but when we do a complete build repo wide (ninja with no target), things start to grind to a halt toward the end of the build when concurrent linking is occurring
<ChadGPT> mold is a linekr written by the same person who worked on threading for lld
<ChadGPT> and is apparently similarly threadspawn-prone
<ChadGPT> and who fucking knew, when you spawn a bunch of them perf goes to shit
<heat> yes
<heat> the standard way to handle this in big projects is to create a job pool for linker stuff
<geist> wait who is ChadGPT
<heat> it's matthew garrett
ThinkT510 has joined #osdev
<ChadGPT> must be a solaris lover
<heat> famous linux developer
<ChadGPT> given his t-shirt
<geist> oh. okay that makes sense. kinda confusing
<heat> yes
<heat> it is
<ChadGPT> i like that it was not obvious though
<ChadGPT> apparently i'm not *that* singleminded
<heat> it's very clear from the conversation and the way you type
<ChadGPT> see above
<geist> well, i was just reading backlog and suddenly chadgpt was there as if they owned the place, so i assumed it was someone regular
heat is now known as mjg
<mjg> pessimal
mjg is now known as heat
<ChadGPT> :)
<pog> :)
<heat> it's incredibly bizarre that IRC lets you effectively impersonate a registered nick
<ChadGPT> nick registeratino et al is a 3rd party addition so to speak
<ChadGPT> not an integral part of the protocol
<ChadGPT> irc is just a product of its time
<heat> yea but what's the point of registering nicks if I can switch to yours and start speaking like I was you
<heat> sure, maybe some stuff in the whois isn't yours. doesn't change the end result
<Ermine> pog: may I pet you
<ChadGPT> heat: it is most definitely not optimal
<ChadGPT> that is to say i'm not supporting it, just giving some background how this happens
<pog> Ermine: yes
<heat> anyway, as I was saying: big projects usually already need to handle this due to LTO linking
<ChadGPT> i have no idea how (un)easy would it be to sort it out
* Ermine pets pog
* pog prrr
<heat> even if you --threads=1 on your LDFLAGS for all eternity, as soon as you enable LTO you start having serious difficulties doing concurrent linking
<ChadGPT> i'm awre, i commented on it as well
Ermine is now known as gog
<ChadGPT> the notion that an embarassingly parallel thingy should blindly spawn $BIGNUM of threads is most *pessimal*
<ChadGPT> one step at a time
gog is now known as Ermine
<ChadGPT> i would rename myself to heat and say sortix > onyx, but i'm on a different channel on this network, so...
<ChadGPT> pretend i did it
<Ermine> heat: maybe some chan mode can prevent imposters from posting?
<nortti> oh, os is heat
<heat> huh?
<nortti> *so
<nortti> < ChadGPT> i would rename myself to heat and say sortix > onyx, but i'm on a different channel on this network, so...
<heat> yeah i just switched my name temporarily on like 10 channels
<ChadGPT> that is very inconsiderate
<heat> boohoo cry boomers move to discord
<ChadGPT> millenial, thank you very much
<ChadGPT> btw heat, do you know what does not scale? ctfmerge from SOLARIS
<ChadGPT> used for dtrace
<ChadGPT> works over the freebsd kernel in 12 seconds with 230% cpu usage
<ChadGPT> accounting for ~23% of total build time
<heat> what's ctfmerge?
<heat> i saw it in buildkernel but have 0 clue
<ChadGPT> DTRACE MOTHERF^Whas a special machinery for managing c types
<ChadGPT> as in struct layout
<ChadGPT> thanks to that you can for example pretty print
<ChadGPT> figuring out what's up with the slowdown may be a nice little project
<heat> you're not baiting me into sysctl levels of depression again
<ChadGPT> (:
<heat> anyway linuks does it with cpp warcrimes
<ChadGPT> solaris code is normally a pleasant read, assuming you are oblivious to performance realities
<heat> i looked at their trace event macro thing and mang that was confusing
<geist> oh no not again
<ChadGPT> aight
<ChadGPT> geist: does fuchsia have regression tests for the scheduler? and if so, are they usable on not-fuchsia?
<geist> yes and probably not
<ChadGPT> :)
<heat> tbf a good few tests are mostly posix
<ChadGPT> can you point me at the tpath
<geist> i get the sense that you dont actually care about the answer
<ChadGPT> what?
<geist> i can no longer trust that you are actually serious or not
<geist> at least this morning, 10 minutes after i woke up.
<ChadGPT> one open source project over there is an active discussion about a scheduler
<geist> over there?
<ChadGPT> with several long standing issues reported against it
<ChadGPT> s/there//
<ChadGPT> i wnated to patch it up for experimental purposes, but lack of a test suite makes it quite a problem
<geist> ah
<heat> do yall have good tracing on the scheduler?
<heat> that's probably like step 1
<ChadGPT> i checked what linux folks do when they patch cfs
<ChadGPT> ... they run hackbench and similar
<geist> 'build linux' heh
<heat> they run a bunch of stuff sometimes yes
<ChadGPT> which i'm afarid is not what i'm looking for
ThinkT510 has quit [Ping timeout: 276 seconds]
<heat> regressions are found by RUNNING THINGS
<heat> so if you can get some freebsd users you're probably in for a treat
<ChadGPT> i love running things. how about a list of things which are known to stress the scheduler in *different* ways
<geist> we have a bunch of built in unit tests for the scheduler, then there's a lot of microbenchmarks and overall benchmarks that we look for regressions
<ChadGPT> if you just random stuff, you are very well just testing the *same* behavior
<ChadGPT> which does not help
<geist> there are some user space tests that look for scheduler regressions for sure
<ChadGPT> so show me where, i'll take a look
<heat> you also want to run multiple tests at once probably
<geist> i honestly dont know
<ChadGPT> maybe they can be stolen
<ChadGPT> heat: see my previous remark
<geist> or at least i can look, but i have a meeting in about 3 minutes
<geist> gotta talk riscvriscvirscvirscivriscvirscivricsivsrisccv
<ChadGPT> ok don't worry about it
<ChadGPT> maybe i'll prod you later
<heat> geist, in RUST????
<ChadGPT> why not ITANIUM
<ChadGPT> rust on itanium would be the shit
<geist> i was thinking of fiddling with sparc again. but that's another day
<heat> i think the usage of any C-like language ruin itanium
<heat> itanium is supposed to be used close to the metal man
<ChadGPT> do you know the netbsd slogan
<heat> you want to feel the hardware
<ChadGPT> > of course it ruins netbsd
<heat> "you can only use this if you were born before 1970"
<heat> or that yes
<ChadGPT> re ule, here is a funny bug: threads are hiking all over the socket
<ChadGPT> if they happen to be off cpu for a time
<ChadGPT> for example the postgres server
<bslsk05> ​cs.opensource.google <no title>
<heat> this looks very unportable and hard to disconnect from fuchsia's build sooo
<heat> glhf
ThinkT510 has joined #osdev
<ChadGPT> "a time" is not eons either
<ChadGPT> literally between serving one query and the next it loses affinity
<ChadGPT> when they keep coming
xenos1984 has quit [Ping timeout: 260 seconds]
<heat> is the socket a single NUMA domain here?
<heat> i don't see a problem in that if it's just travelling around the NUMA domain itself
<heat> switching domains... yeah, that's a problem
<ChadGPT> there is a massive problem because normally the threads are powered down
<ChadGPT> walking around thus wakes them up and suffers from it
<ChadGPT> i literally get a speed up from pinning the sucker
<ChadGPT> the machine is otherwise idle
<ChadGPT> there is 0 reason to move postgres around, it happens because the code is /pessimal/
<heat> why does it move around?
<heat> rebalancing decision?
<ChadGPT> it hinks there is not enough time spend to warrant claiming there is "affinity"
<ChadGPT> so it walks
<ChadGPT> even though there is no reason to walk anywhere, affinity or not
<ChadGPT> as i tried to explain previously, the code has numerous problems
<ChadGPT> some of which are inherent to the ideas
<heat> wjat
<ChadGPT> what what
<heat> why is what where
<ChadGPT> can you degenz this question
<heat> why does your scheduler do *time based* decisions and forcibly migrate CPUs instead of keeping them on the same pcpu runq
<ChadGPT> GEEZER mofo
<ChadGPT> did i mention the code was written by a geezer?
<heat> i don't think the original O(1) scheduler worked like this
<heat> (from lounix)
<heat> poor jeff, he's not a geezer
<ChadGPT> mate, plz
<ChadGPT> shit talk aside, there are significant problems, quite numerous, and a test suite would be great
<ChadGPT> still on the lookout for on
<ChadGPT> e
<heat> if I were you, i'd take intel's ltp bot and run it a bunch over commits
<heat> if it reports a regression, you take a look at it
<heat> most tests it does are probably relatively portable anyway
<bslsk05> ​intel/lkp-tests - Linux Kernel Performance tests (is fork /122 forks/208 stargazers/GPL-2.0)
<ChadGPT> starts with hackbench
<ChadGPT> ;0
<heat> yeah but like, getting this operational and running it over freebsd commits (and crying to the mailing list on regressions) is probably step 1
<heat> step 2 would be getting some more realistic workloads, step 3 would be getting people to try your shtuff out and complain on the ML for regressions
<ChadGPT> i do agree this would be usable
xenos1984 has joined #osdev
<ChadGPT> i don't necessarily agree it tests the stuff people compplain about
<ChadGPT> and iwas hoping for more of it, without having to ocde it up
<ChadGPT> oreven come up with it myself
<heat> step 1 would probably be super helpful to you for all sorts of scalability stuff, and I assume a bunch of scheduler regressions may be visible on a bunch of tests
danilogondolfo has quit [Ping timeout: 265 seconds]
danilogondolfo has joined #osdev
Left_Turn has quit [Ping timeout: 260 seconds]
ThinkT510 has quit [Ping timeout: 268 seconds]
ThinkT510 has joined #osdev
slidercrank has joined #osdev
<ChadGPT> again probably worthwhile in general, but not necessarily worth the effort for the problem at hand
<ChadGPT> what would be worth the effort is a suite which guarantees stressing conflicting requirements
<ChadGPT> which would be my prio if one was to be found
pog has quit [Quit: Konversation terminated!]
<sortie> ChadGPT, please present your protective MBR for inspection
<heat> we have achieved comedy
<heat> you're safe from AI replacement, for now...
<heat> chatgpt is going to get a netflix special if it keeps this up
<GeDaMo> You're assuming it doesn't already have one :|
<heat> i was expecting the south park chatgpt episode to have some meta-joke where it would all be written by chatgpt
<heat> i was seriously disappointed
<ChadGPT> you watch south park?
<heat> yes
<ChadGPT> interesting
<ChadGPT> i thought that would be millenial
<nortti> it's still going, somehow, so I don't think it's that weird that younger ppl also watch it
<ChadGPT> 's what i'm saying :)
bauen1 has joined #osdev
<kof123> i skimmed the paper heat linked other day. it quotes linus saying they dont/didnt want a pluggable scheduler, so i believe that portion they didnt even try to get upstream
<heat> yes
<heat> but now upstream wants a scheduling class for schedulers written in ebpf sooooooooooooooooooooo
<kof123> ^^^ funny. it does seem to have an API, i wonder if someone could make something "compatible" for elsewhere besides linux
<kof123> more interesting to me, is even with the abstraction, i believe it claims less lines of code for all their samples versus the original
<kof123> may not be 1:1, but a nice example that abstraction can actually be less "bloat" sometimes (versus everyone for themself, repeating things)
<kof123> *each of their samples
gog has joined #osdev
<kof123> if you have a few x, abstracting is bloat. if you have more than a few ...maybe other way around
<heat> it's also very probable that they do not implement all the bells and whistles that the actual scheduler does
danilogondolfo has quit [Ping timeout: 250 seconds]
<kof123> im not sure i follow the application level. kernel can use one scheduler, a cgroup can use another, a process can user another (for threads?)
<kof123> so you have maybe 3 levels, each could be using different?
<heat> what application level?
<kof123> it mentions per-application policies
<heat> i think the general idea is that you as the sysadmin would use scheduler X if it worked better for your workflow, or scheduler Y, or whatever
<heat> cuz I don't see how "each process uses a new scheduler" could work, really
<ChadGPT> each process knows best how much cpu it needs, so it calls yield as appropriate
<ChadGPT> past that gtfo
<ChadGPT> give me moneyz
<heat> unless you'd use some POSIX SCHED_*-type composure, but I don't know how well the many schedulers could interact
<kof123> ok, that makes sense.
<ChadGPT> use cooperative multitasking
<heat> just use a single thread, single core
<heat> reject modernity
<heat> did templeos not have threads?
danilogondolfo has joined #osdev
<ChadGPT> i don't know what it had
<ChadGPT> it did not have rings
<ChadGPT> and i strongly suspect it had voluntary yielding only
<kof123> i think that video he tries to say maybe for games they'd each implement their own...so yeah
<ChadGPT> it did have multicore support though
<heat> multicore? too modern, hard reject
<ChadGPT> superscalar is also bullshit
* ChadGPT goes back to atari
<ChadGPT> 65 xe master race
<heat> out of order too
<heat> it's nuts
<heat> focus ON THE PRESENT
<heat> from google itself
<bslsk05> ​docs.google.com: Untitled spreadsheet - Google Drive
<ChadGPT> that one? i'm gonna have to check later
<ChadGPT> the cpu was supre primitive afair
<ChadGPT> wait that's memory footprint?
<heat> no, runtime
<heat> SUnreclaim and SReclaimable rows have the memory footprint
<heat> there are funny regressions that only pop up on amd or intel or arm
<heat> cpu caches and atomics are funny
<ChadGPT> so here is a funny project
<ChadGPT> one can note there are slabs which are guaranteed to only ever be used from *NOT* interrupt context
<ChadGPT> consequently the allocation fast path for those does not have fuck with irq disablement or atomics
<ChadGPT> one frequently used cache like that is the namei one
<ChadGPT> for path lookups
<ChadGPT> albeit i have no idea how linux folk would react to that one
<ChadGPT> when i had a look during the zero on alloc debacle i found a lot bsdesque slowness
<ChadGPT> as in shit which does not have to be there
<heat> badly
<heat> you either write new kmallocs for that shit with whole separate codepaths (death by fire) or you add a new flag and probably kill any possible perf gain right away (death by drowning)
<ChadGPT> i'm not in the mood ot get into that one
<ChadGPT> one funny note tho is that there were people asking on the lists how come the namei zone is not excluded as is
<ChadGPT> from the mandatory zeroing
<ChadGPT> even from G
<ChadGPT> that was funny
<heat> so, lets zero all the allocs, except on those caches i really use
<heat> ...
<ChadGPT> you got some geezer mindset right ther mate, but we covered this last time
<heat> yeah totally man we should selectively disable hardening measures
<ChadGPT> :)
<ChadGPT> i'm going to leave it at that
diamondbond has joined #osdev
<ChadGPT> good news, i prodded bsd make person about ninja-compatible log
<heat> new linux ASAN builds will disable KASAN under all of kernel/ due to performance complaints
<ChadGPT> and the work is in progress
<ChadGPT> mate, i'm done with that subject, freel free to have whatever opinion you want
<heat> it's all about tradeoffs man
<ChadGPT> as i said
<ChadGPT> back to tracin' the builds
diamondbond has quit [Client Quit]
<ChadGPT> my toy variant already found funny problems and once more showcased the importance of checking what happened instead of handwaving
<ChadGPT> i had a suspicion what the problem is and it turned out to be bogus
<ChadGPT> thankfully i'm the profiling type
slidercrank has quit [Read error: Connection reset by peer]
slidercrank has joined #osdev
dutch has quit [Quit: WeeChat 3.8]
dutch has joined #osdev
Vercas6 has quit [Remote host closed the connection]
Vercas6 has joined #osdev
GeDaMo has quit [Quit: That's it, you people have stood in my way long enough! I'm going to clown college!]
frkazoid333 has quit [Ping timeout: 250 seconds]
goliath has quit [Quit: SIGSEGV]
Left_Turn has joined #osdev
slidercrank has quit [Ping timeout: 255 seconds]
bgs has quit [Remote host closed the connection]
frkazoid333 has joined #osdev
dormito has quit [Ping timeout: 265 seconds]
dormito has joined #osdev
Starfoxxes has quit [Ping timeout: 252 seconds]
foudfou_ has joined #osdev
foudfou has quit [Ping timeout: 255 seconds]
bnchs has joined #osdev
Burgundy has quit [Ping timeout: 246 seconds]
Left_Turn has quit [Read error: Connection reset by peer]
Matt|home has quit [Quit: Leaving]
zid` has joined #osdev
zid has quit [Ping timeout: 265 seconds]
danilogondolfo has quit [Remote host closed the connection]
Gooberpatrol66 has quit [Remote host closed the connection]
gildasio has quit [Quit: WeeChat 3.8]
gildasio has joined #osdev
gildasio has quit [Client Quit]