Previously, I reported that I couldn't get Bitcoin GPU mining to work inside of my gaming VM that had an AMD Radeon 7870 VGA Passthroughed to it. I decided to research more into Bitcoin mining when I realized that my GPU could hash at around 400 Mhash/s. The first thing I did was download Geeks3D's GPU Caps Viewer. When I ran this program, it told me that I didn't have any OpenCL devices available. I started googling, and I realized that the video card has a different driver for OpenCL. This driver comes with the full install of the AMD Catalyst Command Center!
The problem with AMD CCC is that historically, it didn't work inside of a VM. It would get stuck on the "Detecting Graphics Hardware" phase. To get around this problem, you do a partial install of CCC, then point Device Manager to the "staging location" in C:\AMD. The raw drivers were down that folder. I had to do this as late as the 13.1 version of CCC. This means, historically at least, I couldn't get the OpenCL driver.
Emboldened by the fact that I can revert to a previous snapshot, I decided to do a full install of AMD CCC 13.4 (the latest version at the time of this post). I was surprised to find that the "Detecting Graphics Hardware" bug in the installer is gone! The entire CCC installed correctly. After a reboot (of Dom-0 as well), I had OpenCL support. The volume was at 100% as well. That scared the crap out of me.
I then tried to enable Miner-scr so that I can mine when I'm not using the VM. The miner still didn't work, but this time gave a different error:
FATAL kernel error: Failed to apply BFI_INT patch to kernel! Is BFI_INT supported on this hardware?
I looked at the "Issues" tab of Miner-scr's website and multiple people reported this problem. After further research, it turns out that newer AMD cards have an instruction called BFI_INT that can increase the performance of mining by 5%-20%. Sounds like a good feature, but not call cards support it. My AMD card isn't new enough to support it. All Nvidia cards do not support it. After looking at the source code for Miner-scr, it looks like the developer hardcoded the enabling of BFI_INT. This means Miner-scr only supports the latest AMD cards. It does not support Nvidia or older AMDs.
I decided to install vanilla Phoenix 2.0 to do some trial runs. I fired it up and it started to mine at around 250 Mhashs/s. That is far more than I could ever get with my other CPUs/GPUs. The default config file that comes with Phoenix uses an "aggression" of 3. I decided to bump it up to 10 (Miner-scr defaults to 25) and my video card started beeping. GPU Caps Viewer told me the GPU was over 170F. I dropped it down to 5 and instead of jumping to over 170F, it grew slowly to 170F. I tried 3 and it grew even slower, but eventually started beeping at me. Now that I had CCC installed, I tried bumping the fan to stay at 90% but that only slowed it down. It still ran too hot in the long term. Eventually, I dropped it down to 2. At 2, the GPU stayed just barely below 170F. At 2, I was generating 185 Mhashs/s. It is not the 400 I was hoping for, but it is far more than I was doing before.
The heat issues I am facing are not directly related to the fact that I am using virtualization. Indirectly, I do have 2 video cards as well as a bunch of hard disks in the computer. It is a mid-tower case. It doesn't have any fancy extra cooling in it. I'm sure that if the GPU was in a more spacious case, it would easily get to the 400 Mhashs/s mark.
Also, I have not been able to configure the computer to only mine when the screensaver is on. Once I move the mouse, I want to be able to play my games at full performance. I will continue to work on this. For now, I am taking a break from my gaming, so I can leave the miner running.
No comments:
Post a Comment
Note: Only a member of this blog may post a comment.