Maurice Herlihy (An Wang Professor of Computer Science at Brown University), Eric Koskinen (Assistant Professor in Stevens Institute of Technology, and one of Maurice’s collaborators), and Vikram Saraph (Ph.D. from Brown with Maurice as his advisor); are the three computer scientists whose research may fuel a significant speeding up of the blockchain technology in the coming times. Their work is buzzing beyond Bitcoin and other crypto coins.

Looking at the blockchain crashes, some may think that a saturation of the technology is nearing, but the three scientists revealed that this kind of perception is far from the truth. Maurice Herlihy put it in a very interesting manner when he said:

With blockchains, we have a Volkswagen engine because that is the way things evolved out of necessity. Our research is trying to replace it with a Maserati. [… ]Most people are not going to become cryptocurrency speculators, but blockchains could someday be used for everything from monitoring the freshness of produce to trading stocks to tracking items that move through the planet’s biggest supply chains. They’re conceivably a good fit for any interaction in which parties have a discussion process and are interested in coming to a conclusion.

The need for speed:

The blockchain industry began with the concept of ledger backed Bitcoin that mathematically assigned details and value of the crypto. The smart contracts further built themselves on the same concept. But what didn’t change was the structure of working with one unit or one user at a time. With the growing use of blockchain technology the ‘one-at-a-time- the structure will eventually start to challenge and cause unnecessary lapses.

How the research became the answer:

The research from these three scientists is an answer to this eventual issue. On this, Eric said:

We felt like the ideas that went into transactional memory would be a good fit for adding concurrency to smart contracts. […] Our work detects when simultaneous transactions might try to access the same part of the hash table, and pauses smart contracts to ensure that they proceed carefully. In this way, you can make high-level statements like ‘X and Y are independent’ and then the system finds a way to let them happen at the same time.

The need to test the effectiveness of this idea needed simulation, which would offer a model the idea without having to go for massive changes. Vikram Saraph helped in connecting the dots and helped the project to further get closer to its success through his creation of simulation execution. According to him-

A blockchain’s transactional data is never thrown out. […] So to evaluate how concurrent execution techniques might work in the future, I applied them to smart contracts from earlier in Ethereum’s history.[…]  In simulations, you don’t have an obvious measure for time. As a proxy, you can think about what instructions cost, because certain instructions require a payment to Ethereum. It’s a hypothetical way of evaluating the speedup.

Firstly  8X, then down to 2X, and then surging to ~5X Speedup:

The research has brought about some striking results. The initial stages of the simulation when the conflicts were minimal, there was an eightfold speed increase! But when the ICOs as such as CryptoKittens, were considered, the speedup dipped down to 2X. Fortunately, by running other contracts concurrently and mitigating a small set of high contention activities, Vikram managed to soar the speedup back to 4-5 times!

The researchers are continuously improving the work and are confident of the results. The likely outcome should gift the blockchain industry great speedups, with minimal fuss, and absolute transparency, which can be applied to any smart contract. Maurice believes that this speedup should also bring about more control to people on their data.

Leave a Reply

Your email address will not be published. Required fields are marked *
You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>