ZK9: Hardware Acceleration & ZK Panel - Hosted by Alex Pruden (Aleo)
14 Apr 2023 · 51:59
Recorded at Zero Knowledge Summit 9 in Lisbon, this panel on hardware acceleration is moderated by Alex Pruden of Aleo with speakers Omer Shlomovits of Ingonyama, Hamid Reza Salehi of AMD, and Rahul Maganti of Jump Crypto. They discuss how specialized hardware can speed up zero-knowledge proof generation and what that means for scaling ZK systems in production.
Speakers
Topics
Transcript
foreign [Music] welcome back last uh from from the break I think we have uh one more break after this and we'll be we'll be into the finish so thank you everybody for your continued attention hopefully you got some coffee and uh are feeling good this afternoon we have a really exciting panel coming up for you for the next hour and uh you know at the end we'll uh we'll hope to take some questions but the topic of this panel is all about zero knowledge and Hardware acceleration um so many of you who are at this morning session saw that I presented about zprize and the second iteration of Z price so I was the organizer of the last surprise competition and I think
everybody on stage that you see here was also part of that in some way shape or form and in general these are a group of experts that focus on Hardware acceleration for snarks and advanced cryptography generally and I'm going to let them share more about each of their stories here in a second but um but that's the topic and really excited for all of you to join us and uh with that maybe let me just let's go down the line here and maybe just can you gentlemen introduce yourselves and talk about what you do and what your company does hey I'm Rahul I'm at Jump crypto uh jump trading jump jump crypto sort of uh known in like the you know trading hft Quantum quantitative trading space um for the past like seven years we've done a bunch of different crypto stuff and recently we got into you know CK
because we're all excited about kind of the the infrastructure you know and the applications that can potentially arise from it so we're super excited about DK in general and I think uh we want to participate in kind of solving some of the harder problems in the space I'm part of the product marketing team at AMD part of the Adaptive and embedded Computing group so that's the team that made all the fpgas with zoilings and was acquired by AMD um pretty active with the Z price um supporting Alex and the rest of the team so we have provided fpgas that were used in Z price and looking forward to continuing our work with the community
hello my name is Omer I'm the CEO of ingonyama um like every successful technology we have software algorithms and hardware and my company goal is to basically provide the infrastructure the hardware any bit of the software you know to earn the hardware for the Z for ZK and you know more generally or boldly speaking Advanced cryptography I'm the CEO of the company so I'm doing uh not the most fun things uh you can say but I'm enjoying uh walking with a very small but talented group of Engineers awesome thank you guys
um maybe let's just start out so we've those of you who are not familiar with the semiconductor or kind of Hardware World maybe we can just Define a couple to find a couple terms for everyone quickly that are relevant here so you know most people probably heard of A6 if you're familiar with Bitcoin mining A6 stands for application specific integrated circuit right this is like a very specific you know program that's basically hard coded onto the silicon and it's very efficient as a result you have fpgas which fully programmable gate arrays which are kind of a little bit more programmable and I'll let these guys who are experts tell you more about that and then you have Graphics processing units right there's other things too but I think at a high level like when we talk about specialized Hardware that's what we're talking about and the first question I wanted to pose
to the group is what problems in zero knowledge when we talk about Hardware acceleration what does it mean what does it mean to accelerate a zero knowledge proof like acceleration of what like can you guys just kind of share what what permits acceleration in this field okay so the problem of ZK peas is we instantiate it today in the space as a pullover and a verifier and usually we take this trade-off or we use you know snark stocks which has this trade-off that we get a very short proof and verification is also extremely elegant but we pay in in compute in memory blow up of the of the proof of computation so
usually when we talk about acceleration it's a bit tough to Define exactly today the boundaries but at least what we aim for is to make the user experience acceptable for the right application when we focus on the approver right basically so it's taking the entire Hoover algorithm and making it run in performance cost that makes sense eventually to to the application I guess business perspective you look at proof Generations we look at proof per dollar proof per time and then proof per power and the goal is to make this as
efficient as possible especially when you have void deployments you know when you start a project maybe you might not care as much how long does it take or how much power especially it consumes but when you're thinking about massive deployment if this technology is going to get adopted at that scale then these parameters become important and you know when we say Hardware acceleration how to make those you know orders of magnitude more efficient compared to what you do on a CPU or you know even on gpus for example um okay cool thank you so hopefully that helps folks understand I think the last thing that Hamid mentioned I want to just highlight Excel I kind of you know
there's a bit of a trick questions like what do we accelerate well in some cases like acceleration may not be the goal but making something more efficient is the goal right and so you know there's sort of I I like to think of broadly three different um you know axes in which we can improve and Hardware can be useful and one is latency right so the generation of a single proof making that as fast as possible and others throughput given a single unit of time as many proofs that you're or as many verifications as possible in that single unit and then efficiency was the last piece which is a very important from a business standpoint oftentimes certainly in mining that's one of the most important things and that's the cheapest cost per proof or verification um cool so actually since we're talking
about use cases maybe I'll turn over to you uh Rahul like what you know you guys jump have a lot of really interesting public goods work and open source software work that you guys do what what use cases do you see for ZK snarks uh where you think Hardware acceleration will become important sooner yeah I think there are a few use cases of ZK in general that that makes sense so like you know in terms of like the business use cases right like we're all concerned about like you know what the latency is going to be like what the cost per proof is going to be um where do this where does that matter there's a lot of applications in crypto right like let's just take I'll take a simple example so let's say you have like a a price Oracle right and let's say you wanted you're generating proofs
as a result of the price Oracle um or just a ZK Oracle I'm sure you guys have seen this application you know in a bunch of different places but like if you can't generate proofs quickly then whatever application or client that's going to be consuming those proofs isn't going to be like sort of incentivized to use that application and so this becomes the bottleneck for a lot of different applications where the cost per proof and also the latency per proof becomes like very important um and that's the case with like a you know a large number of applications like another one is like sort of you know cross-chain messaging protocols where like for the user like latency is in a very very important Dimension um when you want to like you know when you want to do anything like across different and chains like you want that
experience to be seamless and so it becomes a huge issue when you know all these sort of systems like want to move to ZK but you don't have the appropriate like horsepower to actually like you know enable these applications actually uh I think I'm going to change the I'm going to change the model here a little bit and I think maybe every one of these individuals as they get the mic I'm going to ask them a new question so they don't have a lot of time to think everyone's gonna have the same you know same time to think of an answer so okay so now that you have the mic I mean I have a question so you know me just here from AMD um you know some of you may have heard of it and um you know a question that I I would have for you is you know
Asics are you know we've been told that you know Asics are the holy grail for compute if you know with regard to efficiency and you know through putting all these things I mean you know if you look at Bitcoin A6 obviously can produce more shot 256 hashes per second by by orders of magnitude than any other piece of Hardware so why don't we have a ZK Asic today like why is there not already an Asic 4zk if we're all here and we believe that this technology is the future can you kind of give me a little bit of your answer yeah sure absolutely and this is a kind of a pretty familiar Paradigm right if you look at you know what happened during Bitcoin mining as a matter of fact people started mining on fpgas and then after a while you know I started creating Asics and even you know
kind of outside mining pretty much any area you look at communications different workloads and data centers you see that a lot of time when the new technology shows up people start designing on fpgas and then there is a crossover point at some point people start designing Asics now there are pros and cons of each approach right so with Asics obviously you are going to do absolute customization you can really make it perfect for a specific State machine for that specific function now the drawback of doing an Asic is so number one A6 are very expensive you're gonna spend tens of millions of dollars doing an Asic and then God forbid if you make a mistake that's another tens of
millions of dollars of you know mistake that you have to do another tape out and then if the protocol changes if anything changes so that asig might not be as efficient and another Asic shows up and now all of a sudden that design you know again you have to redo it so there is a lot of risk associated with doing an A6 and you want kind of the technology to reach a level of maturity before you even consider an Asic especially kind of moving to a smaller process nodes you know five nanometer three nanometers those types of tape outs are extremely expensive we are talking about 50 million dollars 100 million dollars to bring a chip to Market from ideation all the way
so the alternative approach to that is to use an fpga which basically with an fpga fpga is a blank circuit meaning that you can give it any definition you want so exact same circuit that you can design on an Asic you can design on an fpga exactly same performance the compromise is because it's a flexible programmable circuit it's going to be much bigger in terms of silicon area approximately you are going to consume 10 times the Silicon area to implement the same function you can Implement on an Asic on an fpga so that's you know the extra cost you have to pay in terms of the device itself
but the beauty of it is you basically can put a design on an fpga and then if you realize that the protocol has changed or you made a mistake you can just go and dynamically change it so basically you are not going to go in care that cost of PayPal that you know as I said for a small process node might be somewhere in the you know 50 to 100 million dollars depending on um what you're designing so um looking at the ZK and I see all these meetings and sessions and everybody coming with something newer and you know a different way to implement and you know um our friends here you know are working on different approaches and Publishing papers and I think that's an area that still is evolving and I think is going
to evolve for the next couple of years so considering that doing an Asic is somewhat of a risky proposition because if thing changes forget making mistakes assume you're not going to make any mistakes but if anything changes in the protocol now all of a sudden you have to go redo it and then you know we work with a lot of startups some of them say okay how about if we create certain functions and make it a programmable Asic so it's somewhere between an Asic and fpga and my response is the challenge is then it's not an fpga meaning that if you make a mistake it's still you might need to do another tape out and then it's not going to be super efficient meaning that that somebody else might show up with the perfect Asic
and then you're not going to be as efficient as well so you have to be really careful if you want to kind of embark on the Asic Journey and also doing an Asic especially for a smaller startups there is a whole lot associated with doing you know a good Asic like if you look at bit main for for the mining space so they have a strong relationship with tsmc um great connections and they have been in that space for a long time doing an Asic is not just about doing a tape out it's about the supply chain the quality the validation and all of these are pretty sophisticated Technologies and expertise and even if you do all of that say during the pandemic assume you have
done everything right um because you are a startup then you don't have a relationship with tsmc you have to go through a broker then even though you have an Asic you might not be able to actually get it made a quantity so there is there is I don't want to take the whole time of the panel but it's a pretty um the way I put it when I talk to a startup is be extremely careful when you think about Asics it's not as trivial unless it sounds it sounds exciting but you have to be super careful awesome thank you and Omar uh follow-up question for you so feel free and comment on that question but also I think you know you're looking at I I think the the way I would frame the question or maybe a little bit specific to you is you know
is here to produce you know to produce proofs and depending on the context you're going to choose the right tool for the task so again comment on the last question if you want but also maybe you can say like depending on the context how do you decide what tool to use in terms of hardware um yeah that's true um we have uh I mean the way that we like to walk is starting from you know the client uh what they need right let's define the problem and let's see uh what makes the most sense so as we mentioned before it might be that we want to optimize on on performance on cost latency throughput and so on might be that we are forced to walk in some kind of a cloud environment right so
today um all of the big clouds they allow access to instances with specialized Hardware like the ones we mentioned your gpus and uh in the fpgas uh and and yeah the uh the business cases is should be uh defined and the more we can Define the problem the easier it is to come up with an appropriate solution uh for that now what I can say in general is that today you know it's it's a very small um it's it's a niche right like and um what it means is that most of the projects and I guess like for some of you sitting here um and working on projects they are still a small project right it's not like we are at scale and and we need to
concern ourselves with how to uh Mass produce Hardware in scale so usually gpus are kind of like first line right of of solutions they should provide um the good amount of acceleration I mean generally speaking to um to solve a broad class of problems so I think that for those of you or at least it's also true for for us and kind of how we approach it like the market we start with GPU it allows you to iterate fast because it's like programming in in software I mean you don't need to lower yourself with all of this like you know the Beats level it's already kind of
like high level and you can code everything and and get results and iterate relatively fast so usually gpus I mean again for those of you working and building now on CPUs eventually when the project is getting to um some stage you get you get to a bottleneck like you need to scale it and you need to accelerate I don't know you want to lower costs um or you want to um to make user experience uh like uh latency right you want something to run it two seconds instead of five so then I suggest let's move to the GPU and today thanks to initiatives like zprize and and some open source code we provide an open source library and we work with
teams on making uh these adjustments to confront everything in GPU this is kind of like first line of um of solutions now once you start to hit growth and actually get to a more specific problems then fpgas can become the right tool right um you know to give an example so in filecoin for example so filecoin like the blockchain that is exist for for um several years now and they are running today on gpus but because gpus are power hungry we actually consume it's not about electricity but because they are power angry they are also big because they need Cooling and when you move to an fpga which is
um as much less requires much less power to achieve basically the same performance you can have a much smaller form factor so when you think about it when you run some file coin it's not called mining it's like ceiling but you when you run it in in your data center you want to be as or to utilize your data center to the maximum so you want to walk it's like you know pizza box servers and this is where fpgas can fit nicely because there are tiny ideas more compared to gpus so this is like one example where you say okay we work with gpus now is the time to upgrade to fpgas right so at least this is our approach awesome thank you and uh Rahul I've got a question uh for you here um so specifically to fpga so jump uh uses jump Capital uses fpgas for a variety of
applications outside of just crypto and I guess maybe for those folks in the audience here who are developers and they're like oh this sounds cool I want to accelerate you know this or that or my you know my snark verification you know and fpga sounds like the right tool what would you say as a you know what advice would you give folks who are looking at using like fpga specifically who might be going to GitHub repo for zprize saying they're like whoa what is this language verilog and how do I what how do I even start here so I guess how do you think about that or how what advice would you give folks to think about programming in the fpga Paradigm as opposed to you know the traditional paradigm yeah um jump does have a lot of sort of like in-house fpga expertise largely because
you know I'm a sort of like quantitative trading side there's a bunch of work that has to be done on that I can't really comment on that because I I don't really work on on that stuff but what I do know is that you know especially with the stuff that we've been we were working on for the Z prize in particular like accelerating some core Primitives like multi-scar multiplication or number theoretic transforms like fpgas are a great sort of um tool for you to use in terms of like prototyping and understanding like what the problem space is and then at the same time giving you like the performance you know that Omar mentioned in terms of like you know comparable performance to GPU the thing that is sort of I think understated on the fpga side is like the the data bandwidth um so you can do a bunch of these you know
awesome computations on an fpga and like you can make it super fast but you know a lot of fpgas and you know on sort of like the cheaper and don't really have the same like throughput or data bandwidth that you really need to kind of scale these computations so like if the if the data bandwidth takes long if the time to transfer like data from your host to your fpga takes longer than actually doing the computation itself and you haven't really saved anything you could have just done it on your CPU you could have just done it on your host and so like in particular like there's you know you have to really think about like what type of fpga are using what architecture are you using uh to make sure that like you know like this was actually the case you know for for some
of the you know entity computations that we did where like you know the pcie just wasn't sufficient to you know ensure that like when you're doing these computations that you're you know you're actually like going to get a speed up in in real applications and so um that's something to consider I think there's there are there are fpgas out there that do support like you know High throughput sort of Dana bandwidth and like you can use those um but you just have to be very careful about your selection process there awesome thank you and yeah it's just in like AWS for example folks may or may not know has instances you can use and uh you know of course uh Hamid here you know AMD xilinx you know manufactures these and and I want to ask his opinion about um actually I want to ask your opinion
specifically about what uh Rahul just mentioned you know you're thinking about you want to create fpgas to potentially serve a certain category of problems how do you think about designing them with them in my with those trade-offs in mind of like data bandwidth versus compute Etc like how do you think about it from the perspective of Designing new fpga boards for a specific category of use cases I kind of want to touch the previous question a little bit in terms of you ask if somebody wants to start with the fijias what should they do so that kind of um so first I have to say designing on an fpga is not an easy task just right off the bat and these two guys sitting next to me they are geniuses so this is this is a very
um complicated process fairly so if you are coming from a software background it's a whole different way of thinking about how you design something and you know kind of now kind of trying that to the question that Alex just asked me um you really have to think about your architecture it's very different from the way you think about the software engineer you come with an algorithm and maybe if you're doing it on a GPU you think about okay how do I use the Cuda and some parallel calculation doing it a design on an fpga you really have to think about your circuit the way the same way you think about designing an Asic almost so the data hierarchy the data weights the way you communicate to the memory the
way you use the internal memory of an fpga is all going to make huge difference also some fpgas have access to high memory bandwidths and then how you interact with that and even design the memory controller that kind of read and write data from that memory all of these are very very important another thing that you know we tell people who design on fpga we tell them that you really have to think about your whole application because if you accelerate a part of the application by 100x or a thousand X but then you have one little bottleneck which you know Raul mentioned you know one of them then all of a sudden it's all for nothing right and all of those kind of acceleration at the end you look at the whole application end to end it
might not be as useful so you really have to think about how much bandwidth do you need to the host to make sure that doesn't become a bottle link for example and if you're using too much is there a way to change the way you pipeline your data fpgas are extremely powerful when you stream data as opposed to read Android from memory so how much you can kind of rely on streaming to really make thing done faster and I have to say I have seen themes and you know even Z price we saw that some teams did you know implemented something on an fpga and a competing team um was you know almost I think one cases was 100x more efficient so that kind of tells you that fpga is a very powerful tool depending on
how you program it it might make a material difference now now that I scared everybody a little bit about designing an fpgas so there are ways um we have at zoilings are not AMD we have created a platform called Reuters which is designed um targeted at software developers basically you can use voices and kind of start from high level libraries in C plus plus and implements on something on an fpga to get a feel for what does it mean to design something on an fpga and we are trying to provide more documentations um we have a blockchain accelerator card and we have provided quite a bit of
documentation on how you actually use voytes to you know start from you know high level programming languages and Implement something on an fpga now that process is a good educational tool it's not going to be very efficient so my friends here are not going to use what it is to really then design an efficient solution first of all you have to learn Hardware programming languages you know verilog vhdl that sort of thing we have another workflow called vibodo and then that's where you really design a circuit the same way you design an Asic and really anybody who wants to kind of venture into that you almost have to you know learn how to design an Asic you know
um so it's a it's a pretty A specialized skill but for companies that are thinking definitely especially in Omar has mentioned something very interesting that when you start testing something you start on CPU GPU quick make sure everything works when you think about deployment at a scale that's when you're gonna start thinking about fpgas because you can design something that's more power efficient faster um and and you know it kind of pays dividend in the long run the example of the foil coin when you're talking about you know massive amount of data that you want to see London store power becomes really important uh not just because the cost or the environment which those are
really important but there is the issue of capacity a lot of providers have limited access the capacity is limited so something that's more power efficient you can increase your capacity and also there is the issue of you know transferring heat which you know might seem trivial but it could be a huge challenge you know in Mass deployments um so um you know when you reach that stage that you think about really you want to you know do deployments then you think about fpgas and you kind of be Chasm between fpgas and A6 because you know you think about CPU GPU fpgas you are buying a part of the Shelf um and then you want to think about A6 you know as I said you know you want to
spend 50 million dollars to do an Asic in your head you have to say can that generate at least 10 times what I'm spending can that generate 500 million dollars so that I can spend 50 right so that's kind of the math um and then you know um obviously Bitcoin get to that point and you know that's why asig made a lot of sense for Bitcoin so I have to make one comment on what uh hamit said maybe an industry secret um so we mentioned white is this kind of like high level language to program for fpgas and then he said something interesting that but you know like you know real men are not going to use it like real Engineers they're not going to use this stuff so we've kind of experimented with
um with this high level uh synthesis approach and you know the CC plus pass kind of level and I have to say it it's like a kind of like reminds me of generative AI all of a sudden like becoming like you know uh like uh kind of like a level of intelligence that impressed us so as well we can get like even better results than the handwritten like how to description Language by using the high level synthesis it got that good and by the way that's thanks to to the guys at Darlings AMD but yeah um so basically my message here to you is if you want to experiment with fpgas then you can go to your to AWS for example as we mentioned there's an instance within fpga they have a share
it's very nice very easy to uh to get it going and you can actually program it in a high level language and and get it to run uh very interesting examples um yeah I mean there's also if you can find me after I can point you to like where like you know open source examples of relevant Financial arithmetic that you can do using that um form of programming to the fpga so awesome and I still have a question for you so don't think you're off the hook Homer um the uh so wanted to turn a little bit to zprize and you know the idea of okay so we have this open source kind of or this this competition where you know everyone's going to submit various optimizations to an MSM uh you know implementation say in a GPU
um you know as an industry player like how did you look at that what did you think of it how do you use anything that came from it and if you were looking forward and you were in charge say you're in my shoes and you want to do the next surprise how would you think about uh what problems to focus on sorry that was four questions in one but I know you can handle it yeah so zebras for us is um it was a real game changer so initially when we thought about it uh we were younger as a company and uh we we looked on you know in Hardware it's about AP and now we can kind of like create a motor on this AP so we were very careful um with committing anything uh that's going to be eventually uh common good now
um that being said during the prize and and also afterwards we started to uh we got to like few few realizations one we as a company can actually Leverage The uh the outcomes of the results of Z price so therefore uh for example we started this open source library for GPU uh that uh and you know if there's going to be a next iteration I hope it's going to be a next iteration of Z price and uh we'll definitely going to participate at least in some of the trucks and and contribute kind of you know to to make uh um to push forward the market as much as we can and contribute our best another thing we noticed is that you
know a z price at least the iteration that uh was like in in 2022 it was about Primitives and at least for us Primitives are um they are part of the story but they are not like secrets in a way all right so we we're going to start by doing in in the future to also write much more um like educational material on how you do this like Primitives msms entity uh you know the Playbook or if I want to teach it in in Academia I would have like approach it because this is you know it's like Ai and matrix multiplication these are like it's tools it's it's Primitives that uh you should use but the real magic is how do you combine all of this together and how do you you know erase for a second the
software implementation sorry not for a second just like replace it with an equivalent Hardware implementation that can leverage these Primitives but also does something uh like you can do something else like memory management data flow management and then this is what you can actually get to the 100x 1000x performance it's by taking the approach of end-to-end ZK acceleration as we mentioned before the entire poover and not just the Primitive right if it's just the Primitive so imagine you have the software then all of a sudden you need to go from CPU you from host to device then you want the Primitive then you go back there are a lot of limitations you know in the interface in like the um how you are kind of like coupled with the software implementation of the rest um how it forces you to kind of think in
in a specific way so um we even launched an initiative uh after zipper is called Z games where we wanted to uh kind of like have a competition with uh with between companies around reward implementations for example for foil of of entire proofers not necessarily with open source um for those that are not feeling comfortable like going full open source on that but we thought that it might add some layer on top of the price Primitives to kind of like you know compare Apple to Apples how do you approach and then like how do you um engineer like somehow do a solution for for an entire system so yeah that's basically my my points here amazing thanks and then I think we might
turn it over to questions here in a minute I'm gonna give I'm going to ask one more question it's kind of going to be for each of you and then we'll turn it over to the audience for questions but we've talked to here up to this point we've talked a lot about how the prover is oftentimes what is the focus of acceleration or work you know with specialized Hardware to what extent do you see opportunities for optimizations or or accelerated Hardware used in the verifier side of snarks or Starks or pick your flavor of zkp yeah I actually haven't thought too much about the verifier side largely because the perverse been such a huge bottleneck um in a lot of applications um it's it's sort of like like the whole point of like zero knowledge proofs in
some sense or like you know validity proof is that there is like the separation between like the the verifier time of the Brewer time and so um I think on the verifier side there are some interesting problems like you know I was just talking to a few folks here on like you know where you could sort of embed verifiers you know as like these custom Gates within like virtual machines we talked about this before um but there are some like potential improvements that you can do like on sort of better kind of application specific in the sense that you know if you have a verifier that lives on chain in in some like virtual machine and some like in programming language there are some ways you can optimize that um but there's not something that I can think of at least right now that sort of like
abstracts over all of that cool and I'm going to expand the scope of the question for both of you as you can feel free and comment on that but in general even Beyond verifier like any other cryptographic Primitives or uh techniques maybe fhe for example that you all see you know we've heard it from a couple teams doing fhe are there other areas that you think acceleration you know or other areas you think are right for acceleration and feel free if you want to you want to talk about that wrong yeah so so under um very far side so the way we think about this is um we rather make the verifier so we rather see protocols that make the verification even easier because then when you are verifying you want to make sure your kind of Hardware agnostic you can do it on you know mobile phone you
know you really don't want to put computation load on the verification so I may as well see the proving so it gets more complex and then try to accelerate that because that's where you can bring a lot of Hardware to bear and then really make the verification as simple as light as possible so that you do not need any sort of acceleration most you know general purpose compute even a small you know mobile arm processors what have you should be able to verify fairly easily fairly quickly so that's that's kind of the way I think about the balance that's how I think about this but beyond um kind of other applications as a matter of fact we have some projects on Effigy so we have we are looking at how
fpgs can accelerate that and um anything that's really you know compute intense and that becomes a bottle and certainly fpgas can play a role outside just the you know this dark and snark that you know we are looking at currently so yeah that's definitely an area under active research and also um the whole ZK on ML as well so that's an area that we are looking at as well so I want to maybe address um like another dimension which is the client side versus server side because today we mostly talk about server-side uh proof acceleration and when you think about like you know zika and the promise of privacy so you actually want to go to
the client side and it can also be surprising like as a matter of fact the way I'm thinking about it is how we can simplify Ezekiel find use cases for zika that are like extremely simplified so that you can see immediate value in you know core of acceleration um like to give an example when you compare Ezekiel roll up to a ZK VM so ZK VM is being built like when it's it's a polar Centric like you build a poover and then around it you build um uh you can build whatever you want like maybe a gaming application right but when you build Ezekiel all up so it's it's more of like ethereum Centric and you have like a lot of constraints to your system and prover is one of them right so when in in my letter of like simplification ZK VM is is like a
simplified problem for acceleration and you know going client-side I think also uh makes sense to talk about indeed uh other Technologies but yeah I mean just to give you like one one you know some alpha one example that one of my uh one of the of my team like uh teammates uh came up with so imagine this like you know TV this um you know CCTV kind of like cameras and um that are programmed or this iot device that is like programmed to give you like to trigger when there's like an event and what do you do with all of the time that is like dead right like what do you do these times so it's either go to some Cloud uh for storage which which
cost a lot of money or we did need to do some kind of computation to kind of like you know uh whatever so if you can take these dead times and run a ZK poof to compress it into one single small proof you can basically save like it there is an economical value to that right like imagine this like very it's one company like a cameras company iot company and you bring the value using ZK which is like uh like you save the money so for them it makes a ton of sense and therefore you need to need client side right so I think um that in the problem space we do need to look for simplifications definitely we need to address the you know the main problems that we have in the space so we shouldn't ignore Zeke
all UPS that's what I'm saying uh on the opposite but we also if you want to expand and we want to think where else like Hoover's and proof of acceleration makes sense we need to kind of like simplify as much as we can and look for therefore use cases amazing uh okay great I think uh we're ready to turn it over to the audience if folks have questions for the panel which can also include me so any questions for all and or any of us please raise your hand all right great hello my name is I'm from Bonus
technology we are a hardware acceleration uh company so we are doing like Hardware acceleration in fpgas for uh for blockchain and I have uh quite some questions uh mainly for the fpgas uh because uh we are using also like the cloud-based fpga xilinx once so uh and we notice some first thing regarding the the the the Z price that like most of the tasks were not like really Bend banned with uh like limiting so you would do all the acceleration on fpga and you could accelerate this a lot but the actual bandwidth with the host was not the limit and we've seen the real application that we can do like and this
is also typical with gpus we can do much more computations uh on the hardware and then we become like really a bandwidth bottleneck and mainly because like the the communication interface for the today's cards of available is only like PCI Express gen 3 and the question is like is there a like a plan for this because this was not in the past this was not the case and for most uh General um uh uh fpga applications bandwidth is not such such a problem it's more like computation but for these in particular because we cannot store uh there is not so much memory available on fpga is the same as on gpus really the bottleneck
becomes the thing and the fpga chips they have a lot of uh transceivers on them but it's only one like uh uh fast like PCI Express interface so is there kind of a plan to go for like a PC Express Gen 5 to get to get more throughput so that we can alleviate this bandwidth so I did not plug this question just full disclosure so we have a new line of product ha calversal and it supports PCI Gen 5 so you can get significantly more bandwidths which solve a lot of these problems we are going to have our early boards coming out later this year and we are looking to kind of expand that portfolio as a matter of fact we are looking at one or two reference
platforms dedicated to ZK and there is a possibility that we might adopt a person or we'll stay with the 60 nanometer depending on um you know so we are gonna start getting more feedback from the startups and the community but yeah so that's you know our next Generation which is the seven nanometer lineup called versal you get PCA Gen 5 by 16. that's great we are like looking forward to this a lot thank you another question around here I think no change your mind any more questions if not we can uh yeah we can go ahead and oh we got we got one more in the back so just a really silly question if you
had unlimited resources what would you choose to like what would you love to see if there was unlimited resources of money and human resources are you talking about for uh Hardware acceleration yes on the hardware yeah so I'll answer I guess I can start by answering that since you know I had to raise money for zprize and had limited resources from with which to allocate um I think the for me the direction that I would like to drive innovation in the space is a bit like what Omar was saying at the end is that you know the the initial focus of zprize was really about these Primitives right so and faster msms and for those who don't know MSM stands for
multi-scalar multiplication fft is another primitive that's often used uh stands for fast Fourier transforms um and you know there's other little kind of Parts witness generation is important part of generating a snark into end so there's all these components and for a variety of reasons which included resources but also quite frankly uh it was a result of how to create a judging uh that was fair in the short time that we had to structure the competition um we focused on these Primitives as a result of of lack of time and resources but I in the future and I you know when I presented about where I would like Z price to go this morning obviously first off we want to make it a community-owned
public good so that hopefully all of you in this room and Beyond this room can side where what direction does this go but for me personally I think what is exciting is these end-to-end applications and by the way this extends Beyond just Hardware I mean I think everyone here I mean this is called the ZK Summit for God's sake so we all believe in the potential for zero knowledge cryptography but there are precious few Real World products that we can point to that use this technology right and I think I was having this conversation with someone earlier today that standards oftentimes it's very important I you know I believe strongly in stuff like zprize obviously enough to to kind of found that initiative and I think you know standards bodies do play an important role but oftentimes we can
define a standard is not a group of people but a market that you know demands something right and so that's why I think it's important that the zprize not just exist in a vacuum of say like let's make msms faster for no reason it exists in the context of hey how can how can these accelerations how can these improvements enable use cases that enable products that enable a market and then the market will give feedback to the companies like you know many of whom are sitting on the stage and then that will drive innovation in a very natural way and so I think to me the direction if I had unlimited money and resources it would be to try and get as
much of an end-to-end as many end-to-end use cases that we think today are very high potential for zero knowledge or other forms of advanced cryptography and try and build a competition around that and build excitement around that competition and hopefully Inspire companies that are not Hardware related but just saying hey you know if I had this tool I would be able to build this product to inspire them to you know to then build products that consumers would go on and use um I don't know if that's an answer but that's that's kind of what I think any other questions um yeah thanks for
a great session I have a question um in the past there was uh there were a few hacking challenges with asilinx PJs when people were given away uh fpgas like for free in exchange for some open source contributions um if you had um ZK themed hacking Challenge on resilience fpgs which way would you prefer to go to use Amazon cloud fpgs or like maybe install some new fpgas on Amazon or to give away new fpgs to people and see how it works because in some cases well you first of
all it's embedded Hardware you have to press um the power button a few times just to reprogram the fpga and um another use case for um physical fpga is when people use replacements for xilinx runtime so I'm I've I've produced such a replacement um where you actually you have an open source shell which you can combine with your processing element in the end to probably to like you can do some design iterations on uh the processing element uh to optimize it and then you confuse it and uh get a higher clock speeds uh
from the fuse design um yeah questions is it on yeah that's that's that's like several questions bundled into one you know you mentioned the shield design and you know the shell design on 16 nanometer versus seven nanometer so I don't want to get a little bit too technical on that um but definitely going to our approach so in for the last couple of years our approach with a lot of these fpga cards you know so you buy fpga as a silicon that's kind of different but we had these all video cards and variant cards that you would buy and our Focus initially was in terms of supporting the
community we were really trying to focus on why it is uh with the mindset that eventually voters is going to be the most optimized design and it has improved to omer's point quite a bit but you know 50 is not 100 so this year we are trying to really kind of make vivaldo a first-class Citizen and when we say save a bottle for the rest of the people in the room that's when you really treat fpga as an Asic you know you really go you know at low level Hardware languages right so so we are going to have with auto shells available so that you know if you want to really you know if you're a hardcore fpga developer and want to optimize everything and don't want to design your own shell you you know we are going to provide those resources uh and then
still you're gonna have voices available to you you know for people who still want to experiment but really we are going to focus on people who really want to create optimized Solutions on fpgas so that's kind of the approach moving forward and then when we move to versaille which supports pcie gen 5. the shell architecture is going to be quite different because we have a lot of hardened blocks so in the 16 nanometer you have to do you know your own dma and your your own pcie block but in Versa all of that is hardened so you can have a much more modular approach to how you design the shell and shell is kind of like an operating system for the fpga basically um so so there's going to be quite a lot
of improvement as we move to Virtual as well and I think with that what I'm going to do here at the end I want to give each of our panelists a chance to just quickly say um what they're excited about just in general about the future for they could you know speak about your company speak about zprize speak about zero knowledge in general so this last uh the last kind of few moments here I'll we'll pass off to the panelists to kind of share a little bit with you all what they're excited about for the future of Hardware acceleration in ZK yeah um you know I think I think this was kind of talked about before in some sense but um the infrastructure level in terms of ZK at least last year for the Z price like a lot of these Primitives that
people focused on like MSM or NTT or you know witness generation or some of these other Primitives like they were very successful in helping like launch some of these applications right like without those like Primitives like you can't really expect you know an industry to develop and markets develop around that and I think right now we're in this sort of phase where a lot of these applications are now leveraging a lot of these Primitives um so that they can actually scale to a degree where you know users can come in and they're sort of like you can support this like sort of large demand um right now I'm super excited about you know some of the like client stuff that people are working on supporting some of those Primitives um how do we get like these applications um you know in front of users so like
applications like you know ZK gaming where you're actually leveraging privacy to in some sense uh to help actually use the game on chain um they're a bunch of these different applications but I'm more excited you know now about like user facing and like ux improvements as a result of like using zero knowledge technology as opposed to some of the more infrastructure and primitive Works uh work that people have been sort of focused on for the past year and a half so so for almost this year so last year we experimented we know accelerating entities msms you know kind of one-offs um this year and and to Alex's Point kind of with the end application in mind we are very excited to figure out how we can have reference Hardware platforms
that accelerate the whole application so kind of this concept of whole application acceleration when it comes to ZK for a specific end applications and really uh make the adoption of those end application at a scale possible so that that's what we are very excited about so one of the questions I've been asked a lot is where do we focus more on web3 where is our focus on web 3 or outside of web3 and my response is where do you draw the line right because ZK is is a fundamental technology for removing trust from a system I mean um at some point in the future there is going to be I I assume web3 is is
expanding right it's it's basically we're decentralizing more and more functions uh to you know benefit off of mankind and also we had privacy and so on so for me I'm most excited about seeing this like um this like border or this like uh expansion of web3 using ZK technology let's give our panelists a hand here foreign