15400+ entries in 0.118s
mircea_popescu: asciilifeform something like : when called, procedure
a increments global flag x and if global flag x is even calls b ; when called, b increments global flag y, and if global flag y is even calls
a else calls c ; c increments both x and y.
diana_coman: perhaps that's just because too few loops; I'll report back when I have the numbers though it might take
a while
a111: Logged on 2019-02-12 14:13 asciilifeform:
http://btcbase.org/log/2019-02-12#1895234 << ffa uses exceptions strictly as 'fucking stop whole program (and if it's running on
a micro, whole machine, and flash 'dead!' lamp) right nao!' , so won't impact. my understanding is that it'd impact only speed of the ~exceptions~, longjump is slower cuz it crosses pages -- cachaistically.
diana_coman: asciilifeform, that was just the 3 loops (
a,b,c); over 1000 runs, the avg were similar with and without longjmp i.e. 0.46744 without and 0.46754 with longjmp; atm running the full version aka
a-v and that hasn't yet finished
a111: Logged on 2019-02-12 08:00 diana_coman:
http://btcbase.org/log/2019-02-12#1895120 -> yep, that was precisely my ref when looking at Ada multi-threading and what support it offers; it actually reads
a bit better than the barnes' progr in 2012 but it's more focused, obv
mircea_popescu: see, cuz things flow
a certain way. "we want to include morons, retards and other bureaucrats" --therefore--> "smartphones" and "ntp" and so on.
mircea_popescu: seems to me self-evident that there's need for exactly two layers of exception handler :
a) our code fucked up, in which case end it all or else b) some ~item~ such as whatever,
a fg fucked up, in which case REPORT THIS TO ME, don't wait for it forever./
mircea_popescu: but really, it's just handler unrolling/inlining, depending how you look at it. ie, zcx is
a ~concept~, much like "unrolled loops" or w/e.
mircea_popescu: diana_coman in ~principle~ zero cost exception handling is this thing : ~instead~ of calling code when exceptions arise, you instead unroll all calls in place, where exceptions might arise. this way you don't get
a run-time penalty (because you paid for it in code space)
mircea_popescu: the most valuable (from
a timing perspective) loops are the innermost ones, because they get jumped in and out of hundreds of tyimes.
diana_coman: i.e. an exception handler, not necessarily
a raise
diana_coman: not
a big deal; reading here on the sjlj theoretically the biggest slowdown would be when there are some exception handlers so maybe I should add that to testing
mircea_popescu: i wanted something in there of
a little heft to make sure we're not being optimized or w/e.
mircea_popescu: well, someone else gets to rage in the logs for
a while.
a111: Logged on 2019-02-10 17:37 asciilifeform: will add to this also, that if yer thread is actually wedged, it will almost always be on acct of
http://btcbase.org/log/2019-02-08#1893811 , i.e. waiting for
a blocking unix i/o, and no matter what yer pthreads proggy is written in , c, ada, cobol, whatever, it will still become
a zombie, cuz unix is retarded.
mircea_popescu: nah, we need to test this properly, with
a macroscopically blocking item
diana_coman: so hm, if you have
a put_line and then the infinite loop, does that still work?
mircea_popescu: problem is you can't put
a delay 0 ~inside~ the only thing we fear, which is unix peripheral calls.
mircea_popescu: this is what i was coming to : do you have
a better approach to evaluating the putative sjlj runtime cost than the above thing diana's implementing nao ?
mircea_popescu:
a thing you keep re-serpenting. 64 bit string, w/e, starts as null
mircea_popescu: wrap it in
a few for and if clauses, something like like for(
a = 1;
a < 100;
a =
a + 1 ){ if
a is even then for( b = 1; b < 100; b = b + 1 ){ ... collector = serpent(collector) }}}
mircea_popescu: diana_coman do you have
a non-trivial (non-huge) ada that you could run once with sjlj and once with zcx in
a timing harness so we can get some data ? ideally something that takes 100-1000ms or so.
diana_coman: I read
a bit on that and it seems to me that it is meant to actually add ANOTHER "won't abort here" point so I don't quite see it; but yes, I'll try it anyway
mircea_popescu: diana_coman what happens if you actually put
a pragma Abort_Defer in the loop ?
mircea_popescu: just, i don't think it can be whipped into
a workable exception handling mechanism.
a111: Logged on 2019-02-12 03:54 mircea_popescu: that's the fucking cost of being
a raging asshole.,
mircea_popescu: diana_coman it looks like we'll end up with
a patched tmsr-gnat.
diana_coman: I suppose so far the options seem to be 1. maybe there's
a way to actually make it choose the sane abort model 2. change the idiotic "ignore the signal" part
diana_coman: but ftr when
a task is not in this sort of "can't hear you la la", there's no need for any wait, no
diana_coman: i.e. if anything, you can say that my test code should wait
a bit and then check
bvt: diana_coman: i agree; in the abort signal handler, there is
a snippet of code that ignores the signal (given ZXC exception handling model).
mircea_popescu: you know, it'd be grand if this were
a blog article rather than
a pastebin. odds are ima want to reference it later, and as
a factual matter i want ot reference "More precisely, one of the issues seems to be that abort seems to be delivered to the child thread after the check for 'thread aborted' has already been done" specifically even now.
mircea_popescu: bvt that's
a good point actually, the check comes too late in the current implementation.
diana_coman: hm, asciilifeform from what I see at
a quick glance in that s-taprop-linux__adb it actually calls pthread_kill ONLY if "abort_handler_installed" and that in turn seems set only if not some default state ? might be
a clue to follow perhaps, I haven't dug much deeper yet
phf: if any log reader is getting
a 404 not found, even if intermittent, please let me know. i was just getting it for
a couple of minutes, but i can't figure out if that's the actual situation on the machine or some russian dns problem
mircea_popescu: dmca requires someone to register
a claim, and they can actually be sued if it's fraudulent.
a111: Logged on 2019-02-12 01:34 asciilifeform: for total thread-completeness, there is
a workaround that works, but it is imho ugly ( ada 'interrupts' package ), i'ma post example if mircea_popescu et al ask.
a111: Logged on 2019-02-12 01:25 asciilifeform: i suspect this is gonna be
a '1-line' patch, to fix. q is where..
a111: Logged on 2018-10-26 02:14 asciilifeform: meanwhile, in gnat bugs : apparently ( and this is documented or mentioned nowhere ) : it is impossible to have
a Ada.Finalization.Limited_Controlled type ANYWHERE inside
a static library, unless it is generic all the way down (i.e. if the lib package is generic, any sub-packages must also be instantiated as generics )
mircea_popescu: wanna be
a man, then gotta be
a man. for example, wanna be
a restaurant maitre d', then you're stuck apologizing to the people that ordered 19 oz ny steak and got 1.5 oz cafeteria hoof cut. and so on. posturing brings with it the cost of sucking all the dick you earn the sucking of in the usual course of the business you're posturing with.
mircea_popescu: then when they fail to respond, they get
a default negrate.
mod6: Alright, well if the pictures are unnecessary, will just skip that part. About to hook up that 250Gb Disk to SATA2 and inflate
a fresh cunt(oo) on there.
trinque: there's of course
a chip on your motherboard which wants its own driver
mod6: It's strange because this particular box has like 10 USB ports on it. 2 in the front of the chassis, and like 8 in the back. I wonder if it's like
a special add-on thing, I was going to take some pictures for you all, but I need to get down there and do that yet tonight.
mod6: The other weird thing is that 'usb hub' as shown in the kernel.debug file. I do own
a USB hub, as I bought one to test multiple FGs at the same time, but it's been just sitting on my desk for weeks.
mod6:
http://btcbase.org/log/2019-02-11#1895003 << re: So I didn't ever use
a USB boot disk, I actually was just using the Live CD to do the chrooting/troubleshooting. But I did the `./bootstrap.sh` from the working gentoo environment.
☝︎ BingoBoingo: Yes account number is relatively short. This is
a small country with few accounts to fill the account number space.
BingoBoingo: So long as there is resistance to what Pantsuit means by deadnaming and clarity as to what the Republic means, they gotta expend some of their infinite hitpoints of idiocy fighting the sorts of socialists like Anglin who want
a different sort of socialist femstate
BingoBoingo: Still, there's
a benefit in having synonyms to erode their namespace
trinque: deadnaming eh. there's
a new one for me.
mircea_popescu:
a LARGE portion of why "computer security" is SUCH
a popular activity has to do with the profoundly african mentality of most... well, africans, to put it plainly.
a111: Logged on 2018-08-01 03:07 douchebag: Also the security firm I'm working on is expected to pull at least
a half million dollars by december