Introduction | Livepeer and GPU Miners

– Testing the mining machine in Livepeer's office –

A key part of the future upgrade of the Livepeer media streaming platform is to allow the GPU miner to run Livepper video transcoding software simultaneously. Our video transcoding software takes advantage of the idle video processing circuitry on consumer GPUs, so it can transcode video without affecting the computing power of the GPU. (Translator's Note: Because it includes the Ethash algorithm. Many workload proof algorithms are memory intensive, requiring fast reading and writing of large amounts of data, but not computationally complex. This allows GPU miners to participate in the Livepeer network with no additional capital investment, and the productivity and reliability of the Livepeer network can be greatly enhanced. Since we started our research , the engineering team has made considerable progress towards the goal. We hope to share some of the initial benchmark results with the Livpeer community.

Hardware details

To test the performance of the software, we developed a basic mining test tool for the following hardware:

  GPU: 1xNvidia 1080ti (Pascal encoder/decoder)
 GPU Connection: PCIE
 CPU: Intel Pentium 3.1GHz
 RAM: 16GB 

Note that we only used a single card. In general, miners group 6 to 12 cards on a single machine. Livepeer software can do basic load balancing between multiple graphics cards in a single machine, but the load balancing optimization mechanism is still under investigation .

Performance benchmark

Before doing the benchmark, we determined our performance benchmark by running a streaming transcoding task (the mining software was not running at the same time). This transcoding task is to convert a 720p, 24fps video into a multi-rate video of {720p 30fps, 360p 30fps, 240p 30fps}. We used H264 as a video decoder and HLS as the video transport protocol, which is a common setting for today's video streaming services.

Input quantity Output quantity Success rate
1 3 100%
2 6 100%
4 12 100%
6 18 97.51%
8 twenty four 84.885%

– 1080Ti single card transcoding benchmark performance – we can see that when 1080ti single card performs more than 4 tasks at the same time, the loss of video clips begins to appear.

Benchmarks

The first benchmark we tried was to simulate a transcoding workflow for a live HD video while running Ethminer. The video workflow is to split a live video into video clips in 4 seconds. These segments are transmitted to the decoder in real time, and the mining tool runs the Ethminer in a separate process. As can be seen from the test results, the hash rate is basically unaffected. This is because the graphics card can run mining and transcoding programs with separate resources, and only a small percentage of resources are shared between two separate threads.

Input quantity Output quantity Hash rate Energy consumption Loss of power
0 0 32.48 Mh/s 214W 0%
1 3 31.58-31.90 Mh/s 206-216W 1.79% – 2.77%
2 6 30.75-31.56 Mh/s 205-214W 2.83% – 5.33%
4 12 29.72 – 30.39 Mh/s 201-215W 6.43% – 8.50%
6 18 28.86 – 29.39 Mh/s 200-214W 9.51% – 11.15%
8 twenty four 28.33 – 28.90 Mh/s 198-212W 11.02% – 12.78%

– HD live transcoding + Ethminer benchmark results –

Note that we only care about the case where there are less than 4 input streams, because running more than 4 transcoding tasks at the same time will start losing video clips. However, we are still very happy to see that the impact of the hash rate is still linear after more than four transcoding tasks.

Load test

After getting the initial results, we want to know to what extent the graphics card can be used. Therefore, we no longer simulate the live transcoding workflow, but feed the video to the graphics card as quickly as possible, hoping to use 100% of the transcoding capability. The results show that the hash rate can be maintained at around 80% with full video transcoding. We suspect that the 20% reduction is due to both software and hardware reasons. The former includes driving serialization work, and the latter is like resource sharing in video card memory read and write. Note that our benchmarks are fairly straightforward, with separate processes running video transcoding and mining services, which relies entirely on the driver to allocate resources.

We also observed an interesting phenomenon – when running mining and transcoding calculations, the power consumption has dropped slightly. We guess this is because the serialization of mining and transcoding work has led to a decline in the overall utilization of the GPU, and it is considered to be a clue to the future direction of transcoding and mining software.

in conclusion

Building a decentralized video transcoding network is a bold idea. We have seen some encouraging signs in video mining, but it is clear that there is still a lot of work to be done. We encourage the community to help us benchmark in their own environment, just follow these instructions , and we're happy to hear from you in the Discor group or the Livepeer chat room .

If you want to follow up on our progress and would like more information on how to get involved, please sign up for the Livepeer Retranslators mailing list.

I am grateful to Michael Ira Krufky for his work on benchmarking, Josh Allmann 's work on transcoding software, and many other members of the Livepeer engineering team.

Original link: https://medium.com/livepeer-blog/livepeer-gpu-miner-update-663a3e19de56 Author: Eric Tang Translation: A Sword

(This article is from the EthFans of Ethereum fans, and it is strictly forbidden to reprint without the permission of the author.