All Core Devs - Consensus #31
All Core Devs - Consensus · 9 Jan 2020 · 1:01:06
Eth2 client teams and researchers cover testing and release updates, including fork-choice testing, client and research updates, networking and spec discussion.
Topics
From All Core Devs - Consensus, hosted by Ethereum Foundation.
Transcript
[Music] [Music] okay the stream should be transferred
over people in the YouTube chat box let me know when yes I've just shared the agenda in the zoom chats and on the youtube check and we will get started happy new year everyone thank you for coming step one else has been step one for many months testing and release updates as I believe you are aware and please meet when you're not talking cool as I believe you're aware we're working on b0
10 this is since the since Def Con we made some breaking changes to facilitate a altered phase one there has been a lot of churn and the face of respect d0 10 is to be a stable target both for you on test nets and for some audits that are being conducted so excited to get it back to a stable place thanks for bearing with us on that journey so again that is to be released tomorrow bye bye tomorrow potentially today this contains some small modifications to network spec
a couple of different configuration ability of grammars to stay zero and generally at least from many angles non breaking changes not I don't think there's anything really substance to in the phase due respect other than being able to configure some additional rooms anyway that will drop soon and we can Danny questions so the the BLS changes are not going into this yes sorry no that's the that is the major thing coming out so the grading range yes other than the BLS changes which is like
the major component of this release Thank You Ben I'm sorry it's 7/8 BLS is going in BLS is the major breaking change thank you everyone that's been working on the standardization effort Thank You Karl and Kirk who've been working on integrating the changes into the spec and thank you everyone for doing the work that you're going to need to do to get that up to spec I know there is some movement on integrating these standards into libraries but there might be some like work that we have to do on our with them okay so that is a major breaking change thank you other than that there's some additional configuration parameters
there's a slight modification to the networking spec that we discussed on the last call but nothing crazy but the BLS is crazy and if you haven't seen Ben's BLS intro digest document he shared the other day check it out it's really good in addition to that along with testing I think there's a handful of additional tests I think on the deposit processing to catch a couple of other cases but again that is additional testing rather than breaking changes okay release release coming in next 24 hours proto
any other testing updates I think will be the most focused thing on listing phase 1 and their term yep under theer we're using the very first trip yeah we have a working draft that's getting into a decent place for phase one that may or may not go out with be zero ten but that'll be in dev surely regardless what about testing for or for choice great great point is anyone from harmony here that's been
working on that I'm here and yeah we we have published Alex has published some of some of the updates let me pose just this issue it's on the github you can check the format and example of test two actors this is an integration test and not a unit test that we used to have for state and other things yeah so take a look at that and you will get back in yeah if I can get a couple of eyes on that in the next few days and a couple thumbs up then we can integrate that
into the standard testing distro they go you had more mmm sorry Danny what I thought you had something else to say Oh anyone else got your things okay any other testing items okay moving on kind updates start with Nimbus I so it was a bit quite during the last three weeks because the most of
everyone was on holidays regarding the core spec we are now in sick with zero point nine point four for phasing purposes we are keeping a separate branch with your part 9.32 is sick people's work we are focused right now on the networking side we have a first PR on discovery v5 so it's a halfway done and that's the module blocker to join prison and lighthouse test nets we are currently verifying interrupts with Virgo leap p2p as well as you know we need to be version
introversion three weeks ago and we are reevaluate or since strategy looking into what deterrent it's too safe and bandwidth also under the tooling sides we are planning a PC endpoint for become load for all kind of a proceed purposes right thank you and Artemis good morning everyone we've been working on over the last
month includes each one data management including bowling client needs one client for both data and there is a question about this that I'll ask in a moment other things that we've also been working on our the sync between Artemis clients including the startup of these different clients we're also and we've also done some integration at the disk very module as I mentioned previous calls we've taken the harmony discovery module and we have adapted it and put it into Artemis and that's almost done I've also been
working on the beacon plus integration of Artemis into the be confessed project and that's almost complete as well and there is a question about that which I'll ask any moment and of course Ben's Java implementation of the IETF standard hash the curve method 432 has been merged into Organists very recently as well thanks Ben for that so the two questions that I had the first one was about the eath one data just wondering if there are any resources we can look at on how people are syncing eath one
main that data to the chain is it one peer that there it's polling or more and people are interested in answering that question they can ping me later the other question which perhaps is some people can talk about now is for the beacon photos I know the project that project is that the zero nine one spec not sure if it will be updated what the plan is for updating that spec there were two approaches broadly one is that the beacon node is talking to some eath one RPC employing gathering and caching this data or there's like that a
separate kind of side module that's doing the work I believe that everyone is generally talking to one RPC endpoint operating under the assumption that this is either a node that is being run by the validator or a node that the validator is connecting to in which they have some sort of trust relationship with are there any other more fancy methods going on that I'm not aware of cool if you have anything to share ever shot on on methods check it out we have a there's a change in B zero ten that
uses time stamping rather than block height to cast votes which has some benefits in terms of caching I call it generally backwards-compatible because even if - even if like a handful of people are doing the votes differently towards the end of the period they would agree on votes in 99% of the time anyway [Music] they're in the issue that Paul raised and that pushed for this change there's a little bit of description of like you know how they may or may not be cashing and things that might be interesting to take a look at there Thanks yeah and what was the second one again other was the race I am NOT maybe
someone from White House knows I've been talking to Medi to later day and I can ask him I imagine because the new 0 10 is out for audits and and it's to be a longer term stable target that that's gonna be the next update but I'm not certain okay thank you so much good thanks Armas Trinity recently are working on the very data and the change node separation this will include a new Wednesday to try logic implantation and
the editor API exultation and it will be used in some kind of test nation and we have each one state has voting Hinderer currently located in our beacon the beacon note site and the career walking how to integrating it with the is one with three provider currently test we are testing it with the test provider and the third thing is that about the spec thinking we are following following up the zero point nine point three version and we have a funny route
PR which is almost done and after that we will think with now they were pulling nine point four thank you okay thank you prism okay happy new year everyone excited for an awesome year with you so most of you guys have heard we're relaunching our test net the Genesis time is 4:00 p.m. Pacific today it implements everything up the to the V 0 V 0 9 3 spec we do use the V 0 9 force pesto and most importantly this uses the many config with one tenth of the
deposit requirement which is 3.2 e so we do in Spanish singing time to be relatively slow early on and it's a p0 priority for us to work on for the next coming weeks so come one key progress is from the last few weeks we implemented everything up to you busier busier than three of this back there's a bunch of optimizations that went into so forming a country such as probably handling of the deposits I know how we're doing and how we don't really look at the given data we had to refactor some of the belt at her assignment and committee logic for the belt in her obvious response to be us it could be as efficient as
possible Raul also the allowed reward on implementing a custom version of of SSH rehash state so yeah if anyone is interested being a prison validator the charity time is 4 p.m. today oh I will drop the participation link at Sharada 4 p.m. pacific standard yeah thanks I was talking Crescent and it looks like y'all have the aggregation strategy with aggregation improve on the text not yeah that's exciting I think you're all the first to test that on a test net so sad to see what happens at four pm cool
thank you very much lighthouse yeah hey everyone from us we've been running a test net Fri I think we started on like the 22nd of December we haven't actually announced it publicly but we should be doing that in the next few days and it's it's on a main net spec that's been running fairly stable so it's time to get some public people in there to try and break it so since then we've been trying to focus on some of the stability of the test name and and performance in particular block processing times because syncing obsolete takes a while to process all
the blocks we've actually made some some pretty significant gains which should hopefully be good when we when we really start to the public so we've been looking at some of the networking stuff as well in terms of I'm fixing and stuff and stability for our test net the Biff Floyd team also found like a lock you know you know API so thanks to them they've helped us kind of debug that which has been really useful we're close to like a version 1.1 release which adds all these kinds of stability fixes and what processing updates so we hopefully release those in the next few days with along with the new tests now we remove the quiet with the requirements for like
a full f1 note so we don't need a you can just we can just have a fast sync node is is is all we need so we're gonna probably remove all the public golly node docs from from from our Docs to encourage any participants to just run their own and f1 nodes we built some docker compose stuff which allows you to in a single command just spin up a node or no validator and join the network relatively easily we've started where we've add Harumi BLS Urumi which saw think about two times gains in that which is passing all the tests we haven't actually added
it into master yet and we're currently in the process of adding the naive aggregation strategy which should hopefully be soon which we will release in a in an entirely new chestnut oh yes thank you and she gave the maintainer of the library has been working on updating it to support the new idea yeah yeah yeah we're kind of hoping for that because it it did see some pretty decent games harmony we have updated this back to zero point nine point four and alex
has generated those test vectors according to this version also mitri working on this crew force innovation Anton helped him to extend his simulator that he crafted for gossip sub simulation and now he's bringing some sorry to bring in disco five to to this simulator also we have discussed at a time consensus stuff now alex is working on the writer to describe some basic ideas in that's probably it for now starting to starting to work on some new
stuff as part of TX TX Rx yeah right I guess sorry in the future will new harmony updates just be maybe in conjunction with your ex TX arts and research updates does that make sense yeah sure cool great thanks Mikkel lodestar hey so we're getting back up to speed after the holidays as far as spec tests as far as the spec we are in the final stages of merging our 0.9 branch into
master and then at that point we should be up to zero point nine point three we have been working on refactoring our SSC library to allow for something like proto's remarquable library something that can abstract over a Merkle tree backed structure and give you an interface it looks like a kind of like a normal object would and as part of that I guess the code is better and just even for our naive cases and looks like our
serialization and hash tree root for night cases is like twice as fast surprisingly and then hopefully in the next few weeks we should have something like a remarkable for our library to plug in and that's here I shared the long two protos recent photo do you wanna give a quick this brief on it sure so the idea is make part of the to see philosophy is objects can be very very large so some kind of data sharing as part of your SSE library is just very nice to
have if you're working this this is like a focus more on proofs or more like these could be continuous at this where you want to know and if all of this has to route based on cached sub trees and so this is all nicely obstructed in remarkable marriage it can just act like it's a normal speck of check the sex act sense in sex with us of their data sharing cashing reputation on that in the background cool thank you yes Edwin sit now our example send
documentation to follow it's in a hurry stage another mind okay this slide here so we're still progressing I mean we're behind everyone else we've got we've just got the validator block signing working we're still on 0 going 1 so the validator talks to Beacon note so you actually run both and generated ongoing chain so we've got their core there but there's still no attestations still mock
if one data weird between just about to start peering work on the viewing to publish the the block it's already started some research but no actual code yet most of the teens being busy with their eighth one work but there's now freed up a bit to more focus on if - so soon as I think will be mostly just me but will be expanding the team something other people will be moving on to I know Thomas has done a bit of work as well but we should be growing bit more and have we catch up with everyone else and I believe that is everyone we had today
correct ok ok next line agent uh network updates tell you know service off I meant research up did you think I research updates let's see so that's mostly phase one and Phase two and figured out some input some improvements the data to idea the availability of routes that makes the instruction slightly cleaner I mean we spent a bunch of time looking through looking through
alternatives to the 2ds date availability construction and it seems like the consensus view is that there are there's a bunch of cool ideas but there but not an immediate term enough time to be useful for each you at least at least immediately so in wants to start with three dimensional arrays your coding and then move on to some move on to something else later see trying to rule recent things I mean on the on the
face to front I mean there were also some I some ideas around how to do them execution environments and probably the most recent kind of actually new thing actually new thing that at least I published was this proposal for switching from e1 to e2 or moving eath one over inside of eath to on an earlier schedule than before so this was the idea that we would basically figure out the stateless client verifier and then and have actually just include that into the e3 system and then come up with this mechanism where each one of our theaters
can voluntarily declare themselves as being too friendly and if they are you too friendly then like it's only from that will know you would select proposers and proposers would have to have the youth one state but then the committee members that validate would still be taken from the global set and they would still validate stay alone so actually that's something the problem we could be in interesting to discuss at some point like in terms of the prerequisite that's I wrote that like I wrote up that post on protocol changes for Steelers clients but the main pre record is pretty much is getting sales clients working correctly and so that
and that's something that I know that people are working on right I guess importantly the proposals suggests that the eath one friendly validators actually hold the state and so it kind of removes the one of the elements complexity that might come with statelessness which is having a secondary state providers and things for block reducers yep yeah cool so I think exploring that over the next few months maybe in parallel to some of the finale gets tough to be able to evaluate the different paths for this good idea another thing that's worth that I talked
about this - white blog people but the other thing that we needs to kind of do our homework on is just verifying that the network actually can handle blocks of and if somewhat larger sizes so the numbers that I figure it out for witnesses are that we can realistically bound to us tailless Kawai witnesses through a worst case of about 4 megabytes and an average case so about six hundred kilobytes and it just so happens that 625 kilobytes is the maximum size of a block that's possible and these one chain host system also one thing I suggested it's just repeating the the tests that's dark words had before where I think it was too much a job I blogs but this time doing 600 go
by blocks instead and the other thing that could be done in is just the network tests saying use cooling with and trying to just verify that megabyte I'm sorry I can get passed around yeah was the main criteria success criterion that just the lack of increase in uncle rate pretty much is there anything else you think that you'd want to be looking for on that so the white bought people said they would look at like Network latency
times more directly but hmm and I feel like uncle Reid is like the biggest direct sign of trouble happening because everything else can like the only other thing negative thing that would happen is just clients like regular nodes syncing those blocks more slowly but that's something that we could kind of measure entirely other fairly easy ways as well other research updates um one exciting update from me is that so supranational
which is the the team that is working on basic kind of independently kind of as a side project started thinking about accelerating DL s12 381 and they actually working with the collaborator who is working on kind of an implementation from scratch of obviously one for four CPUs and he's he's already implemented point addition and point doubling and he's actually faster than Harumi so he's about 10% faster for these two operations and he's going to start implementing a new pairings you know in addition to the performance improvements
which I guess I'm nice this guy is also a formal verification kind of expert and like he had a look at the halloumi code and his impression is that formerly verifying the Hiromi stuff will be difficult and how the reason is that you know he Rumi has this custom compiler and it's it's you know it's but the whole code base is quite complex and and all over the place so I mean he's taking a different approach which is you know very minimalist and very clean and very focused on performance and also focused on on formal verification so I mean even
though it won't be production ready for the launch of a zero that's I guess something you know that might be worth investing in for phase one or phase three I mean other than that does the I'm also I mean I'm still working on I'm thinking about acceleration of of snarks especially the multi exponentiations so I've I've taken a look at Pippin Jarrah and I've also started kind of a technical viability study for building a multi externalization ASIC and it looks like basically we can get roughly a
factor of a thousand X improvement in performance so like we could you know we could imagine like a small like a PCIe card or a small box that you connect to your computer and it would do about a billion exponentiation in like two seconds or something like that I mean still early days but I'm quite excited the other thing that I've been working on is vdf day so there'll be a vdf day one day prior to SBC the Stanford banking conference I was there will be on the 18th of February
great it's cool I'll go ahead and give please yeah awesome so we have a few things there is a phase two column 14th Tuesday so that that is coming and we'll be brainstorming and talking about a few different things we're a lot of things are continuing from updates from from last time so we have a you know a ganache like tool that can run ease on multiple shards so we have that running for multiple shards in parallel right now and so it's early on
will release this next week a full roadmap if doc and readme around it as well we're also now focus with tx/rx work collaborating to build an end-to-end testing suite and so kind of the move here is that it's library based so you would pick your proof back end or memory back end and it kind of connects all these pieces and then you can develop the Yui to run on top of that so doc a roadmap doc is coming coming soon on that as well there's overlap with some of the even 1x stateless work so we're gonna release a
write-up today that has been in the works that covers basically nails down the scope for three different directions on the state provider side that we can go on and gives rationales for each of them we're recommending one particular direction called the pull model hoping this will be a good topic of discussion for the callin on Tuesday and we're starting a prototype on that as well and we'll be trying to bring over and work on some of the one data to validate this and to end as well so looking looking to get feedback on that
and hoping people will go through that before the call continue to look at some of the cross shard schemes and things around that the talk did a interesting right at Baumann netting format recently which seems really interesting and seems to remove some of the need for nonces and fields so I've been playing around with some I guess some ideas on that and then we have some other write-ups coming and one of those is on the upgrade ability another one is on a fee on the fee market the discussion for phase one
and laying out the different options I think there's three that have been stated so far and one includes kind of a minimalistic Phase two so there's some interesting discussion around that and wanting to get some yeah get some answers around that as well and then also some interim interim or iteration plans for Phase two as well thinking of you know can we start off with a really restricted simple phase two that'll test that and then you build on top of that so deserves our updates great thanks so expecting a few research um participate
are collaborating on a cross card transaction simulator and that should be out sometime next week additionally we're working on a an ml EE that Johnny raced and working on called anomaly and she's making progress there I think we have something that works pretty well and this is kind of just a side note each search if you haven't seen it yet it's pretty cool Johnny ray made that over Christmas and indexes you know III search pertinent people on Twitter and what's
new nice to to see if you're looking for a search topic or utility for research topic in e2 you can search on there and it's all indexed that's it what did you mean by an ml machine on me right I guess what neural networks on the blockchain mm we could train neural network so is it with Johnny I'm not an ml x / Johnny is imprint and it's it's an inference that compiled as EE that's
it seems a bit similar to what scale dot IO did six months years ago I think on f1 now I don't know Johnny are you on the call so you can talk to it awesome thanks justice leo thank ya just to mention that we are starting to gather the list of speakers for ETH Basavanna so if some of your teams want to representative to contact me either a heater or telegraph or you can send the
enemy to ETH Barcelona at gmail.com and great and I just shared the link to that thanks thanks anyway else okay next up is networking there was less the last call we discussed allowing for empty responses and streamed network responses specifically in the block RPC request
that has made it into the spec into zero ten thanks caustic I we will do another networking call either one week or two weeks from now I'll make a decision today about you all know any other networking items and want to discuss in this call today great spec discussion I know we covered a few items and the general updates earlier but any other items questions
things we want to discuss today how do people feel about the idea of an accelerated evil need to switch yes I like it are you about the latest proposal yeah yeah I like it from technical point of view but I'm not sure that will be accepted by the community I mean this is the change change the consensus and
security assumptions it depends on on the point of time at where we are going to do this switch yeah I think it definitely depends on a successful and stable phase 0 and phase 1 release kind of demonstrating the security and stability my impression is that the sooner that we can bring better functionality to you the better yeah agreed
Vitalik do you see this in lieu of a finality gadget integration or a step past it oh how funny expensive what do you finally get hmm that's a good question I don't know like I think a finality gadget as a voluntary thing like I think could be done earlier than a full switch but but like enshrined fine before curious rule like if we're willing to do that then why would we not be willing to just fully merge the two together yeah that's kind of where I see it as generally most pads I think it's
either kind of one or the other and this is an alternative to doing a like full integration of finality gadget and bridge it's kind of like is a an alternative to the bridge I suppose [Music] right I mean it's like the kind of bridge where you like open up the bridge and then you move all your soldiers to the other side and then you close the bridge behind you immediately that's kind of bridge like from the community I kind of get a kind of vibe of ops of
approval of that proposal but and that could also be a particular subset yeah and I think there's decent like work to do on the one X in terms of proving the bearing and proving and preparing the initial one X or the stateless stuff yes I think you know one egg I think one X stateless is going to be a huge priority this year does anyone not support this in the you know obviously there's a lot
a lot to learn and figure out before this would actually be something we do but does anybody have a gut reaction and the negative great it's also very a much cleaner way for eath one to utilize the scalable data later layer of phase one more direct way rather than like doing a bridge and exposing state routes which is nice yeah great no dissent it is if it is officially decided once and forever that's gonna
make it into a quaint us article great okay cool any other spec discussion general items we have phase one call coming up we're gonna have a networking call coming up we have some relaunches of main net SPECT test nets on the OU 9x release and we have a Oh 10 release coming out we also have a number of audits we have some economic analysis going on the deposit contract right up on the floor verification is being done right now yes there was an article by the theorem foundation on the theory
patch foundation blog that some members that their mother's here taking new direction with VIPRE compiler due to issues with the Python VIPRE compiler in the write up we will address these concerns and address the methods use that employed that are supposed in the formal verification of the deposit contract that are it's supposed to remove the compiler from the picture but that will be up to public review and comment very soon one of the reasons that has been delayed is because the process has gone through deeper levels of analysis in scrutiny then would have done otherwise because of the state of the VIPRE compiler I'm saying that for y'all and for the internet I know there
were some comments about that this morning on reddit another go anything else okay if you're going to eath den Bergh and you haven't already let me know let me know we might plans co-working or something like that I'm one of that some of the days before go see something oh there I know much people be in the Stanford shortly after and keep up the great work I wrote okay thanks thanks [Music]
[Music] [Music] [Music]
[Music] [Music] you
[Music] [Music]
[Music] [Music]
[Music] [Music]
[Music] [Music] [Music]
[Music] [Music]
[Music]