mircea_popescu: and in other news from the unexpected jungle, a magistral link affording costa rica access to the brazilian electricity market failed* earlier today, resulting in no power.
mircea_popescu: i don't mean, here where i am. i mean, in costa rica period. and nicaragua. and panama. toda la centroamerica, mang!
mircea_popescu: no power, no pumps (i live up on a hillside) and so i had the girls... fery water. from the pool, with ex-paper baskets repurposed as sacas, up the fucking stairs.
☟︎ mircea_popescu: it turned into a lovely teaching moment about the you know, historically principal expenditure of female calories. "that's what they did, all the way to 1800. lugged water. they still do in india."
mircea_popescu: i suppose i should provision a whole generating plant again.
mircea_popescu: asciilifeform those were in buenos aires. i didn't take along. all i got here is yhou know, inverters, batteries, stuff like that.
mircea_popescu: allows for a civilised shutdown rather than staying on indefinitely/
mircea_popescu: sometimes i wonder what you're thinking, i'm connecting from a different dimension or what,.
mircea_popescu: of course it still gets wet when it rains, and sandwiches still fall butter face down
mircea_popescu: and if you feel like spending a quarter mil or we on the generators you do and if oyu don't you don't.
mircea_popescu: nah, it's about what a serious setup costs. and if you do, might as well get serious.
mircea_popescu: asciilifeform ah yes, that'd be much easier. but no gas here, and im not gonna bury a gpl tank (bad soil, hillside).
mircea_popescu: whereas gasoline generator only really works well as a 50kw+ item
mircea_popescu: no, they do. the tiny shits suck. but the 10-20-50hp ones work well enough.
mircea_popescu: asciilifeform oh wait, we were talking at cross purposes. yes the gas ones are small.
mircea_popescu: i suppose i could break down and put in... SOLAR PANELS. dun dun dun
mircea_popescu: that's what i was thinking, rather than get a diesel, get a very large iron cell set instead.
mircea_popescu: more a matter of space. what's a cubic meter get me in terms of mj ?
jhvh1: mircea_popescu: 300 * 3600 / .48 / .48 / .61 = 7684426.229508197
mircea_popescu: esp if one gets a proper set rather than consumer prepackaged bs.
mircea_popescu: asciilifeform i wasn't even rthinking getting the panels too. just get batteries, charge from network
mircea_popescu: you know, "Even asciilifeform " dun work so well here, you're basically living on a satellite as far as most kitchens are concerned.
lobbes: hm damn. Was hoping it'd snarf both urls
lobbes: forgive the incoming spam
ben_vulpes: in re benchmarking, is 'perf' a reasonable thing to use?
☟︎ BingoBoingo: <mircea_popescu> whereas gasoline generator only really works well as a 50kw+ item << Biggest problem with gas for backup genset is doesn't store well
BingoBoingo: Unless you go full synthetic on the fuel and they why the fuck not drill for natural gas then
BingoBoingo: <asciilifeform> mircea_popescu: afaik there is no konsoomer nife. there are only industrial. << In UK "consumer" sets are being marketed for solar crowd
ben_vulpes: sina: got any better ideas for comparing program runtimes than perf?
sina: ben_vulpes: dtrace?
sina: I heard good things about systemtap but never used it myself
sina: ben_vulpes: what is wrong with perf for your usecase?
ben_vulpes: sina: i wouldn't know, is why i'm asking
BingoBoingo: Isn't dtrace that Sun Microsystems thing that came with Solaris 10?
sina: it's pretty awesome
sina: you can run it on fbsd
sina: systemtap is basically "dtrace for linux" I guess
sina: but again, I haven't used that one
sina: mircea_popescu: around? any time to play with gossipthing?
sina: ben_vulpes: can we roll back and start at the usecase?
sina: ben_vulpes: oic. and why not just using black box testing?
sina: e.g. "how long does it take to hash document of N bytes size in M bits hash" with varying N and M?
sina: is that all you want to measure? why not just use `time` then?
ben_vulpes: something something not great subsecond resolution or so the various reddits say?
ben_vulpes: obvious counterargument is that "don't bother with subsecond executions, dork"
sina: here is the thing, it depends on how anally you want to measure
sina: because, for example, python and lisp, probably most of the time will be spent in starting the runtime/interpreter than actual computation, unless you're doing larger sized stuff
sina: so if you really want super precise, apples <=> apples comparison, you would need to instrument performance on a per lang basis, no?
sina: of the main loop iterating through M
ben_vulpes: runtime startup is a cost of the program, innit?
sina: if I make an mpfhf daemon, then no
sina: that might be a fairer blackbox test?
sina: well, I dunno too much about lisp, does it "JIT" for long running programs?
ben_vulpes: i wouldn't keep a lisp runtime hanging around just on the offchance i want to hash things
ben_vulpes: i've no idea what you mean by that in this context
ben_vulpes: but extending from what i know of java's jit (not much), no. the whole file (at least in the tests i'm running) is compiled.
sina: for example, pypy is much faster than cpython for long running programs, because it Just In Time compiles
sina: same as LuaJIT vs Lua
ben_vulpes: faster in steady state runs or faster to compile?
sina: faster in the run because its no longer "interpreting"
sina: its reading something closer to native compiled code
ben_vulpes: buddy how do you think i've been comparing things?
sina: ben_vulpes: sorry. I am referring to pypy JIT vs python
sina: just as an example of "anything else?" re "depends!"
sina: <+ben_vulpes> runtime startup is a cost of the program, innit? <<
ben_vulpes: sina: how does the paste relate to the JIT thread?
ben_vulpes: "cython wouldn't know the input type without chasing pointers all over the place"?
sina: ben_vulpes: you asked what else "it" can depend on, where "it" == whether or not runtime startup is a cost of the program or not
sina: my point was, either you *really* care about evaluating the actual main loop, which is a fair apples/apples
sina: or you are OK with a blackbox, in which case can just use time and avoid calling it with small loops where the runtime startup cost dominantes `time`
a111: Logged on 2017-07-02 04:33 ben_vulpes: no i do intend to black box it
sina: black box doesn't have to be invoking from CLI each time tho, you could write a daemon around each impl and measure how long it takes to return a value
sina: anyway, it does sound like `time` should be fine
ben_vulpes: adequately 'apples' from my pov; not particularly interested in imaginary performance comparisons of subsets of compiled programs
sina: it does sound like lisp is doing something JIT-like, except you can "re-JIT" at any time during execution?
sina: ben_vulpes: did you use sbcl the other day when you mentioned golang impl was faster than lisp impl?
sina: cos that'd be pretty interesting
ben_vulpes: definitely has hooks for disassembling a given function, so it would be nice if it also compiled *to* asm
sina: well, I guess lets see how the benchmarks play out over a larger dataset, maybe it evens out over a certain bitlength or bytesizer
ben_vulpes: well who knows, who'm i to make guesses like that
ben_vulpes: but i am definitely interested to see how performance plays out on large sets
sina: ben_vulpes: will you include pypy?
sina: ben_vulpes: I am about to head out the door so currently not the best time, but if it would help in anyway I can donate some compute to the effort
sina: can leave me a note with anything you require
ben_vulpes: i'm well supplied with compute tho, thx
sina: I am out. hope all have a wonderful day
mircea_popescu: ben_vulpes or you could just instrument your impl to read time at start and end ?
ben_vulpes: you mean start and end of actual hashing routine?
ben_vulpes: not "unix tool as it may or may not be used in the future"
ben_vulpes: had like five followups, all of which are probably answered by "this is probably one of those things worth doing rigorously"
ben_vulpes: well if i time just the hash impl it does squeak in under the go implementation
BingoBoingo: Your lawn? Compost. Don't mulch your lawn, it needs to breath.
☟︎ jhvh1: BingoBoingo: Bitstamp BTCUSD last: 2416.74, vol: 10266.02584088 | BTC-E BTCUSD last: 2358.591, vol: 2944.95989 | Bitfinex BTCUSD last: 2333.4, vol: 14881.3570013 | BTCChina BTCUSD last: 2543.63455, vol: 7386.44530000 | Kraken BTCUSD last: 2397.731, vol: 4991.08122316 | Volume-weighted last average: 2402.67930284
ben_vulpes: sina if you can get your implementations to print <execution_ms>\n<hash> that'll save me a bit of fiddling
☟︎ a111: Logged on 2017-07-02 07:56 ben_vulpes: sina if you can get your implementations to print <execution_ms>\n<hash> that'll save me a bit of fiddling
a111: Logged on 2017-07-02 06:06 ben_vulpes: why disregard runtime startup time?
a111: Logged on 2017-07-02 05:05 ben_vulpes: sbcl lays down asm?
a111: Logged on 2017-07-02 03:58 ben_vulpes: in re benchmarking, is 'perf' a reasonable thing to use?
a111: Logged on 2017-07-02 13:01 asciilifeform: imho oughta be hexascii like earthlings use
ben_vulpes: but if you'll excuse me, i'm going to go make a hash of breakfast
a111: Logged on 2017-07-01 23:36 sina: if you write a systemd unit file with "User=0day", it launches the process as root. Pottering sez: "not a bug"
a111: Logged on 2017-07-01 23:52 asciilifeform: and nao bernstein, henninger ( this is what, 3rd paper since she was attached to him ) 'unhappened and rehappened' it
mircea_popescu: sina "The Bitcoin network has more than 6,000 nodes," << lost interest at that point.
mircea_popescu: and this isn't just mp being hoity toity. the point here is that the sort of superficial schmuck who imagines bitcoin has 6k nodes, is also the superficial schmuck who imagines if bitcoin is framed through usg owned internet, that'll "just oiccur". it won't just occur, the same day there's a nuclear blast on capitol hill, no questions asked.
mircea_popescu: historically, the best way to "inexplicably" die suddenly was to attempt to attack groups of strictly selected, very determined, technologically superior people. bitcoin is no exception, whatever the hallucinations of the "we are talking about it therefore involved in it" crowd may show.
mircea_popescu: (you are aware, yes, usg vulnerable to nuclear blasts, latest studies show ?)
a111: Logged on 2017-07-02 07:11 BingoBoingo: Your lawn? Compost. Don't mulch your lawn, it needs to breath.
mircea_popescu:
http://btcbase.org/log/2017-07-02#1678479 << to my eye the worst part of it is that it's very badly drawn. a) about half of the Y space is actually used, which is terrible. b) all the same color, they melt together, can't tell apart. can use color gradient ? (yes, on blue, not on red, can't see red).
☝︎ mircea_popescu: but other than that, looks like exponential on mlen and perhaps linear on hlen ?
mircea_popescu: kinda badly chosen cutoffs too, i don't specifically care re diff between 40 byte and 70 byte message. make it log on that side and do 16, 128, 1024, 8192 and 65536 byte messages, for 32, 256, 2048 bit hash lengths as a standard of testing.
mircea_popescu: asciilifeform i can't really visually saw that appart, but looks like it's a hlen ** b mlen or such.
mircea_popescu: asciilifeform useful for different things. apparently all of modern computing comes to "adjust your expectations". what do you need 1gb codebases for ?
mircea_popescu: vpatches seem historically to go about 512 - 65535 bytes or so
a111: Logged on 2016-12-24 01:02 asciilifeform: incidentally, since (to borrow the lament of turing's school headmaster) 'the room already stinks of mathematics', i'll share a tidbit that i promised folx some half year ago and promptly forgot:
mircea_popescu: and in other lulz, #trilema OODA loop : "hey, make an X" "what kind an X ?" "JUST MAKE AN X!" *picks arbitrary params a through w, makes such an X. "here you go" "o cool, now set b to this and q to that, link l to k and make c double d" "here." "holy shit the submarine now flies! and lays eggs! good job man!"
mircea_popescu: basically, there's a large number of perfectly useful applications for 64kb capable hash. and upon examination it may be discovered that larger sizes not supported is not a bug
mircea_popescu: or other things. and if you don't must, you FUCKING DIDN'T NEED THE GB.
mircea_popescu: large part of usgization of normal processes. "oh, does your msg app support VIDEO ?" bitch, i don't want to watch overweight dudes with their cats braying into a mic.
mircea_popescu: "does it at least support unicode ?" "no. you may not teach reading to arabs, it's a sin."
mircea_popescu: this is computationally worse than mpfhf though. imagine, nextprime(todays log).
mircea_popescu: this aside ; i'm kinda loath to mix rsa in both padding and encryption. for all anyone knows they resonate
mircea_popescu: anyway -- if you're making both the payload and the hash on the same machine...
mircea_popescu: asciilifeform it's well known, i had conversations re this in 2012. prolly can fish out quote.
mircea_popescu: this incidentally is a very undiscussed topic, suspiciously. what is the effect of generating BOTH the padding for a message and the key that's used on the same... historical debian / kochatron /etcv
a111: Logged on 2015-03-31 02:52 asciilifeform: i will now take the liberty of calling the hypothetical machine 'freyacopter'
a111: Logged on 2017-07-02 15:36 asciilifeform: btw ben_vulpes your mphash seems to use some shitlibrary that 1) i dun have 2) won't install via quicklisp
ben_vulpes: yes this refrain does ring a few bells
ben_vulpes: i will probably just implement the slice that i actually need
ben_vulpes: in other news, 65536 byte message, 256 bit hash took some 2.47 hrs