verisimilitude: The next program I write in this style will have less odd choices, simply because the problem resists them better.
verisimilitude: Note that's less odd and not fewer odd.
jonsykkel: dificult to compare minimalness of computation wihtout low levle inplemenation
jonsykkel: parsing indeed sux which is why in future when i have my own planet there will be auto enforced death penalty for breaking rule that data shud stay in machine format until displayed to user
crtdaydreams: What is a dulap?
whaack: crtdaydreams: http://logs.nosuchlabs.com/log/asciilifeform/2022-02-18#1079797 don't make this a self fulfilling prophecy
dulapbot: Logged on 2022-02-18 05:25:54 crtdaydreams: Just another fucking cancer in this hellhole that will ultimately contribute nothing.
whaack: crtdaydreams: i believe dulap was the original name of the box hosting s.nsa 's phuctor, and it later became the name of a machine with certain specs, but asciilifeform can elaborate
whaack: asciilifeform: btw http://phuctor.com/ will phuctor actually return?
whaack: crtdaydreams: regarding 'ultimately contribute nothing' .. why don't you start a blog or a project?
whaack: http://btcbase.org/patches <-- phf are you around? this is a great tool. i think that updating this site shoul be made automatic. there should be a way to submit a vpatch , and if it has a sig from the host's l1, then the vpatch is automatically submitted and the version graph is automatically updated
asciilifeform: whaack: i asked him repeatedly to give it a patch hopper, for yrs. then went to try to make clone but never finished.
dulapbot: Logged on 2019-11-17 17:13:05 asciilifeform: shinohai: i have plan to bake the item i unsuccessfully tried for 2y to milk outta phf -- hopper where my l1 can drop signatures for patches and have'em eaten. but prolly not happening until after new year, currently hands full (setting up rack people)
asciilifeform: http://logs.nosuchlabs.com/log/asciilifeform/2022-02-19#1079988 << if asciilifeform lives long enuff to have time to return it, will return
dulapbot: Logged on 2022-02-19 10:44:11 whaack: asciilifeform: btw http://phuctor.com/ will phuctor actually return?
asciilifeform atm 90-100+ h of commercial liquishit on typical wk
asciilifeform: !q seen phf
dulapbot: phf last seen here on 2019-09-19 08:18:38: asciilifeform: yeah, some task i left running resulted in a heap exhaustion
asciilifeform: iirc he was lurking for a while last yr, and in fact tipped asciilifeform off re mp. updated the patches once iirc. but no word since.
asciilifeform: a working patch viewer would be a+++ handy. good n00b project, too. but so far all we have is the zombie of the old one.
asciilifeform loox at cement testbed : 302+k
asciilifeform: ... no stalls thus far, tho verifications at this height take 1-3s. ea.
whaack: asciilifeform: 90-100 hours of saltmines? holy god
asciilifeform: http://logs.nosuchlabs.com/log/asciilifeform/2022-02-19#1079987 << in ro, 'dulap' is a wardrobe or cabinet. but featured in a mpism where referred to a cock-mangling machine. at one time mp supplied asciilifeform with hostings, there was a dulap-I, dulap-II, dulap-III was at piz
dulapbot: Logged on 2022-02-19 10:43:30 whaack: crtdaydreams: i believe dulap was the original name of the box hosting s.nsa 's phuctor, and it later became the name of a machine with certain specs, but asciilifeform can elaborate
asciilifeform: $ticker btc usd
busybot: Current BTC price in USD: $40286.49
asciilifeform: !w poll
watchglass: Polling 14 nodes...
watchglass: 54.39.156.171:8333 : (ns562940.ip-54-39-156.net) Alive: (0.111s) V=99999 (/therealbitcoin.org:0.9.99.99/) Jumpers=0x1 (TRB-Compat.) Blocks=724054
watchglass: 205.134.172.4:8333 : (172-4.core.ai.net) Alive: (0.143s) V=70001 (/therealbitcoin.org:0.7.0.1/) Jumpers=0x1 (TRB-Compat.) Blocks=724054
watchglass: 205.134.172.6:8333 : (172-6.core.ai.net) Alive: (0.214s) V=99999 (/therealbitcoin.org:0.9.99.99/) Jumpers=0x1 (TRB-Compat.) Return Addr=0.0.0.0:8333 Blocks=724054
watchglass: 208.94.240.42:8333 : Alive: (0.143s) V=99999 (/therealbitcoin.org:0.9.99.99/) Jumpers=0x1 (TRB-Compat.) Blocks=724054
watchglass: 54.38.94.63:8333 : (ns3140226.ip-54-38-94.eu) Alive: (0.198s) V=88888 (/therealbitcoin.org:0.8.88.88/) Jumpers=0x1 (TRB-Compat.) Blocks=724054
watchglass: 94.176.238.102:8333 : (2ppf.s.time4vps.cloud) Alive: (0.256s) V=99999 (/therealbitcoin.org:0.9.99.99/) Jumpers=0x1 (TRB-Compat.) Blocks=723044
watchglass: 82.79.58.192:8333 : (static-82-79-58-192.rdsnet.ro) Alive: (0.390s) V=99999 (/therealbitcoin.org:0.9.99.99/) Jumpers=0x1 (TRB-Compat.) Blocks=724054
watchglass: 103.36.92.112:8333 : (terebe.ns01.net) Alive: (0.595s) V=99999 (/therealbitcoin.org:0.9.99.99/) Jumpers=0x1 (TRB-Compat.) Blocks=724053
watchglass: 205.134.172.27:8333 : Alive: (0.060s) V=99999 (/therealbitcoin.org:0.9.99.99/) Jumpers=0x1 (TRB-Compat.) Blocks=724054 (Operator: asciilifeform)
watchglass: 71.191.220.241:8333 : (pool-71-191-220-241.washdc.fios.verizon.net) Alive: (0.885s) V=99999 (/therealbitcoin.org:0.9.99.99/) Jumpers=0x1 (TRB-Compat.) Blocks=724054 (Operator: asciilifeform)
watchglass: 205.134.172.28:8333 : Alive: (0.370s) V=99999 (/therealbitcoin.org:0.9.99.99/) Jumpers=0x1 (TRB-Compat.) Return Addr=0.0.0.0:8333 Blocks=724054 (Operator: whaack)
watchglass: 75.106.222.93:8333 : Violated BTC Protocol: Bad header length!
watchglass: 205.134.172.26:8333 : Busy? (No answer in 100 sec.)
watchglass: 143.202.160.10:8333 : Busy? (No answer in 100 sec.)
whaack: !e view-height
trbexplorer: block_height: 724055
trbexplorer: mins_since_last_block: 6
thimbronion: http://logs.nosuchlabs.com/log/asciilifeform/2022-02-19#1079995 << hopefully you are paid by the hour at $200 or more or are getting equity
dulapbot: Logged on 2022-02-19 11:12:57 asciilifeform: atm 90-100+ h of commercial liquishit on typical wk
cgra: asciilifeform, just gave this a try: first 125232 blocks took 53 minutes to sync with the old non-cement sync (before entirely stopped syncing, stuck now for 4h). how fast were your first 125k blocks?
asciilifeform: thimbronion: no equity, paid in ordinary dough, and not by hr, lol
asciilifeform: cgra: imho difficult to compare, knowing nuffin about your box. iirc 1st 125k took ~2h in this test (but note that asciilifeform did not attempt to time precisely)
asciilifeform: important to note that cement does not give faster verification, only abolishes (near as i can tell , in fact does) the 'stuck' intervals (while in cement, naturally)
asciilifeform: thimbronion: it aint all for 1 client, the salt mines, iirc did mention this in the past
asciilifeform: cgra: possibly might be useful to add a running avg. 'time waiting for block'. and test in parallel on 2 identical boxen, 1 w/ cement, 1 w/out
asciilifeform sadly dun have 2 identical boxen handy to try this on
cgra: asciilifeform: iirc you said ryzen, so perhaps close enuff to my i7-9900k. was only looking for whether any apparent difference between cement-block-by-block and old-sync-in-block-bursts. somewhat related to the q whether any use to have overlap between verification and download of next
asciilifeform thus far satisfied that 'cement' behaves logically correctly (i.e. 'makecement' in fact emits the longest chain, 'loadcement' in fact loads, 'unloadcement' -- unloads, and noad w/ cement loaded does not get 'wedged' for any appreciable length of time.) but defo worth extensive test by other folx.
asciilifeform: cgra: on a very slow pipe, could be of use, in principle.
asciilifeform: but even on a measely 100m/s pipe on ea. side, , 1e6byte block downloads in, what, 80msec.
asciilifeform: i.e. dwarfed by verification time.
asciilifeform: if one were in a suicidal hurry, and ate the blox w/out verification, on 1g/s pipe would sync from 0 to currentheight in 3-4h.
asciilifeform did not offer this in the patch, and has no plan to, but worth to mention.
cgra: asciilifeform: with these first, miniscule blocks, that 50% diff of ours could be due to cement doing getdata-block exchange for every block, where the old sync runs in multi-MB bulks per each ask-inv-getdata-blocks exchange
asciilifeform: cgra: entirely possib
cgra: was kinda interested to see that effect
asciilifeform: cement, as proposed, does indeed do 1 at a time.
asciilifeform: 1 upside of this is that it doesn't bring the peer to its knees in so doing
asciilifeform: (unlike if were asking for hundreds in 1 getdata)
asciilifeform: the peer has a chance to do sumthing else b/w requests
asciilifeform: cgra: was thinking, a 'smarter' cement that only issues asks if some interval of 'wait for block' is exceeded (but still of course runs cement.verify) might be a win
asciilifeform: tricky bit is that it might end up waiting that entire interval for 1000s of blox in a stretch.
asciilifeform: (for each)
asciilifeform suspects this aint worth it simply to cut 1-2hrs off the 1st 100k blox
asciilifeform: most of the chain at this pt does not consist of 'empty balloons' where the requesting handshake outweighs the rest of it
asciilifeform considered to store sizes of blocks in cement, in addition to height/hash, decided against
asciilifeform: hypothetically would give a bit of additional collision-resistance tho. and let you strategically ask for n blox to add up to b bytes in 1 getdata
whaack: is the cpu the limiting factor when waiting on verification time?
asciilifeform: whaack: disk i/o
asciilifeform: whaack: see also
dulapbot: Logged on 2022-02-17 11:33:23 asciilifeform: note, btw, that in the earlier linked ml experiment, asciilifeform demonstrated that most of block verification cost is in the idjit slowmo db
asciilifeform: whaack: at one time, asciilifeform laboured under the misconception that it was the ecdsa numerics. it wasn;t
whaack: asciilifeform: ah ok, good to know
asciilifeform: whaack: see the various 'blackhole' posts by asciilifeform on ml. pretty straightforward imho.
asciilifeform arrived at the obvious pill as a result of above experiments.
asciilifeform: the pill of course aint cement (which is imho necessary but not sufficient) but o(1) db. cement simply removes the time burned on 1) verifying blox which you already know 'aint it' 2) 'waiting with open mouth'
whaack: asciilifeform: but do you see overhauling bdb as a realistic option? what if forks-from-old-trb?
asciilifeform for many yrs hesitated to bake 'cement', it is arguably a 'mouth to mouth resuscitation' kludge
asciilifeform: whaack: at this pt i'm satisfied that there aint a reliance on peculiarities of bdb in the actual logic.
asciilifeform: whaack: 'fixing' bdb is imho outta the question tho, one needs a dedicated item w/ o(1) retrieval of arbitrary blox/tx
asciilifeform: will emphasize tho that we're talking about a man-yr, at least, of sweat, that nobody has atm any compelling reason to do.
asciilifeform: classical trb 'verifies quickly enuff' to keep up w/ new blox in realtime. principal headache is during init sync and 'catchup'.
whaack: i guess it's centered on the idea of making sure at no point in the future is history lost
asciilifeform: aha.
asciilifeform: also note that gluing sane coad to trb is epically painful.
dulapbot: Logged on 2020-05-03 17:37:59 asciilifeform: trinque: i've been sawing at the 'get rid of bdb, have o(1) indexer in ada instead' thing for 2y+ nao, on&off. principal headache is the obscene impedance mismatch b/w the cpp liquishit and anyffin sane. the 'glue' threatens to be 10x larger than the original coad.
whaack: or at least delaying that fate as long as possible
asciilifeform: arguably is easier to rewrite whole thing than to 'glue on nqb db'
asciilifeform: (emphasis on 'easier', not 'easy')
whaack: what is nqb stand for?
asciilifeform: 'not quite bitcoin', asciilifeform's demo of adaistic ab-initio mechanisms for hypothetical replacement of trb
whaack: ah ok
shinohai: iirc "core" folx moving from bdb to sqlite now.
asciilifeform: lol!
asciilifeform: i suppose 'worx great' if you dun actually verify ~anyffin
asciilifeform noticed that many prb-type noades dun even answer requests for arbitrary blox
asciilifeform not studied systematically tho
asciilifeform: whaack: there's no particular reason 'history must be lost' at any pt, ever -- a century of bitcoin easily fits in a 4tb hdd.
shinohai: https://achow101.com/2020/10/0.21-wallets <<< the core camp's reasoning behind the switch
asciilifeform: shinohai: seems to be about wallet.dat tho, rather than the chain
asciilifeform has nfi what they currently use for the chain, has not kept up w/ prbism in quite a while
shinohai: Excel spreadsheet compatibility, wen?
thimbronion: http://logs.nosuchlabs.com/log/asciilifeform/2022-02-19#1080029 << You can take the russian out of the шара́шка, etc.
dulapbot: Logged on 2022-02-19 12:24:31 asciilifeform: thimbronion: no equity, paid in ordinary dough, and not by hr, lol
thimbronion: signpost: plz to repoast recommended luby readings. I am getting to the point where I have time to research this and consider it in the context of pest/blatta.
asciilifeform: thimbronion: at least they're take-home sharashkas, lol
thimbronion: asciilifeform: no wonder you have no fear of being put in prison - would significantly improve your living standard lol!
asciilifeform: thimbronion: old piece re luby, iirc linked prior
thimbronion: asciilifeform: ty^
asciilifeform: thimbronion: 'кто не был -- тот будет'(tm)(r)
asciilifeform: thimbronion: the piece signpost was working through was not about classical luby tho, but a theoretically moar optimal algo iirc
thimbronion: asciilifeform: I saw some references to something called "raptor"
asciilifeform: aha
thimbronion: There is some $90 turd on amazon re: this
asciilifeform: there's at least half dozen published schemes for 'break n byte turd into j k-byte chunks, jk > n, and l, l < j, of which can be processed in arbitrary order'
asciilifeform: each has own wins/losses
asciilifeform: some give you guaranteed convergence with smaller # of chunks received; some -- conserve bw moar; some -- eat less cpu; etc
asciilifeform partial to orig. luby, it is by all appearances the simplest, mechanically, and adequate
asciilifeform: in pestronic context, it'd be obvious fit for file transfer over pest
asciilifeform: given as packets arrive in ~arbitrary order, and multiple peers may have $file to offer
asciilifeform: thimbronion: i rec against collecting costly academiturd deadtrees re subj, asciilifeform did so re ffa and filled entire bookcase and all of it was 100% distraction
asciilifeform: the authors aint out to actually share a useful algo.
cgra: http://logs.nosuchlabs.com/log/asciilifeform/2022-02-19#1080068 << it's useful/necessary to prevent early-chain spam-alts innit? or why hesitated?
dulapbot: Logged on 2022-02-19 13:13:47 asciilifeform: for many yrs hesitated to bake 'cement', it is arguably a 'mouth to mouth resuscitation' kludge
asciilifeform: cgra: it's potentially a heavy calibre weapon for n00b to spectacularly shoot himself in the foot with. ( malicious cement can be constructed to send you into a custom parallel universe )
cgra: right... though is it any different from noob having to pick a client software?
asciilifeform: cgra: arguably very similar. hence asciilifeform concluded ' we publish a client src, may as well publish cement '
cgra: right
asciilifeform: for that matter there's a primitive proto-cement in classical trb already.
asciilifeform: simply a rather useless one
cgra: yea, other alternative, and clearly worse
asciilifeform: the checkpoints thing imho oughta be either updated, or removed.
cgra: asciilifeform: if cement stays, prolly removed?
asciilifeform: well atm checkpoints give at least elementary defense to newly-built noades against early/easy-block forgery
asciilifeform: but if errybody uses cement, then entirely redundant.
cgra: asciilifeform: perhaps cement ought to replace it more explicitly
asciilifeform: tho, arguably, ~not~ entirely, cement as presently offered in asciilifeform's patch does nothing re verification of blox already on disk
asciilifeform: would be trivial to implement a 'verifycement' which actually GetHash()'s erry block in db (rather than walking headers as current 'makecement' does) , in fact this was how asciilifeform's orig. 'makesnap' worked. simply, takes hour+ on typical box, at current height, during which it will do absolutely nuffin else (and fall behind)
asciilifeform: not that one would insist on doing this all that often.
asciilifeform: the other interesting possibility is that if you were to store hardcoded cement for e.g. erry 100th block through e.g. 723000, this'll add only ~200kB to the memory footprint.
asciilifeform: and may well suffice for zero-stall sync.
asciilifeform: optimally, you'd preferentially cement the early blox (a la current checkpoints) to a point, and after that the 'heaviest'
asciilifeform: imho this'd be an even uglier kludge than the current thing tho, from a basic principles pov.
asciilifeform: cementism is a fundamentally unprincipled departure from basic premise of trb, where 'mechanism is offered whatever liquishit by whole planet, but will find longest chain per simple rules'
asciilifeform: hence asciilifeform's pov re subj
dulapbot: Logged on 2022-02-19 13:13:47 asciilifeform: for many yrs hesitated to bake 'cement', it is arguably a 'mouth to mouth resuscitation' kludge
asciilifeform: it aint far removed from the traditional practice of simply copying db from 1 hdd to anuther
asciilifeform: virtually erry trb noad operator w/ >1 noad has done this at some pt, asciilifeform suspects. but is fundamentally sinful.
asciilifeform: ... otoh having to wait ~year for newly built noad to sync is obscene.
asciilifeform: but asciilifeform would rather leave the decision of 'cement or not' to indiv. operator, rather than try to make it hardcoded piece of trb.
asciilifeform: hence the offered scheme, where you get a pgp-signed cement file, from someone you trust, preferably ~yourself~ on anuther box, verify sig, ~then~ load it, etc
asciilifeform: baking, sending, loading, ~20MB cement , is much faster than copying a 400GB+ db; and you dun need to shut down the donor noad to do it
signpost: http://logs.nosuchlabs.com/log/asciilifeform/2022-02-19#1080095 << https://archive.is/jAKtO https://archive.is/f92nn here ya go
dulapbot: Logged on 2022-02-19 13:55:37 thimbronion: signpost: plz to repoast recommended luby readings. I am getting to the point where I have time to research this and consider it in the context of pest/blatta.
signpost: I will post you my WIP python encoder/decoder, may be helpful.
signpost: https://archive.is/rDju0 << presentation the d00ds gave on their papers
signpost: tests in there all pass, probably a good place to start when looking at it
scoopbot: New article on trinque: Online Codes in Python (WIP)
asciilifeform: ohey neato
asciilifeform: not even very heavy
asciilifeform: signpost: how much didja end up baking from 0 and how much from junkyard ?
asciilifeform: meanwhile in misc. blog lulz.
signpost: wrote all the py in vpatch myself from the paper
asciilifeform: signpost: nifty
asciilifeform: signpost: reason why thought to ask was the ipv6isms
asciilifeform doesn't use ipv6 anywhere, but can only speak for self
signpost: ah yeah, that test was some boilerplate for using the py3 asyncio thing
signpost: didn't integrate it into the encoder. tests just encode and decode on numpy arrays
signpost: er not test, listener.py
signpost: also should point out I wrote it recursively, didn't fix that, just lazily increased stack
signpost hopped to a sbcl implementation around that time, found displaced arrays mighty nice to work with.
asciilifeform: upstack, hilariously, linked fella doesn't seem to know that we fixed static linking in gcc 7y+ ago. (and if pointed to e.g. 'rotor', or signpost's refined current variant, will prolly faint and fughet it happened)
dulapbot: Logged on 2022-02-19 17:05:37 asciilifeform: meanwhile in misc. blog lulz.
asciilifeform observed this pattern for many yrs -- 'complainer' will write lengthy and largely factual 'mainstream is broken' lament; but if shown how to 'save self' will balk, 'it doesn't fix the mainstream!111' etc
dulapbot: Logged on 2022-01-18 13:34:50 asciilifeform: moar of the 'save yerself and others around you will be saved'(tm)(r) and 'the salvation of the drowning is work for the hands of the drowning'(tm)(r)(east church) school of thought
asciilifeform observed this reaction in many, incl. in meatspace, to e.g. fossil gentoo
asciilifeform: ... this is pestilentially endemic among usa folx; 'i dun wanna be a partizan, i wanna live in reich of 20/30/40y ago that was less retarded'
signpost: yeah, this is written like "how to be a marginally 'better' manager at $megacorp by convincing yourself to ignore the blue-hairs" while one hand clutches his ulcers.
signpost: fuck these guys; they're the only reason the megacorps haven't died yet, that the slaves spend more time rationalizing their station than abandoning it.
asciilifeform occasionally reads these 'ulcer bloggers', who 'do you lift bro'(tm)(r)(c) etc., all rather similar in flavour
asciilifeform: somehow the concept of 'build a defensible corner, however small, and 100% banish the vermin from it ' -- invariably lost on'em
asciilifeform must bbl
signpost: asciilifeform: cya!
thimbronion: signpost: ty!
crtdaydreams: http://logs.nosuchlabs.com/log/asciilifeform/2022-02-19#1079989 << I had a blog, self hosted. Can't run it because interwebs shit to where I moved. I have multiple projects but suffer from the inability to finish any of them. Always been one to start projects though.
dulapbot: Logged on 2022-02-19 10:46:51 whaack: crtdaydreams: regarding 'ultimately contribute nothing' .. why don't you start a blog or a project?
signpost: thimbronion: yw
signpost: crtdaydreams: consider that if you cleared the space in your head reserved for reasons things can't be done, you'd have more room for doing them.
signpost: particularly this "suffer from the inability" construction is pernicious, self-hobbling bullshit your culture taught you.
signpost: feels good to chuck such things out the window.
asciilifeform: crtdaydreams: try finishing ~sumthing~. it will feel a++ great.