4 ms·
What are the costs like for building resource intensive apps on ethereum? Would be interested in comparing with centralized compute providers.
by roymurdock 11y ago
What are the costs like for building resource intensive apps on ethereum? Would be interested in comparing with centralized compute providers.
- replies_to_all 11y agoA lot more expensive. There will be no comparison in cost, or at least that is the wrong comparison to be making.
- roymurdock 11y agoI'm not sure if I'm reading ethereum right, but it sounds a lot like mesh computing, where a user can bid for unused cycles on a bunch of networked computers, or one "world computer" if you agree with the author's characterization. If that is correct, then ethereum and Amazon spot instances could be interchangeable - low availability, but potentially lower cost due to the bidding process if there is a lot of excess compute power on the network.
- aakilfernandes 11y agoSorry, thats not correct. The only person who gets compensated for performing computations are the miners. Everyone else performs computation so they can have an up-to-date blockchain, but are not compensated. Ethereum is the most expensive computational environment you can imagine. However, it is also the highest trust. Its not for computationally-limited (gaming/data analysis) its for trust-limited (financial applications/privacy) There is an effort to build a computation market on top of Ethereum, but the computation happens off the chain. https://github.com/pipermerriam/ethereum-computation-market https://github.com/pipermerriam/ethereum-computation-market
- roymurdock 11y agoFor some reason I thought Ethereum was different than a flavored blockchain, but I guess it's just the branding/dev ecosystem that is different.
- splintercell 11y agoThat's completely inaccurate. Ethereum runs the same piece of code on all these computers in the world. That means a program which is being run on the network when it has 500 computers isn't any faster than a program which is being run on 50 computers. The benefit you get is this: When 500 computers are running it, then you know you can trust the execution and the 'state' of the virtual machine when it is only being run on 50 computers (or 1 in case of a centralized application).
- mwilcox 11y agoMost of the application does not run on ethereum itself, but on the client. It's the business logic that does. User registration, transactions, etc. So it depends how resource intensive the business logic is.
- jnpn 11y agoThe cost comparison you want to look for is where people pay a very high premium for the execution of business logic by a trusted counterparty. In other words, its not cheaper computation in general, it's cheaper computation for trusted services (eg. financial instruments).
- xavieryvez 11y agoIt is (currently) not well suited to resource-intensive apps. Basically you pay a "gas price" for every opcode executed by the EVM. Clearing a memory address? You pay for it. Setting a value? You pay for it. etc. etc. (In the above paragraph "you" refers to the "user" sending the transaction) You really need to think about what you are doing, whether it is allocation, computation, etc. Minimize the number of opcodes and the number of expensive ones at that. To date the contracts are quite simple, although some really interesting things are in the works.
- facepalm 11y agoIt's not a compute engine, more a verification engine. The idea is to have transparent contracts that everybody can verify on their computer at home.