log☇︎
209800+ entries in 0.123s
asciilifeform: i assume he 'assumed that asciilifeform knew' ...
asciilifeform: and did phf bother to mention the public existence of src ?
a111: Logged on 2016-05-12 14:42 asciilifeform: (either that or the 'snap4' emulator source code)
phf: your approach to sourcing this info is by googling, while actually getting in touch with people who might know is derided as "whispering". while the content's been published and public since forever, those who follow along presumbly knew since then ☟︎
asciilifeform: yeah but this is a new low.
asciilifeform: google, for instance, managed not to find it ON SHITHUB
asciilifeform: (i came back to it regularly, whenever didn't feel like working on anything else)
asciilifeform: if some unknown d00d had not written to me last night, even now i might be doing it ☟︎
mircea_popescu: dude that is the saddest story...
asciilifeform: without knowing that the motherfucking source IS PUBLIC ?
asciilifeform: phf, incidentally, do you know that i blew MONTHS, if you add it up, possibly most of a year of life, sawing open 'snap4' genera in ida ? ☟︎
Framedragger: ~maybe up for it but *that*'d have to wait till later
Framedragger: ...yeah, i think that the proper way to do it then is to take entire disk, populate it with things to a high degree and (somehow) with enough spatial dispersion, and benchmark, and restart entire thing between benchmarks.
asciilifeform: is all you will ever need to drive the kbd (which kbd? EITHER of the 2 that they made, i have'em both here, and though their design differs electrically, they both obey this protocol )
mircea_popescu: Framedragger well you pared it down to ~2 caches, not so bad.
a111: Logged on 2017-03-06 13:10 Framedragger: (just for posterity, other metrics say that consumer ssds seek average may be ~3ms.)
Framedragger: ah i noted this myself and forgot, http://btcbase.org/log/2017-03-06#1622466 ☝︎
a111: Logged on 2017-03-11 00:02 asciilifeform: because motherfucking 'people in the know' whispering like little girls
mircea_popescu: http://btcbase.org/log/2017-03-11#1624943 << can't argue with his point there. ☝︎
Framedragger: right, yeah, but the (really) random seeks.. i hoped to tumble it a bit at least
asciilifeform: the worst-case is probably closer to 'reality on the ground' than the avg.
Framedragger: (oh actually variance higher, too)
asciilifeform: Framedragger: that's still below seek time of the best ssd, you're reading from cache.
asciilifeform: can i download phf's mac-patched, actually-builds genera somewhere ? or do i have to knock on a naugahyde-covered door in the bar from lsl and whisper 'ken sent me' and knock 3 times..?
asciilifeform: because motherfucking 'people in the know' whispering like little girls ☟︎
phf: amusingly enough genera's clx is missing some x code for rendering bitmaps. meanwhile clx got ported out, worked on by a dozen of different teams, gender pronounced and ~still~ that code is missing, with the same disclaimer
asciilifeform: (i reverse-engineered the kbd, pretty sure was the first to publicly do so and post on www, you can build converter)
asciilifeform: phf: yeah i'm not sure why a xl1201 owner would even need the console
mircea_popescu: it has the distinction of being fashioned ~entirely out of police blotted / da filings verbatim.
phf: no, just haven't shipped it. i've been waiting for some friends to do west coast/east coast drive, but those always seem to NOT happen when you actually need them. i can boot it to do remote x11 though, was configured with the assumption that it will boot blind
phf: no no, i'm missing console at the moment
Framedragger: i must write a short comedy screenplay for how discussions develop in #trilema. "i want to take a picture" ... ... ... [intense calculations of incident gamma rays to reclaim lost pixels in images] [furious rehash of late renaissance representationalism]
mircea_popescu just looked, he is drawing 3.5 kw with his boxen. this is before ac etc.
asciilifeform: phf: aha. doesn't sound like a jet turbine either
asciilifeform: the box i'm sitting in front of, draws 300w. this is not much.
mircea_popescu: save the planets alf!
asciilifeform: 'power management' is for the birds.
asciilifeform: ( my fpga boards, the nicer ones, DO in fact !! )
asciilifeform: and it bugs me that the mobo dun have a jack for a rubidium clock
asciilifeform: (i measured. and you, also, oughta measure, this is the kind of thing to be aware of in a well-run household)
asciilifeform: within crystal's temp variation.
asciilifeform: !! THROW IT OUT !!
asciilifeform: and cannot be turned off,
asciilifeform: if this happens on your box,
asciilifeform: 'When Intel first invented the TSC it measured CPU cycles. Due to various power management features "cycles per second" is not constant; so TSC was originally good for measuring the performance of code (and bad for measuring time passed). For better or worse; back then CPUs didn't really have too much power management, often CPUs ran at a fixed "cycles per second" anyway. ...'
mircea_popescu: steal profiler timer code lel
asciilifeform: Framedragger: link to who proclaimed 'invalid values' wtf
Framedragger: asciilifeform: something about needing to discard 'invalid values' with rdtsc (even when set up correctly - apparently best to 'pin' particular cpu, etc etc..) oh god.
a111: Logged on 2017-03-10 23:27 asciilifeform: mircea_popescu: aha, i started at one point to do it, and realized 'wtf why'
phf: http://btcbase.org/log/2017-03-10#1624795 << fwiw i have one written. it can do an equivalent of pgpdump, but knows only a subset of packet types. if there's any interest i can drive it towards a specific goal ☝︎
asciilifeform: (if you want to find out what's in yours, you can disasm your bios, can be quite enlightening)
asciilifeform: ( it is handling smm routine many times per second )
asciilifeform: this is why it is a lost cause to try to do high precision profiling on a laptop
Framedragger: (vs. those other options there)
asciilifeform: (cpu will stop to do ??????, maybe pack key logger buffer for later monthly upload to obummer, and undetectably, but rdtsc counter still ticks, it is lowtech)
Framedragger: asciilifeform: i thought that's why folks use CLOCK_MONOTONIC? i guess the irony is that it's not..monotonic in the end, still. :(
asciilifeform: btw if you have a 'modern' comp, you will also have bizarre variation in wall clock timings because of smm idiocy
mircea_popescu: he's right too, that's how profilers time also.
Framedragger: ..but if one wants to measure fs performance, he's stuck with syscalls.
mircea_popescu: still, on contemplation, hard to argue against rdtsc
asciilifeform: where in this mix do we get dma tho.
asciilifeform: mircea_popescu: no, whole point is to copy from bucket a to b w/out using cpu
asciilifeform: it resets on coldboot and increments with every tick thereafter
mod6: <+BingoBoingo> Sorry to hear mod6, keep coming back <+asciilifeform> aha, hats off to mod6 << thank you, Gentlemen.
asciilifeform: rdtsc is the ticket, it is how profilers time, and the only timer that is really worth twopence on x86.
Framedragger: i actually did check what was available before deciding on clock measurement yknow. but yah, need to try rdtsc
mircea_popescu: they are blocking aren't they
Framedragger: incrementor where, in another thread so that one may have more context switches for fun? those calls are blocking..
mircea_popescu: better clock than ~anything the kernel exposes, is the sad truth\
a111: Logged on 2017-03-06 17:22 mircea_popescu: the guys did actually splendid work, read the paper, worth it.
asciilifeform: if it dun run at a constant rate: a) adjust your bios b) if fails, Throw it out!! ☟︎
Framedragger: but yah fair enough may as well try
a111: Logged on 2016-09-14 13:28 asciilifeform: http://btcbase.org/log/2016-09-14#1541639 << not only is this true, but you won't be seeing scientifically accurate nanosecond timing in a konsooomer box at all. the physical clock is not up to it.
Framedragger: and alf responded to me then, actually - http://btcbase.org/log/2016-09-14#1541702 ☝︎
asciilifeform: if your cpu dun have rdtsc, throw it out.
a111: Logged on 2016-09-14 12:01 Framedragger: "rdtsc is not guaranteed to be available on every CPU, or to run at a constant rate, *or be consistent between different cores.*" (emphasis mine). `get_cycles()` is recommended, but from cursory look it seems that on some architectures it uses rdtsc internally? madness.
asciilifeform: it's just a register that increments with every tick of the main clock.
asciilifeform: literally, it dun get no better on x86, than it
mircea_popescu: no no, where the fuck is it
Framedragger: ah that i've heard of. not without its problems iirc
asciilifeform: Framedragger: try rdtsc
Framedragger: what do you suggest, time()
Framedragger: now they gonna talk about how one cant measure anything and need phuctor-made superclocks. kk. sure. but this is as accurate as it gets, sir
mircea_popescu: Framedragger consider using the recently discussed clocking method
asciilifeform has thought about installing a rubidium clock
Framedragger: allegedly this is what folks use for high precision profiling. i checked and wrote trivial version of that. but yah, clock_gettime()
asciilifeform: mircea_popescu: i hate to break this sad noose, but nothing on a konsoomer pc is accurate to ns
Framedragger: struct timespec start_time;
Framedragger: struct timespec timer_start() {
mircea_popescu: i do not trust his clock ; seems to be accurate within a few ms at best.
asciilifeform: mircea_popescu: his fopen() is smaller than a princely ssd's seek time. so thereby i could tell, his measurements had cache in play
mircea_popescu: time_elapsed_nanos = timer_end(time_init); << trhis is ns precision now ?
asciilifeform: aha, hats off to mod6
BingoBoingo: Sorry to hear mod6, keep coming back
asciilifeform: and these outliers are always caused by a) interrupt b) cache miss
mircea_popescu: ah shall get to it
a111: Logged on 2017-03-10 21:33 Framedragger: http://btcbase.org/log/2017-03-10#1624229 << for posterity, re. those last stats, relevant time-measurement c snippet for reference: http://wotpaste.cascadianhacker.com/pastes/NxLwl/?raw=true
asciilifeform: mircea_popescu: he posted the method, in the end of the thread, http://btcbase.org/log/2017-03-10#1624601 ☝︎
mircea_popescu: and what the fuck caused that outlier.
mircea_popescu: fopen() times given 100000000 iterations: min = 1761 ns, max = 1506074 ns, avg = 2326.51 ns, << holy shit what.