1

Today, I am researching how I can draw a diagram for BPs Benchmark, and luckily I found information about Ahola.

But I cannot figure it out, how I can get value from Ahola's smart contract to draw a CPU picture as they did.

Could someone give me some suggestion.

Thank you so much!

  • Can you try to be more specific? Where exactly are you having problems? Is it just reading the values from the Aloha smart contract? Could you link to the code or to the ABI file, or even the name of the smart contract account? – Phillip Hamnett - EOS42 Aug 5 '19 at 7:40
  • Thank you @PhillipHamnett-EOS42, Yes form reading the values from the Aloha smart contract. How can I get value form the Aloha smart contract? or I deploy Aloha smart contract, then all cpu action and get cpu_usage from the transaction which return. Is it true? – blockehainer Aug 5 '19 at 9:47
  • What is the name of the contract account? – Phillip Hamnett - EOS42 Aug 6 '19 at 3:02
  • It is eosmechanics – blockehainer Aug 6 '19 at 3:44
1

Their code base says:

Benchmarks

The benchmarks below are EOS contracts which are set on the eosmechanics account on Mainnet, CryptoKylin Testnet, and Jungle Testnet. They are executed during each block producers' schedule, and the timings recorded on-chain using the standard cpu_usage_us transaction field. The data is freely available to view and analyze, and we encourage doing so to help identify issues and improve block producer performance.

Example tools that utilize this data:

  • EOS Block Producer Benchmarks by Aloha
  • EOS Block Producer Performance by EOS Titan

CPU Benchmark

This benchmark targets the CPU by calculating Mersenne prime numbers. Calculating primes is an industry standard for measuring CPU performance and it uses code operations that are common in software development.

RAM Benchmark

This benchmark targets EOS RAM by rapidly writing to and reading from a RAM table. Due to inefficiencies within the EOSIO software this benchmark is currently CPU heavy and thus we consider it experimental and very similar to the CPU benchmark. As the software performance is improved we expect the results of this benchmark to become more meaningful.

So in essence, they run the cpu action, and then they measure the resulting time it takes to execute the code from the statement that comes from cleos:

cleos push action eosmechanics cpu '[]' -p eosmechanics
executed transaction: 245582ba292b8fe3614e6bf525bbaa957844a7581794dc3e8b8d887a6052271e  128 bytes  2420 us

In my case, it took 2420 microseconds to execute the transaction

| improve this answer | |
  • Yes, I see. Thank you very much – blockehainer Aug 6 '19 at 9:29
  • If this answers your question then please accept and upvote the answer. It is useful for other people in the future and it will certainly help you to find the best answers yourself as you continue to use stack overflow! – Phillip Hamnett - EOS42 Aug 6 '19 at 11:05
  • I know, But I am new in stack exchange, I cannot vote – blockehainer Aug 7 '19 at 2:00

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.