It's well known now that the very same GPU with the 16.4.1 drivers has a lower hash rate than with the 15.12 I absolutely don't have the beginning of an idea to why. Anyone?

  • This question has received a vote and is close to being off-topic. It's also assuming too much. Suggestion is to be more specific, add more details, improve the title, and maybe try asking a question related to ethash.
    – eth
    Commented Apr 15, 2016 at 7:22
  • while i understand your point and as much as I'd like to improve the quality of my question, I have not the ideas clear enough to see the interactions between drivers / ethash and formulate it in a clearer or more theorical way, I have juste "practical" knowledge that there is this difference, that stops here. if you want to reformulate for me I'm all hears ;)
    – euri10
    Commented Apr 15, 2016 at 7:26
  • Well, you could add details about your environment, gpu hardware and maybe some numbers how the hashrate is with 15.12 and 16.4 drivers. Otherwise this is a very speculative question.
    – q9f
    Commented Apr 15, 2016 at 11:21

1 Answer 1


That's pretty much impossible to answer. A driver is a hardware's soul, it has full control over the hardware and what it will do, and how it will do it.

A few things that could influence it:

  • Different task scheduling, so maybe the GPU is doing something else with a higher priority than before, giving less resources to hashing.
  • The driver might have a modified quality-of-service algorithm, maybe more aggressively taking care of overheating (e.g. lower its throughput faster as temperature increases).
  • Different memory management that maybe does more copies in case of ethash, but less for some other task types.
  • Last but not least, one version may contain a bug over the other that does some extra/useless operation that impacts performance.

All in all it's pretty much impossible to answer it properly without a deep understanding of both the hardware and the driver code itself too. Even if the driver works perfectly, it always comes down to balancing various things to achieve an optimal performance on some baseline benchmark, which may or may not lie close to the requirements of ethash.

  • The other answer here (that it's impossible to answer) is dead wrong. It's actually quite simple - ethminer hardcodes the OpenCL source and compiles it at runtime. The OpenCL compiler provided by AMD is horrid on its best day - on its worst, so buggy that its code generation is flat-out wrong.
    – user2890
    Commented Jun 17, 2016 at 23:55

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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