Quantcast
Channel: Mining — Ethereum Community Forum
Viewing all articles
Browse latest Browse all 10806

PSA (kinda): TLB Thrashing and Mining Performance

$
0
0
Just a quick thread to help the people that are freaking out about their HD 7xxx series cards and 2GB/3GB cards with low hashrates. In ETH mining, there is a huge multi-gigabyte file known as the DAG file. While mining, GPUs need to quickly access random small portions from this file (this is why higher memory clock and more importantly tight timings are important [a reason why the stilt BIOSes for the HD7xxx and R9 2xx series cards were so popular]). In the GPU, there is a cache known as the TLB (translation lookaside buffer), which stores recently used translations between virtual and physical memory spaces. This scales with memory size, so thats why cards with small memory buffers show severe performance drop off sooner (the DAG file grows a little in size every 100 hours or so).
A cache hit to the TLB only takes a few clock cycles, but a cache miss penalizes the card by forcing it to recompute/find the translation, costing the card hundreds of clock cycles. As of writing this post, 4GB cards are still in the clear for mining (though it will meet its fate sometime in the not too distant future), 3GB cards have lost about 30-40% speed, and 2GB cards... well.. yeah. The DAG file is about to legit be too big for these cards. Current memory usage on my cards is 1.86 GB. Sorry if some of the exact facts in this post were a little off base, but the general idea should be there. Thanks to Genoil for providing some of the info (through reading his posts). You can check how your card will scale with growing DAG file sizes with his OpenCL based DAG testing tool: https://github.com/Genoil/dagSimCL
Threads you can refer to: http://forum.ethereum.org/discussion/3947/dagger-simulator
TL;DR: You should get a 4GB+ GPU. Don't buy HD 7xxx or 2/3GB GPUs.

Viewing all articles
Browse latest Browse all 10806

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>