Fee Markets: How Blockchains Price Scarce Resources | Pranav Garimidi & Sam Hart
27 Dec 2023 · 1:26:21
Bell Curve host Mike Ippolito is joined by Pranav Garimidi and Sam Hart to trace how blockchains have priced scarce block space, from Bitcoin's original fee auctions to Ethereum's EIP-1559 and newer multidimensional fee markets. They cover the tradeoff between spam prevention and user experience, fee burning debates, credit-based alternatives to fee auctions, and how Solana's fee market design compares.
Speakers
Topics
Transcript
one analogy you can maybe think of is like the the government regulating radio spectrum the point of that regulation and charging for spectrum is not actually for the government to like to take in revenues I mean that that's a a great side product but they actually need to carve out specific regions and make make that non-c contentious so that the radio spectrum is actually functional for commercial and and public interest all right everyone we will be back to the program in just a moment but before we do I want to share something that blockworks has been cooking up for these last couple of months March of this coming year in London blockworks is hosting D London the largest institutionally focused conference in all of crypto Goldman JP Morgan 72 all in one room so you can know what the big
money is doing so click the link at the bottom of this episode it'll take you right over to the homepage and use Bell 20 for 20% off I will see you in Sunny London Town in March all right everyone welcome back to another episode of bell curve before we jump in quick disclaimer the views expressed by my co-host today are their personal views and they do not represent the views of any organization with which the co-hosts are associated with uh nothing in the episode is construed or relied upon as Financial technical tax legal or other advice you know the deal now let's jump into the episode all right everyone welcome back to another episode of bell curve today I joined by Prav gar midi of a16z and Sam har of skip guys welcome to the show hi
thanks for having me great to talk about you markets yeah happy to be here thank you yeah this is a this is a fun episode this is going to be hitting folks um when they're most likely in between their sort of Christmas and New Year's holidays and uh you know we couldn't leave you without content so we wanted to discuss I honestly I've been this episode Sam knows has been building for a little while it's been sort of a passion passion project um but I want to talk about Fe markets because I feel like they're extremely critical when it comes to um being a component of different blockchains and and they're not particularly well covered or even invested in from sort of Technical Resources from various foundations so you know we're going to sort of just give you a basic overview of what it is
that it means when we talk about fee markets and their various components actually going to take you through the development of uh fee markets in major blockchain sort of the Earth the fly first early primitive of uh Bitcoin fee markets 1559 in ethereum and then kind of take you through to salana and some of the interesting questions that they're starting to ask around rejiggering their fee market and then fin explore some very kind of cool new themes like multi-dimensional fee markets or fee credits that are being explored in different ecosystems so before we get to all that uh you know Prav Sam whoever wants to take this can you guys just give us sort of an overview and a definition of what it means when we talk about a fee Market within a blockchain yeah I'm I'm happy to take that we have a we have a Christmas
present for the listeners uh the most boring subject in in blockchains this is a podcast for nerds my man yeah so the it's interesting the the kind of origin story of the term Fe Market obviously comes from from Bitcoin um the role that the fee Market plays in Bitcoin um encompasses a couple different things so um the idea uh is is that users want to um transact on the network they want to submit transactions um they typically submit them to the miners um although the miners may not be the one
who select the block so they want to circulate the transactions and there's this uh kind of Cooperative process of Distributing transactions throughout throughout the minor Network um and the the fee Market is the process by which miners um would take in transactions and include them in in the block uh so it's a the fee that's included along Ong with the user transaction to the minor um that allows them to to select um those transactions for inclusion um however the the role that um the fee Market has played and and kind of How
It's conceptualized has changed a bit so for anyone familiar with like ethereum fee markets or solono fee markets like that definition doesn't quite um drive and uh what it's what it's kind of come to mean is a way to price network resources um and uh it it touches on um a kind of ephemeral resource which is block space or or inclusion um within the block yeah I think maybe to add a bit in that I think the way I think about fees is for first reason of like why you can have fees it really comes down the fact that just block space is scarce in the first place and so we imagine we had
infinite compute we get every transaction on chain then it actually be fine if you had zero fees but really there's like a core Ecom problem you have to solve we have lots of people who have transactions that want to land on chain but different blockchains can only handle so much throughput so you have to somehow solve this problem of like what transactions actually lend up in a block and kind of the most natural way to do that is just via charging fees and you know as we probably get into there's lots of ways you can do this um but in some sense kind of like the amount user willing to pay for transaction in some sense correlates like how ecomic valuable the transaction is in terms of the overall blockchain and so these have kind of grown and evolved in some way
just like kind of solve this core economic coordination problem of how do we decide which transactions actually should lend on chain yeah I I think you know that's just a very good uh summary um both Sam fov there but maybe to just like describe how fees I feel like are sometimes normally talked about is you've probably seen something like a p&l of ethereum and people talk about fees as being revenue for the network um I have sort of an opinion on that framing how appropriate is it you know to view fees as revenue for these networks yeah it's a good question it it's hard to answer um the from the protocol designers
perspective um I I don't think that they are necessarily intended to be revenues um um however when you look at Bitcoin uh the long-term security budget of the network is dependent on fees at least notionally that that's what they're trying to achieve so there is in in that case um a connection between the the fee revenue or the fees taken in um and the sustainability of the network uh but the miners are the ones that are are receiving those fees directly um so the the Bitcoin Network itself is is kind of
a pass through um it's really concerned with operator sustainability yeah I think one tricky thing with this question is that defining who the network even is is a bit tricky of like um is Network all token holders is it all stakers is it validators and so like in practice the way fees have evolved it's there's lots of decisions you have to make about who fees go to exactly and so I think there's like two different ways you can think fees and like at one extreme is like literally just at a single block level of like next Block's going to be proposed in ethereum you have 12 seconds we have to decide what transactions get in we want to have payments to facilate that coordination and like you can kind of forget about the long scale effects on the other end is the extreme is kind
of okay let's look at how much we're charging you know over 100 blocks a thousand blocks over a few days how much are we burning what is the actual kind of like how are the fees playing with the monetary policy in some sense the kind of network as a whole and token as a whole and so I I think those two questions are kind of related um but the kind of goals you want for them are not necessarily the same and kind of require different ways of thinking about them to figure out what you want yeah I think one theme of this especially when we get to 1559 is maybe the rewriting of narratives I would say and uh I think originally how fees were thought of especially in a proof of stake context and see this very interesting sort of uh there there maybe
a different slightly different function in a proof of work Network like Bitcoin is proof as opposed to proof of stake but it's it's really rate limiting right it's it's sort of spam prevention um you know denial of service attack prevention because block space is a scarce resource which is dependent on this shared network of different uh you know basically Computing Computing Hardware so to make sure that people aren't flooding the network with Spam transactions then you have the concept of fees and so somewhere along the line that got Rewritten as this is the the revenue of the network and people construct ethereum pnls and to me that just doesn't make an enormous amount of sense because as you rightly point out it's hard to even Define who the network really is and actually miles and I you know who's a co-host on this program
pretty often we have these debates and our analysts debate about it all the time but probably the my current method of thinking is if block space is a commodity then that's something like oil you would never call oil having a pnl there are sets of actors that are involved in the oil ecosystem that have uh pnls uh that dep on the price of oil but ultimately oil in itself or eth block space in itself can't really have Revenue so I feel like that's a little bit little bit of a reframing away from its original intention which is Spam prevention totally um one one analogy you can maybe think of is like the the government regulating radio spectrum like the point of that regulation and charging for spectrum is not actually
for the government to like to take in revenues I mean that that's a a great side product but they actually need to carve out specific regions and make make that non-c contentious so that the radio spectrum is actually functional for commercial and and public interests yeah I think we're seeing this even as ethereum is evolving today of like kind of different discussions around me burn and this type of stuff of kind of trying to almost like normalize the amount of like transaction fees and kind of like application L level like kind of these that go Dev validators and almost in some IDE I mean you can argue about what the ideal thing is here but one thing you can imagine is if you want
to actually have like a fixed reward to certain partipants Network that shouldn't be kind of probabilistic then you want this kind of variability to be burned and in some sense that is revenue towards like holders but it gets a lot more complicated and it's really just I think there's different ways you can redistribute kind of the gains from trade to some extent different parties depending on what goals you're trying to achieve yeah and I think this framing is important because there's there's a pretty long-standing debate on within crypto about fees and it this typically comes down to or at least in the current moment it's like are the high fees on ethereum bad and you get there are sort of two camps and in my opinion they sort of talk past one another and in the one Camp is look high fees mean high demand
um and then they you know usually like revenue for the network is kind of brought in and like that's ultimately a good thing and then there's this other Camp of hey this actually isn't a good thing at all really what users want is low fees and eventually people are going to move off this sort of high fee environment and I I have kind of thoughts on this before we get into sort of our history and 1559 example but you know where do you where do the two of you sort of fall within this debate or how do you think about that yeah I think for me it's um to Define what's good and bad you really do you have to kind of first Define what your objectives in the mechanism are right so in some sense if you do want like the highest secured kind of block
space that you can totally rely on to some extent um then like maybe that is like high fees is the cost of that of like you do have to actually pay some parties to be incentivized to be providing the service to some extent and like in that case High fees really makes a lot of sense other cases if you do want disc users to be submitting kind of simple transactions that don't require the same level of guarantees in the block space to perform well and you really just want like clean ux and low fees do make sense and so I think there's different environments for saying High fees and low fees are better or worse I mean I think in general like you can say lower fees are better but that comes to trade-offs of like if you are having less Revenue to certain parties then those parties are less
incentivized to invest in certain infrastructure to kind of ignore malicious attacks and kind of all these types of things and so I think to be very careful what exactly tradeoffs you want and adjust what you think is optimal based off that yeah I'd agree with that um in in Bitcoin these are are kind of intrinsically connected to security um because they they have kind of committed to not having Perpetual issuance um you could imagine issuance being modulated uh such that um you always know that the operators of the network are going to be suff efficiently
compensated um and other networks have have tried to decouple those things um they have other objectives potentially um maybe they have different kind of resources available um maybe they have different application Behavior Uh maybe they want to subsidize um these early on in order to um to acquire users um so there's you you may even change kind of your your outlook on fees um as the the network matures so there's a lot that kind of goes into into that one number if yeah one other one other um framework that at least I've been thinking about
it recently is there's an element of almost like dead weight loss optimization I think and here's like a sort of a silly analogy that is sort of imperfect but if you think about uh a blockchain as uh as like a factory as like a resource that's sort of fixed and what you're trying to do if you have a factory is you're trying to you have a Target utilization right uh for your resources within the factory it's probably not 100% because then if there's any fluctuation in demand you're kind of out of luck so maybe you know different factories might have different utilization targets of say 85% something like that so okay in this instance our our really high fees good
well means you have a lot of demand for your factory but on the other hand it means you're probably surrendering some Demand right there's probably a lot of demand that you're not ultimately satisfying if fees are super low well guess what your factory probably isn't viable over a long period of time and you're going to be flooded with tons of useless stuff so I I would almost use that as like a mental model of having this scarce fixed resource and there's a there should be almost like a Target utilization most likely and and maybe that's going to lead us into 1559 actually and 1559 is like an extremely interesting period I would say in overall crypto development I think outside of the merge it was probably the largest single largest upgrade or update to a blockchain and uh it just very
interesting historically so maybe um I'd love to actually start with the same you were giving us a little bit of an overview of the the fee Market in in Bitcoin but if you could just kind of rehash for listeners like how did the the fee Market in Bitcoin work and then let's take us through to how it initially worked in ethereum and why you know we started to talk about 1559 as this big overall yeah happy to so I mentioned that um there's this thing the me pool which is kind of this uh this subjective view of transactions that um a minor or or validator has um that they can they can pull from in order to include transactions in the block and um they need to apply some um local rule to
include transaction and so in Bitcoin the um the way that um miners select the transactions that are in the block is they look at the the transactions with the highest fees and then those fees go to the minor um so that is their their payment for creating creating the block um particularly in in this kind of like perpetuity case where the um the issuance is diminished so that model was um well there's a couple things about that about Bitcoin that that are worth understanding one is that um because Bitcoin is is sufficiently constrained in what it can do um you can
basically just transfer tokens around um they uh we had sent previously that like fees are are are kind of a way to price resources well all the resources um the utilization of those resources looks very consistent um you're making a transaction uh and so you don't you actually kind of know ahead of time like how much it's going to cost the network for an individual transaction um and uh so there's no notion of um you don't have to have like an a resource abstraction itself um you don't have to kind of name that resource
when you move into ethereum you're going into this this kind of generalized uh platform where you can do smart contracts you can really do any kind of programmable logic and you uh this requires the introduction of something called gas and gas is a really uh kind of squishy um object it is really a kind of composite of many different resources that exist in the network um so that's like Network bandwidth uh network storage comp computation um there's actually a couple different flavors of storage that are included there um and basically uh those are all kind of
combined in a somewhat magical way to um to create uh a single like unit gas and any computation um uh will will utilize gas um so to perform a transfer in ethereum it costs x amount of gas gas uh however the um the what you pay in ethereum is not gas it is eth right you pay eth to transact on the network and so there needs to be a um an exchange exchange rate between gas and eth um so this is what's called the gas price um and this
is kind of the uh um this is the the core uh variable in um in EIP 159 um as well as the the the former um View Market in in ethereum basically where ethereum started was by copying Bitcoin one: one with this one kind of um change uh with the introduction of gas and then as the network kind of uh was sufficiently utilized we kind of discovered additional dynamics that uh like emergent behavior um which a lot of it has to do with the applications that are built on top
um and um and it was kind of one of the things if you were transacting on the the ethereum network that you would you would realize is that um uh often times you know so three years ago if you're you're trying to use the ethereum network um You' submit a transaction and you'd you know be kind of like Guided by metamask you'd submit it and then then you'd wait like 10 minutes and You' just be kind of in this limbo place where you don't know what's going on like it was horrible just out there somewhere is it ever gonna land and then and then you would there's like an advanced uh menu where you could like resubmit with like
a different nons in order to kind of like override but then you didn't know if like your first transaction was going to make it in before the other things it just like really really really just heads scratching um and it it was it was terrible ux it just like did not feel good um it was it was clearly not the future of Finance um and so that was really the core issue that EIP 1559 was trying to solve was um was uh giving users additional certainty that they were going to make it in the block um within a reasonable amount of time um and uh and being able to select a price that
was just okay this is what what it costs I can read it off the network it's telling me this if I submit this I think I'm going to get in the next block or two blocks or you know and that's sufficient for me I just yeah I just want to underscore that for folks who might not have been around or transacting on chain or using ethereum uh three years ago like just exactly how bad it was I know you just kind of gave this example but yeah you would log on you know you have your metamask you want to trade something on Unis Swap and there was a there was a mechanism right which is basically like a first price auction where you could you you had to select how much gas you wanted to to pay essentially and you got no guidance right usually the way that this would
work in practice is at least this was what it was for me when I was trying to do my first swaps is I talked to a friend I was like hey how much like gas should I be giving and someone would tell me something and I would just put that much gas like that's such a hilariously bad user experience um because you had no information about whether or not that was good or bad you know there was real surges in demand where in sometimes like you could pay x amount of gas and it would actually work uh sometimes it just wouldn't work you'd have no idea why uh you were paying an enormous amount in gas fees that for transactions that weren't even Landing um and so I think that idea of copy pasting the mechanism uh that administered the fee market and priced resources from Bitcoin to ethereum is
the thing to underline here so obviously ethereum is a very different has a very different value proposition it's a general smart Contracting platform there's much more that you can do with it but it introduces a very difficult pricing and optimization problem around resources that Bitcoin doesn't necessarily have so we had kind of a first whack at the Apple with our you know first price auction that didn't really work as a mechanism and to your point Sam I think in when was probably I mean I know you were involved but 2020 sort of time frame said hey we need a major user experience update the ux uh just to again underscore was the that was the main driver for why we needed 1559 so walk us through like I think people when they think about 1559 today
would be like yeah the token burn and ultrasound money right that's what people sort of think about but um you know walk us through like what were some of the early conversations around ux in 1559 and I gotta shout out Tim Ruff Garden who's basically holding up the entire burden of producing content around fee markets on his on his shoulders here but walk us through kind of the Innovations like the three different Innovations I suppose or features that 1559 introduced yeah just just before that I I feel like it is worth mentioning that um because ethereum also introduced the full programmability what that also created was State contention in a way that um Bitcoin did not have um
so uh this is kind of adjacent to fees but it like uh historically basically the network started getting used more and more and um this problem of like waiting for fees was exacerbated by what we called priority gas auctions and um when there was an nft drop or like someone was using a DEX or whatever um basically this is me like early me um the user experience would just degrade entirely so um the the way that validators would or miners at the time would select transactions would would be based on on the the fee um they would get the fee
and um they the the mempool would just be flooded with um these iterative bids that were for trading on dexes specifically and it would just mean that a normal user would have no idea what's going on and and just be kind of waiting there for for minutes you know who knows how long yeah yeah I just one first point that I think it points out like a very interesting thing where there's kind of like two things fees do like the first is guarantee inclusion to some extent and the other thing is also kind of guaranteed priority for state and so I personally think like it's very tricky to make the same te mechanism do both
things like kind of optimizing for one necessarily almost degrades the experience for the other if you like kind of design your fees in a way where people can express very fine G preferences over I want exactly like the third transaction in the block or something or something like this then it makes the people who are just kind of making bids or submitting fees for that I just want to express I want to get inside of a block kind of tricky to interpret what else is happening that same block for example you know if like four people are submitting I only want to be included like only in the third spot and those are all the fees there and that's a user who just wants get inclusion if I see all those fees I now to interpret oh that's not actually for transactions taking up block space maybe
it's only one that the block producer will include or something and so I think that's kind of why on the ethereum side we've seen this part of fees move offchain for the most part of kind of this is what's been happening with PBS and kind of Builders and proposers doing all this typ of stuff is basically um you kind and that's one of like the early goals of flash Bots is to just make this kind of auctions for State contention happen offchain then let the fee Mi itself kind of only happen or only kind of worry about inclusion and so so I think that is kind of to start talking about e59 that is kind of the guarantee it gives you it doesn't give you any kind of guarantee really over even though there way to exess Priority free there's no kind of explicit guarantee that oh if you submit a much
higher fee you're going to get higher in the block right and so I think when I'm thinking about um fees there's kind of two main um important properties of the first one um kind of acemic literature we call DC which basically stands for dominant strategy incen of compatible and this basically says from a user's point of view if they value a transaction getting included i' say x dollar then they can simply put tell the mechanism I'm willing to pay up to X dollars for this transaction and game theoretically that's the best they can do and that doesn't mean they'll always be charged X dollars they'll actually be charged much much less usually it just basically means that it's very easy for the user to interract the protocol from a game
theory point of view and so in this prior world where we effectively had these first price auctions kind of happening this wasn't the case right from the game three perspective from a user you're kind of trying to do this calculus in your head of oh you know I don't want to pay that much but maybe won't get included so maybe you'll pay a bit more and kind of like work out for yourself with the minimum amount you're kind of willing to take a risk on is for kind of how much money you might save by not biding too high and so kind one primary goal of e59 is that that's shouldn't be the case the kind of you see this base fee you place that base fee you know you should basically get included there's no G through the Us Part the the other important part is
that um what was previously called mmic and has been called kind of mic and I called bpck in a recent paper of mine um is basically just saying that the block producer the person kind of running this mechanism uh should be kind of have their incentives aligned throwing this mechanism correctly it's all well and good to have this like kind of very nice mechanism that from user point of view like looks great but if the person running the mechanism in this case for ethereum is a person constructing the blocks the proposer it it gets more messy these days but kind of you know going back to when 1559 was first introduced at least like kind of the minor creating the block you know if they aren't incentivized to actually follow the protocol as stated and if they start
kind of messing with the the game through the mechanism kind of all the guarantees can break down um so that's the second thing that's also very important for the person running the mechanism to actually want to run the mechanism in the proper way and then there's also kind of a third goal B15 which is called OCA proofness which stands for offchain agreement proofness and the idea here is that you know if your mechanism is kind of doing this very suboptimal stuff like you know kind of these first two properties you can trivially guarantee in some like kind of weird mechanisms of say like oh you know we'll always randomly select what transactions get included kind of like you know just kind of trivial stuff that obviously be really bad kind of this third property
says basically that there should be no way for the people participating the mechanism in this case would be kind of the users and the block producer to basically just do something else off chain make some agreement offchain and say you know we'll just like post all those bids on chain or like kind of they'll post some different bids on chain um but in reality kind of will I just guarantee this allocation that's been kind of given offchain and so it's kind of like a form of collusion proofness of saying there shouldn't be ways for groups people to kind of collude off chain and through some tricky way bypass the mechanism and so kind of or it turns out with these three constraints that EIP 159 is kind of almost the best you can do in the
setting um and kind of it actually manages to do a very good job of T kind of targeting all three of these concerns and um yeah making a feasible mechanism that kind of gets all the properties you'd want yeah so so to to sum up you know basically when you're designing one of these mechanisms you're doing it in an extremely adversarial environment and there are all these Game Theory uh considerations that you have to take into account when you're designing it to make sure that it doesn't get abused in various ways and so to summarize then I'll I'll turn it over to you to you here Sam the the basic components from how I understand 1559 is the introduction of a base fee right so instead of instead of uh you know before
where you had to guess the amount of gas you were just told in your met like right now if you trade on ethereum you're told like this is what the base fee is going to be um That Base fee one of the big changes of 1559 as well is you made blocks dynamic in size right so there's kind of a Target and an actual amount of gas the actual is twice the amount that that that the target is and so basically what you get with this um sort of dynamically adjusting base fee is you get an onchain sort of um indicator for demand for Block space which is also extremely useful um and then finally what you have is a a sort of first price auction that's layered on on top of that so that you can still Express this preference of like I want
to get included first and one of the also the the other extremely important components that we'll we talk quite a bit about because I feel like it co-opted the narrative a little bit is this idea of the burn so the burn um which I think now has been sort of understood as this like ultrasound money revamping of ethereum's tokenomics it was actually to prevent this exploit and make it Game Theory compatible which is basically that let's say if the the amount of gas was going to be $90 right $90 equivalent in guay uh what you could do very easily is to create some sort of offchain agreement between the M the uh minor at the time I guess now a validator and whoever is going to pay and said look I know that I'm being quoted on chain 90 $90 equivalent here
but I really want to pay $60 so you just rebate me the $30 and so by burning that fee instead um what you actually do is like the fees got to be burned so there's really no reason to do it offchain now I would say interestingly I think to to make this I can't remember which one um which game theory component compatible but you it the only thing that it dictates would be that the current uh minor of the block doesn't get the payment so there were talks in 1559 to like pay the next uh minor validator or something like that we didn't have to go down this burn rout that was just one way to make it compatible um but it is interesting because that's what we ended up settling on um yeah I don't know Sam if you have anything to add there that was a great
explanation I mean really really well elaborated M um yeah the burn is just like a direct consequence of this desire to have a base feed um you don't want an offchain agreement because it doesn't allow you to have this property where you can read off an accurate uh measure of um of demand pricing um and so you really need to like have the primary Market exist onchain um so that the burn um prevents the offchain agreement uh the market is now on chain and and now you can use the the base fee as a um an accurate
representation um to kind of compute the next um the price to be included in the next block um yeah so like you're saying the these three components kind of like work in harmony to uh to allow you to have um both uh equilibrium behavior that that is um you has good ux and predictability and um consistency and um prevents some of the the adversarial Behavior where um there would be offchain agreements or uh or mispricing that would that would kind of degrade um the the quality of
the mechanism all right everyone we will be back to the program in just a moment but before we do I want to share something that blw has been cooking up for these last couple of months March of this coming year in London blockworks is hosting Das London the largest institutionally focused conference in all of crypto we are gathering 1,200 of the world's largest asset manager so think trafy macro funds Crypton native funds big allocators and financial institutions so Banks payment processors Etc all in one spot it's very rare to get the likes of Goldman JP Morgan 72 whatever all in one room so you can know what the big money is doing we're diving into the themes that they care about so we're talking about the intersection of macro and crypto where we are in the cycle real world assets so everything from stable coins to unchain treasuries
to tokenized assets it's going to be a blast but the other reason you really want to go is London baby center of the world at one point you got Pub culture you got fish and chips great beer it's going to be a blast so because you're such great listeners to B curve there's a Code Bell 20 that's going to get you 20% off so click the link at the bottom of this episode it'll 'll take you right over to the homepage you'll see all of our speakers and use Bell 20 for 20% off ticket prices are going up soon make sure you go use that code I will see you in Sunny London Town in March one of the interesting things that I feel like I'm honestly surprised that it ended up getting past with this was the idea of burning Revenue to miners which at the time must
have seemed just really funny because that was that was their entire Revenue source and I I went back and listened to a couple of the the Tim Ruff Garden episodes that he produced and you know he said actually what people really wanted was like some sort of studies uh to make sure that this mechanism is compatible and then all their revenue isn't going to go away and I don't have these stats off hand but clearly you know minor ethereum minor and proposers have done extremely well in the post 1559 era and that's from you know increasingly the desire to bid for um you know state where there's quite a bit of contention so that we're starting to get into Meb land but yeah I just it's just very interesting that that passed frankly looking back totally I so I was
in this like very early group chat that was talking about EIP 1559 and for like a year and a half it was just completely hopeless it was like we're doing this talking about this mechanism how we're going to test it whatever and everyone was just like yeah this is this is an uphill battle um one of the things that one of the kind of social dynamics that was really useful here I I guess in in getting it past um was uh the plan was for the ethereum network to fire all miners eventually um so the uh the ultimate responsibility uh really lied with a set
of participants that didn't exist yet um who didn't really have a voice in in the decision um miners were still pissed but uh it was kind of tolerated particularly because me Revenue was like was popping it's it's just an interesting I completely forgot about that Dynamic that yeah ethereum was about to fire its miners transition to proof of stake which makes it in some ways easier but also in some ways even more complicated because you're dealing with this and that that is I think when it comes to fee markets wide so it's necessary to upgrade at times but it's so difficult because it's just a redistribution of value that the system is ultimately creating even if it's a ux upgrade for all
you know one one thing that's also interesting that maybe I just point out and would love to get your guys response to is even in real time if you go back I don't know if there are other nerds like me I like to go back and listen to podcast episodes from previous periods of time it's just very interesting to see how people were thinking about an idea and how it might have changed over time it gives you good views into the zist of different eras and you can go back and listen to early 1559 episodes and they talk about it from this ux upgrade perspective and it was hey this is unusable this would be really great for the user as Z yata and then I think as the burn mechanism became the preferred mechanism for prevent making it Game Theory compatible uh people started to talk
less about the ux part and more about the burn and it started to shift into this discussion of tokenomics and ultrasound money and the narrative was sort of Rewritten in real time and you can go back and listen to podcasts over the this happened over about a six-month time period and it's really fascinating and I would love to get the from your guys sense like how much do you agree with that sort of narrative you know at the in the current moment in time is that ultimately a good thing for ethereum to be talking about it as a revamp of tokenomics or in your mind is this just this was ultimately a ux and a fee fee Market change and we kind of lost the message a little bit yeah at least for me I think it it mainly a fee Market change um and kind
of the impact it has in the actual longterm tromics isn't even kind of well defined like there's different potentiations of how this could play out where it's not actually necessarily being deflationary it's just like kind of how the parameters have played out over time is like this is what's happened um you know like if the demand goes down then like you know it's still inflationary so I think it's like in the kind of short run just designing this mechanism at least person think is mainly like a ux thing mainly just like a get the game through incentives really right to make this like a really robust mechanism kind of just block by block by block and then long-term Dynamics are always really hard to predict and I think yeah narrative change and people care about different things but I definitely view it as more of a game
three ux thing than a toomics thing yeah I can add a couple notes on this there was some discussion of like sending the the revenue to of like public goods Dow and that was like batted down because kind of it was thought that uh there was certain actors who thought that that was going to be like just a whole kind of corruptible um not partisan uh entity um so it kind of ruined the the credible neutrality of the system um in Cosmos people are just kind of do whatever so like a lot of the the talk is about like
yeah let's let's put it into a treasury and do something with it um so um I believe near also does they have e59 um and they burn half of it and put half of it into a treasury so there's like a lot of different flavors to this um you could also distribute it uh evenly among all validators um that that's an option um although there's like some computational constraints around that um so yeah there's there's some interesting things that you could do um with regard to the uh deflationary aspect um yeah I it certainly just came out of nowhere at
the time um I can say one of the things that was nice about thep 159 is like when you contrast it with bit Bitcoin you you could imagine like validators actually having a a lot more certainty around their revenues um because you're getting it from the inflation rather than just like spiky inconsistent probably kind of hard to model like uh fee the intake um so that was good but um the the yeah the actual protocol um using this as a way to like decrease Supply I um I don't know I'm
not as married to that concept um if I'm being honest like the this seems to be kind of lost people aren't actually talking about the the issuance policy of ethereum at all I don't think many people could even reel off what that is but um that is the dominant um determinant of the amount of eth in circulation so like you kind of want like a more holistic view of um how how eth is created and destroyed together yeah I don't want to go too far
far off on this but there's I think I do think that this topic is going to reenter the Vogue in general this year and uh yeah it's I think the I actually just came off of a predictions episode I I personally you know I don't mean this to sound like it as an attacking sort of way I've never been a fan of the ultrasound money narrative I actually think eth gets a new narrative uh this year was a prediction um and that doesn't have to be a bad thing by the way Bitcoin has gotten many narratives over the years I actually think it's it's a sign of strength right ultimately we're we've invented a new commodity which is block space and people are still people are going to try to jam it into a whole bunch of different things I've always thought it was like a little
we read a little too much into like is this money or a commodity like it's just useful but um but I do I do think that eth gets maybe a a new narrative this year around ultrasound money I I want to move on to salana and salana is obviously a much newer blockchain than certainly Bitcoin and ethereum as well it has a very different uh constru ction both in terms of how it thinks about Hardware uh validator costs and Hardware requirements the role of the validator the way U they come to consensus as opposed to like continuous versus discret block building and have kind of an entirely different North Star and I think one of the one of the upcoming challenges is I think the Salona
Community is generally starting to think about maybe to confront the idea that the way that they price resources internally their fee Market is not at its end State and that there needs to be an improvement and it's starting to heat up as kind of a spicy issue within the salana community so POF can you give us an overview maybe just for folks who might be a little bit less familiar with how salana Works under the hood no need to go super in the weeds but just a just a little bit about how Salon is different from ethereum and then give us a state of the overview of the fee markets today and and where it might be broken yeah so I I think the main relevant differences between Sal ethereum in terms of feed is the first thing is that you're forced to declare kind of access lists up front
of um for every transaction in salana you have to list kind of every account that transaction might interact with and if transaction doesn't interact or if the transaction tries to interact with an account that's not as part of that list then what will be invalid and the reason for that is basically that salana uses a parallel execution environment compared to with theum single kind of thired execution environment and so kind of in order for salana to process transactions in parallel it has to make sure it's in kind of creating conflicts between these transactions that's processing at the same time and the way decides to go about this is that it uses these account lists as kind of a safety measure of
saying that you know if two transactions are being processed at the same time then they better not have overlapping account lists and then you kind of get the safety guarantees and execution and so kind of what that means from a fee perspective is that when transactions are getting included they're not kind of only Bound by the fee the kind of user submits they're also Bound by this account list basically so in etherium red where kind of if your transaction pays the base fee there's spased in the block it can be included that's not necessarily true in salana the case that if there's too much kind of contention on certain accounts that you might want to interact with even if
you're paying kind of their base fee um you might still not get included and I guess kind of one other detail is that whereas ethereum has a base fee that's basically um kind of charging you per kind of gas unit you're using in Sal they call gas CU um but there's not a similar thing if there's a Bas fee per CU instead there's kind of just a fixed base fee per amount of signatures the transaction verifies the idea being that kind of this signature verification is kind of one of the costliest overheads of actually executing a transaction so charging for just that is kind of a good proxy um this has some uned side side effects um which I think is kind of part of the reason the community is kind of kind of discussing ways to kind of build
upon the Fe mechanism um but kind of just like at a very high level the way the the Fe mechanism works today is that there kind of just is a static fixed Bas fee so it's also not Dynamic like ethereums is so it's not kind of Shifting Up and Down based off of current demand it's kind of a fixed fee per signature transaction verifies if you pay this kind of that's all you need to be considered valid and then there is still an optional priority fee per C Unit you use and so in times of contention you know users might decide to actually utilize this kind of priority fee to have a high chance of being included to kind of you know incentivize the person building the block to pick up their transaction um and so at a high level the Fe mechm is actually like very
simple in that sense if it's only doing these two things it's only it's only consists of a static base fee that's not changing per signature verification at an optional priority fee per CU that you use I think the the tricky thing is kind of some of the things you mentioned about like how St actually builds blocks in a continuous Manner and in a parallel Manner and so kind of to start with um some of the additional concerns come from it building in a parallel manner in order to actually make sure that um every block is kind of fully using fully utilizing the parallelization Sal has an additional constraint from just kind of the total amount of C of block uses to an additional consider in the total amount of Cu any account can actually use so for some concrete numbers kind of every a block is 48 million CU and they
say no Trend no account can have more than 12 million CU kind of use it in a block right and so the idea being that Sonic expects its valuator state to have four at least four threads to be used for execution and so by kind of capping any individual count at this kind of four of the total block space uh kind of you some exent guarantee that like you can still execute this full Block in parallel and not you you can imagine become of very adversarial blocks where if every transaction was interacting with the exact same piece of state it might have to be processed serially and you kind of lose all these benefits of paralyzation and so that's why want to add some of these different constraints
on like kind of different accounts not just have only kind of a hill block space constraint but this then has some effects on these and so to one extent it's kind of helpful and that's kind of what causes this phenomena of local fee markets um that kind of son is discussed before kind of informally in that you know an EV validator is solving their optimal block packing problem um since they have to respect these additional constraints on per accounts um for certain accounts like say for an N drop or something if this account is getting tons of hits maybe above its 12 million limit then the kind of person building that block is going to start wanting higher fees um to like kind of get into the queue for that account compared to the rest of the block maybe that's not as contentious maybe it's just kind of
payments and transfers back and forth so there actually is ample block space there where there's not as much contention and then users don't need to pay the same kind of priority fee and so I i' say kind of the way it's implemented today is a bit ad hoc um and kind of kind of just relies on the validator or the person building the block kind of following these big incentives to solve the block packing problem somewhat optimally to kind of infer these prices um I think there's ways you can improve on how you can do this to make kind of a more explicit Market some extent like kind of how the same way kind of VIP 1559 says like here's kind of like a base fee that like you know you can pay this you can definitely get in that's not really the case in Sonic because of these kind of
accounts that might be more less contentious and you can imagine different models that say here is actually an explicit fee for certain accounts and if you pay this fee for this account like you'll definitely get in and like here's this menu of fees that you can you know you can add or choose or pick from basically um depending on what accounts you might want to interract with and so basically yeah just the fact that kind of this thing is happening the th has to work in a parallel houan environment makes this whole problem how do you allocate block space a lot more complicated and in turn has effects on the fee Market that is a big reason why the community is kind of looking to see if there's ways we can improve on the current state yeah I would say um I've got a lot
more to to dive in there but you know for folks folks and might be if they're not as familiar with some of the me the mechanisms of salana that spam is a massive problem right this is the sort of okay if you don't have a more sort of granular and restrictive policy for pricing your compute you lower the fee then ultimately when you're going to get is a lot of spam so for the last two years what salana has spent their time doing is trying to keep design a system where you can keep the fees low uh but still you know get all the benefits of an extremely fast so that's where you have things like local fee markets which are because you have to specify State UPF front then a bunch of the transactions that aren't touching contested State can kind of just go through in their regular
cheap way but you could almost imagine sort of mini auctions that are happening time for those contest contested pieces of State um but you know as you were alluding to oh sorry go Sam I just want to like interject one one little thing about spam which I which I think is missed sometimes but but ends up being kind of crucial which is we kind of listed out a number of resources that the network provisions and um you know in those were uh block space itself kind of inclusion and uh the and bandwidth and um these are actually separate uh separate resources they're they're kind of like related but separate and so um
performing a Dos attack on a uh specific validator um costs nothing actually uh in any blockchain really uh the just cost whatever cost you know the botn net cost um because you can ping their RPC with anything um so the the way that validators typically try to defend against that is by having some degree of redundancy or like uh uh setups in in multiple locations um using caching and and there's like a number of different defensive measures um uh there's also spam for inclusion in the block uh and and access to State and
this is what um what salana has really been laser focused on um but it's just important to kind of disentangle these two because um they can't be solved by the same mechanism um they they actually need to be treated uh independently and um and priced as as such and I also one interesting thing SAA does on kind of the first of those attacks in network but it actually does require um so I'm not as familiar with kind of the network details of sauna but they do require kind of rpcs to stake a certain amount to some extent or that details aren't quite like that but basically you know validators kind of kind of distribute transactions uh based off kind of stake
weighted or the kind the network topology of how networks kind of propagate through different nodes um nodes with kind of higher Stakes get more messages and so so if you're like a fully unstaked RPC or something you can't actually spam a validator because a validator might only open say like you know 5% or 10% of their kind of bandwidth towards listening to you versus listening to the other people who actually have stake to some extent so I I think there's a different that different mechanism son uses to kind of use some the economics around staking to get around the spam problem but yeah it's definely there definitely is a separate concern of kind of me type spam of people looking get in the back of a block or something that's interesting I I want to just bookmark that exact
concept and that will sort of be not exactly related but you can squint at it and see something very similar to this idea of feed credits actually that'll that'll come uh later so all right walk us through because one of the um like there's a lot of sort of agitation around Builders to revamp fee markets within salana and we talked about how it doesn't necessarily make sense in one of the ways that ethereum I don't know if it's fair to to call ered it was just it was always going to be trial and error but um you know when there was a onetoone copy of bitcoin's fee Market to ethereum's fee Market it didn't work because the blockchain had a very different vision for what it wanted to be uh proof of work versus proof of stake all this all this stuff right so
walk us through kind of what are the what are the key pain points from the perspective of Builders and entrepreneurs on the slana blockchain and then like how can we start to solve that like how which parts of 1559 we want to borrow if any which parts would break or be less applicable and kind of like guide us through towards solution land a little bit so I think one key part of how the markets end up looking like from ux perspective is how hard they make the block production problem and so this also a difference between the fact that SAA has 400 milliseconds for syum you have 12 seconds to build a block and so so okay so for ethereum when you're building a block um as a block producer you just want to kind of include every
transaction the hiter Bas Fe and kind of the highest sum of those this isn't too hard algorithmically you can kind of just say okay like I have until maybe 8 seconds in the slot to fin propose something let me just listen here like Al sort everything you know I'm just tracking this one compute number um as long as you know I'm like below the the maximum number it's fine and so it makes kind of this adhering to the the block or the kind of the e159 mechanism not too hard and kind of in something compatible all these kind of nice things on Sala that's not the case at all just because of this kind of so first of all it's 4 milliseconds with a much higher kind of throughput so you're having to just like pack transactions way more
quickly and the second thing is you do have to respect this kind of like parallel execution environment and so what that means is the block production um actually has this thing the scheduler basically that's like kind of big into the client today but you can imagine different ways to do this and so the Schuler basically has to listen to incoming transactions and then kind of just like pack them immediately and then kind of like maintain some state of like what accounts are currently locked because you know transactions being processed or writing to those accounts where transactions aren't locked you know use different kind of priority cues and like different types of on transactions touching different accounts and making sure they get scheduled and this is all happening very fast and so you can
imagine sometimes like Things fall through the cracks of like you know somebody sets a very high fee but kind of theer was like between cycles and kind of you know blocked that transaction for some reason because some other transaction came in just half a second before that's being processed now it just has to wait a bit and you know so like so things like this can happen just because it's just more technically kind of demanding to build these blocks and it has to happen much quicker and so the same kind of guarantees that you might get from just simply saying you know have this have a base fee s a priority fee on it and since of all makes money they'll definitely include it a big tricky to reason about um on son I think it's especially this local fee Market thing definitely makes things
harder too of you can't actually just say like look at this base fee pay it and get in um you as a person kind of submitting transaction you know whether that's like a adapt developer kind of figuring out how they should structure a smart contract or like a user kind of trade you have to kind of be cognizant of hey like look at the network right now like there's nment happening it's on this exchange or maybe like there's some other thing happening people are very active in this kind of local state I better put some priority if you want it to make sure it gets through and I I think kind of the way that just because of how hard the underlying block production problem is uh the way that production problem actually respects how much you're putting on fees um it's not super great so kind of in Sol World R
almost like ethereum in the pre1 159 1559 world of where people are kind of having to guess in their first price auction sense of like you know like how much priority really should I put uh to actually get it included and one nice thing is kind of the absolute amount of these fees and dollar terms is way lower so it's not as much of a concern it's not like oh do I have to pay $10 or $20 for a swap it's like oh maybe do I have to pay like you know one tenth of a scent versus two t0 of a scent and so that's why it's not like quite as painful um and that you know as a user may be usual until I kind of like Max click this priority fee um but I think we still haven't seen kind of all the
different kind of ecosystem players in s in terms of like wallets and different daps to this extent kind of like fully kind of fig out how they're dealing with priority fees I think there's like some kind of default set which influences this kind of behavior of you know if everybody else is setting these relatively low priority fees and I also not to set that much of a higher priority fee but you can imagine games start to emerge once everybody starts really fully playing the first price auction then things can start to break down and so I think things have generally worked fine um with like you know ux annoyances um but yeah it's part of the reason I think the community is trying to revent fees is to kind of foresee these problems that might come ahead um with people starting to play various games with priority fees and different
ways to kind of abuse the fact of the block production problem is harder to get an advantage and to figure out how we can make mechanisms ahead of time that kind of can stop some of these concerns so what do do you get the sense that you know like I Sam and I talked a little bit about this actually before the episode but uh in 1559 which now I think with the benefit of hindsight is one of the most successful upgrades to Al live major blockchain in history uh there was a period of kind of despondence right for a while in in that group chat right say you said it got pretty pretty bleak there and there was even vitalik right himself was like I don't think we're ever gonna get this past this is just
way too much and uh I you know that's that's one of the challenges of making a you know the whole value proposition of a blockchain is that it's supposed to be if not immutable very difficult to change like the Constitution of the United States the value is that it's changeable but the uh threshold the activation threshold is very high so you know what's your sense uh Prav maybe on the salon front then we can get into some other sort of cool areas where people are like multi-dimensional fee markets things like that like what is your sense of the urgency of you know rejiggering the fee market like How likely are we to get a major upgrade is it going to happen next year years from now like I know that's a really difficult sort of leading question but
you know what's what's your sense of um the priority when something goes wrong you know when there is a delay I'd be interested to know like the the material impact of that is like are you waiting like a second now or what does that look like yeah so just to answer the delay part first quickly I think it's um I think it depends on exactly what typ of adap you're using because it's also up to kind of how your wallet or something deals with this of like does it just send it and it fails and nothing happens um does it actually somewhat like tell you to like resend these things um honestly I'm not like that plugged into like the execution layer like details of how different apps deal with it so I I think for some people it's annoying for
some people it gets fixed and it's kind of fine um I I think it's like definitely like a pain point but it's not like a it doesn't like make the chain unusable by any means it just makes certain DS kind of hard to deal with at certain times um in terms of the urgency of kind of upgrading the Feed Market I I think like as of the past few months there's been kind of a rise in the community thinking this is more of an issue and kind of talking and discussing kind of like you know dis in their Discord and figuring out like how we can kind of update this stuff um honestly timelines I not very sure uh I personally approach this from a more academic angle a lot of times honestly of kind of just thinking about what are the properties we want and can we like
figure out the V design really well and then leave implementation up to the others um so that's probably more a lab's question but like a the time span of like a year a couple years it seems reasonable to me but really not quite sure this is such a funny human thing but the time that it's easiest to fix this would be right now today when the ecosystem is still relatively small and before it's a huge problem but this is just how human nature Works we're probably just gonna have to wait for something to break or for it to become a massive problem and then we'll the community will come together and fix it I would say if I had to make a prediction there um I I want to band and maybe use the the rest of our time to
talk about some cool new ideas around fee markets that haven't necessarily come into practice yet but they are in the four and the it feels most obvious to start here around this idea of multi-dimensional fee markets and this has been an idea that's been kicked around for a little while but uh so vitalik has wrote about the potential for um multi-dimensional 1559 and uh tun recently gave a really great talk he actually wrote a larger paper with Theo dandis on the subject as well of multi-dimensional fee markets and uh it's basically maybe Sam I could I poke at you to give us a description of this because you described gas like the
bundling of these sort of orthogonal resources um into this magically into this one resource called gas and now people are talking about actually unbundling that and charging more granularly for different resources so you just give us an overview of what multi-dimensional Fe markets mean yeah 100% um unbundling is is like exactly the right uh lens to bring to this so um when you're thinking about so so take storage for instance storage is a resource that um is super important to the ethereum network um so State growth and um the storage the amount of storage uh that uh the protocol believes that um
ethereum validators uh should maintain uh impacts the the block size the amount of gas um so that it's crucial element to um how yeah how gas is is computed um that happens over this like a time scale of years decades you know we we want the ethereum network to to be able to like manage it State growth indefinitely um when you're talking about inclusion or like a network resource it's it's like an instantaneous resource and so you need to price the gas abstraction is like a
singular object that is trying to to incorporate all of these different elements that happen over many different time scales of and impact actors in different ways so multi-dimensional Fe Mar markets the main concept is to to try to uh break up um the pricing model and say okay well what if we can just uh more directly pinpoint storage and say this is what it cost the network to grow State at this rate and um and then we can look at at uh networking and and say okay this is the the kind of immediate cost that's uh uh induced by demand here and and then we can
create a a kind of composite value um in this kind of like more granular way and and so we can create like extractions over them and um the the direction that this this paper that you're in alluding to Mike um the multianal Demarcus paper is basically about creating some kind of um optimization function across these uh different allocation schemes in order to um to kind of best uh price individual resources um but yeah one one of the important things to take away from this is that like there is actually a from the protocol designers perspective there there actually is like
a a preference mechanism that's baked into the protocol like this is how um in salana you actually see this like there there's a preference for utilization of all cores at once and um salana could actually charge for uh serialized transactions they like the network might actually be able to like um pull in more revenue or pull pulling more transaction fees by doing that but uh there that is kind of not the allocation preference of of the protocol like we want to actually push uh utilization into these uh into these four cores at once um so that kind of like general direction of uh identifying
specific resources and um creating really a more opinionated or or like a larger space of allocation mechanisms is is kind of like the the general theme that that I would identifi yeah if I had to uh you know what what sort of struck me is if you go back to 1559 the what they were optimizing for is a ux upgrade but there wasn't much thought to how can we efficiently alloc um you know allocate resources within the within the network and this is the the multi-dimensional aspect of it is how can we optimize for using all of our resources in the most efficient way and price as such and uh
sorry just funny anecdote which is uh I I have heard that many of the ethereum op code uh gas prices are based on vitalic just basically doing benchmarks on his like laptop at the time and these cannot be recreated because like the laptop doesn't exist anymore and it's like very specific to a you know a model of machine with like specific configuration um so those are uh those have a few of them have been updated over time um the there's eips to do this kind of thing but a lot of this uh like why is it priced this way is just based on this like crazy
artifact of like yeah the T just benchmarked it on on his machine and that's what it was and it's actually kind of the same in in Cosmos uh Dave wjo did a bunch of benchmarking and and a lot of the gas pricing uh uh I think Dave and Chris um did did a bunch of the benchmarking and a lot of that's just kind of stayed um because nobody's revised it that's an awesome anecdote I used to be a management consulting or Management Consultant actually in a past life and there's a lot of theory about pricing in general but what I sort of figured figured out is most pricing is just and uh what feels good that that is my very scientific description of how most most
pricing ends up happening so yeah I I think it's a and it it actually there's a I don't have it up on but if if you go and listen to the watch the tun talk on YouTube I think they have this in the in the paper as well but you can actually very clearly see they show you the picture like a very simplified sort of example where you could imagine a utility function for users let's just call it arbitrarily like three right and in this block there's two different resources call it compute and storage and if you have uh and let's say the utility function for the whatever action requires the storage versus the compute is very different and you could imagine gas having to be an average that the utility isn't necessarily maximized
where if you can price those resources differently you can actually like sort of use those resources more efficiently this isn't going to make sense until you look at the picture go look at the picture but it's it's a very interesting problem and one question that I have for the two of you and maybe prava I'll start with you first is it's it's very interesting you could imagine in an ethereum context I don't know how this might work but just I feel like if you combine the local fee markets on salana with the multi-dimensional fee markets does that unlock some kind of new design space or what is possible to do in in a salon context that might be more difficult from an ethereum context so I would actually say that local fee markets are multidimensional fee markets um and
they're kind of just like a different way of saying the same thing of what's really happening with local fee markets is you can imagine that every account is a different resource basically and we have to meter account usage basically to get the paralyzation properties we want um and in that way kind of having your transaction be priced not only in terms of how much compute uses but particular about what parts of state and what accounts it's touching is the multidimensional nature of it I think also makes it a bit harder to get all the the incentives right is that you can imagine two different versions of this multi-dimensional fee market and then the first one is where where your resources are like really nonf funable things like you know compute storage bandwidth like there's ways you can
rewrite transactions or like smart contracts to use these different things in different ratios but there are certain things that have to go in storage there certain things that have to be computed and you can't get around this whereas when your resources are actually just different accounts that's not quite the same of like this you have to use certain accounts but you can use accounts much more creatively than you can might you or you can manipulate accounts much more creatively than you might be able to manipulate kind of storage and in some sense um you know when you only have maybe like say three or four different resources in ethereum World maybe that you're doing multidimensional fees over these just like three base resources the demand for those resources should be like fairly stable you know they'll like shift over time um and as things happen um you can
adjust those prices but when you go to like a kind of per account basis this looks much harder and that you know the demand for just certain parts of State can shift dramatically over the course of a second you know when an N drop happens all of a sudden there's one account that has tons and tons of Demand on it um in a way that's like you wouldn't really go from like oh there's no storage now there's tons of storage I mean you know maybe things like inscriptions or something happen but like generally you wouldn't like these kind of Bas resources to have this massive fluctuation where you might have for accounts and so I I think kind OFA has basically already agreed to do multim menal fees by going down this local fee Market Route and the question is how can they really tune this to be
as good as possible when your resources are explicitly every separate account and not these kind of more based level compute level type resources yeah that actually sets up this the credits concept quite well it's if you squint head it it's actually kind of the same thing but it's um there's really two differences so this is a concept that um some of the osmosis team um published on recently uh Dave and Alpin from osmosis and it's really a uh you know a local fee Market where each user has their own fee Market
and there is a dynamic allocation scheme or pricing scheme based on specific application behavior um and uh really the main idea is okay okay I am creating kind of like a um uh non-transferable nft is my you know my singular account I can build up um credits um by performing certain transactions and those can be used um to within the uh the pricing calculation for my my specific uh transaction so um if you want to uh you know give all you know give give specific nft holders um uh kind of
free transactions for a day you could do that um you know there's a it's like Black Friday sale um this is like obviously not something that a a kind of global um uh or like Global smart contract platform would uh would Implement it's very application specific it's very opinionated um but it is about kind of like tuning the allocation scheme um to elicit certain user Behavior so you could imagine actually negative D you could okay I I get um some rebate by performing certain transactions um and induce user behavior that way you can
have you can make it so that users don't actually need uh the the gas token um they actually get a free uh free transaction if they uh if they meet certain criteria so um there's ways that you can kind of tune this to uh uh encourage uh repeat behavior um that may be useful to the application um so uh the allocation scheme here is like maybe I want to use the deck um and that that's really the the thing I'm trying to optimize for is just utilization of the decks not utilization of the chain I no I it's just it's really interesting Sam because you know there are this is why I just think it's so important to
pay attention to multiple ecosystems because you can kind of squint and see everyone's trying to solve very similar problems and you brought up the idea of a rebate so one idea actually this is a sort of controversial it's getting a lot of attention within the salana community is a SD 0016 and the title is program rebatable account write fees or pro pro fees and basically the idea is that right now you could basically mandate that there's a fee um by writing to a certain uh you know write locking a certain account and then the owner of that account can decide to rebate the fee uh if they want and they can decide to do that to
organic users but the fee would still be applicable even for tra failed transactions could punish spam users so a very similar concept also very similar to qos weighted uh stake where basically this is a form of spam prevention where the salon Network says hey uh you know if you have I'm only going to open up my bandwidth to other rpcs that have X percentage of stake you can kind of squint at it and see it's all the same sort of thing actually um and it's all about maybe to bring it home I think one of the other optimization problems that doesn't get talked about enough within the cont of fee markets is optimizing for organic fees as opposed to spam type fees and that's another massive design
principle that you can see throughout each of these ecosystems as well but I find it so interesting it also it sort of blurs the line as well like Sam you and I have talked about this quite a bit in between this kind of spectrum of sovereignty right where you have kind of like on ethereum like a Dap on ethereum and then a full stack Cosmos sap chain and then maybe in the middle you have like the op stack um you know law of chains or whatever they're calling it and then maybe a sovereign rollup fits somewhere on there that settles down to Celestia and then maybe there's like almost account level sovereignty where if salana on a on a generalized basis wanted to Grant more discretion to the owners of accounts and the powers that
are afforded to them it all sort of just exists on this this spectrum it's super interesting proes look a lot like lanes that we've been doing in Cosmos and and ethereum's kind of looking at as well um but I guess Pro PR as far as I understand is like a little bit more of a generic uh solution and at least how we've been doing it is like much more enshrined like okay you have a DEX chain you want your Dex transactions to be here you want your re UND delegation transactions to be in this this L well maybe we could end this um on you know I know we've got like five minutes
left here before we got to wind down but Sam you've been dealing with perhaps the most complex optimization problem AC in within Cosmos of many different chains that have different fee markets many different currencies um you know I guess in the limited time that you have like can you kind of walk us through any Lessons Learned and you know I guess just like sort of broad implications of what we're talking like is it how important is it for different chains or protocols or however you want to Define it to maintain sovereignty over their own fee markets is are there going to be a million different fee markets across a million currencies and it's all going to be abstracted are we going to have more Global Solutions like you know how do you see this sort of evolving yeah I I mean I don't know how
I see evolving like across all ecosystems I can't speak to Cosmos so Cosmos is uh one thing for listeners to to know is that um obviously Cosmos is like a set of independent blocks CHS um common networking protocol but each of those blockchains typically has their own staking token and they use that staking token for fees um so uh and then not only because they're Sovereign they also like uh get to select their own e mechanism so in order to to abstract across all these things you need to
solve a a multi-domain the pay payment solution so you have you have tokens on one chain I need to I want to use those to pay tokens on or to pay a fee on the other chain but my tokens aren't on that chain so like how do I there's like a chicken and egg problem there and then um uh not only that but the tokens that I have on this chain aren't aren't the required uh tokens for fee payment on the other chain so I actually need to to do an exchange um at the same time uh and then the and then you like once you've solved that problem which Cosmos has not done sufficiently it's
like a lot of the stuff that I'm working on it's just figuring out the plumbing of how to make that work once you have gotten to that point then you can say okay well uh given the exchange rate of X and uh you know actually being able to to pay in the right domain um what is the the pricing scheme and I need to know how that chain um has set up their fee Market um or how uh you know some of the things that I've been trying to think about is like can we unify these at all um can we make it so that um there is a way for uh you could almost imagine kind of like a a
free trade zone or something like that where there's um there's like ified um mechanism of pay uh or uh uh you know I'll let your your users pay at this rate if you let my users pay at this rate and like we can we can do business together um and so yeah there's very likely going to be in order to kind of solve this all together there's a combination of several different um features technologies that that I imagine will be kind of Blended together and a lot of people have been kind of flowing into Cosmos recently which has been really fun um a lot of them are like damn this is really complicated
what the hell is going on um uh but yeah like we know and uh there there's kind of like Solutions in the pipeline um it's kind of amazing that it works at all right now um and uh you know if anybody wants to talk about that more like has issues you know you should come and chat Sam and Skip are putting the entire team on their back so uh big big big UPS to you Sam and uh and we you're doing it skip um guys uh I know in in our last couple minutes anything that we that we missed that you wanted to leave listeners with about fee markets or we can just wind down and um and yeah guys this this was a huge this was really fun
for me Sam knows I've been trying to put this together for like a month um so this has been this has been great uh from my perspective I hope that we maybe added a little bit of nuance to the two camps that tend to talk past each other on fees and just made people think a little bit more critically about it uh going forward but um prava Sam you guys are both great if folks want to find out more about either the work you're doing or follow you or or whatever what is the what is the best way to do that yeah I think for me just um Twitter basically um so just handle us pear Med just peeing on my last name um and yeah I'll be posting papers different thoughts um blog post papers in the future yeah awesome yeah and same
for me if you want to find me on Twitter HX RTS um and if you do have some inclination to to play around with Cosmos I would recommend um visiting ic. fun um which is kind of our like demo uh experience which I think at least does a pretty good job of like abstracting over many chains many tokens um so it is doable yeah it does thank you for having you back guys this one was a lot of fun uh hope hope everyone you're full of uh you know whatever holiday food you celebrate eat full bellies and you get to listen to some nerds talk about fee markets it's what it's all about um all right guys this was a ton of fun thank
you both for coming on great thanks for having [Music] me