Jump to content
HWBOT Community Forums
Splave

Time to enforce bench mate for AMD in windows 10

Recommended Posts

7 hours ago, Splave said:

Some users are now having their submissions flagged for using benchmate. Sigh.....What has this all become

That's what happens when you pander to the wrong crowd for so many years.

  • Like 2

Share this post


Link to post
Share on other sites

I setup all my Ryzen on W7, why can't everyone else, cause like, I am super shit and rubbish with OS's??? Hell, I am doing it now for X570.

 

Agree though, make it so. It can only help things move in a forward direction. Also, 100% behind you on that the ones with disabled points have a direct effect on those that find the right way to earn the boints. Lets make HWBot and AMD benching great again!

  • Like 2
  • Thanks 2

Share this post


Link to post
Share on other sites
3 hours ago, KaRtA said:

I setup all my Ryzen on W7, why can't everyone else, cause like, I am super shit and rubbish with OS's??? Hell, I am doing it now for X570.

I've setup a Win 7 OS for old Intel platforms yesterday and it was nothing but trouble. Since this month a fresh SP1 install can't even check for Windows Updates without having the latest SHA256 update patches included. More of the same hassle when switching an existing W7 install from an old Intel platform to a new one. It doesn't work because of missing xHCI USB drivers. Same thing with Ryzen I guess, because last time I checked the mouse and keyboard didn't work and I couldn't log in. CINEBENCH R20 for example needs two additional patches to work on Windows 7 and doesn't work out-of-the-box either.

Ryzen 3000 on Windows 7 is another topic. Multiple people tried and it's not only not officially supported (fixes and speed improvements won't happen on Windows 7), but it seems to be not as stable and slower.

So in the end it's either a struggle to get it working on modern platforms or not the best choice anyways. And at some point in the future it might not be possible at all to go back to Windows 7. What happens then?

Also don't forget that we want new people to come into the community. Most of the new guys start with Windows 10 on a modern platform and if they can't participate with that and their first score gets removed instantly, they will never get into competitive overclocking on HWBOT.

Edited by _mat_
  • Like 4

Share this post


Link to post
Share on other sites
17 hours ago, keeph8n said:

Just assumed you were going for the salt and pepper look

Def salty not sure about the pepper 🤓 🤓

  • Haha 1
  • Confused 1

Share this post


Link to post
Share on other sites

Hey guys so even if you dont alter the bclk directly you can have skew on the timer with ryzen in win10.

Im seeing 99.8* to 100.4* in cpuz depending on the boot and temp on ln2 it swings a lot. Scoring is not accurate.

So if you are me now, what do you do when you are using bench-mate and getting second place to someone that is not using it?

Does this mean on boards that dont have external bclk generators can also have skewing? will test on aqua which does not have external generator. 

timer bug.jpeg

  • Like 2

Share this post


Link to post
Share on other sites
Posted (edited)

The skew is too high, this looks more like the realtime priority bug where the validation couldn't keep up because of the overwhelming load. This is fixed with BenchMate 0.10 (coming very soon, if my fucking job lets me).

Was Geekbench run with realtime?

 

Edited by _mat_
  • Thanks 1

Share this post


Link to post
Share on other sites

@Splave I haven't seen that with any of the TR4 boards I've used, but I have only used a few. Let me know what you find out.

 

@_mat_ I'll send you a PM on either here or FB about something weird I ran into last night on X299. Installed Intel SDK and received an error about a missing DLL when opening any version of GPUPI

Share this post


Link to post
Share on other sites
2 hours ago, _mat_ said:

The skew is too high, this looks more like the realtime priority bug where the validation couldn't keep up because of the overwhelming load. This is fixed with BenchMate 0.10 (coming very soon, if my fucking job lets me).

Was Geekbench run with realtime?

 

nope 😮 normal mode

  • Thanks 1
  • Confused 1

Share this post


Link to post
Share on other sites
Guest 0.0
Posted (edited)

Lets say we run a bench that takes 37.495751 seconds to run.

Using a 32-bit counter running at 14.318180 MHz the start of the bench is hex F000 0000 and at the end is hex 1000 0000 (32-bit wrap around).

Using 32-bit integer arithmetic (ie sub eax,edx)
1000 0000 - F000 0000 = 2000 0000, in decimal 536870912, in seconds 536870912/14318180 = 37.495751. A different counter reference also shows 37.495751 seconds run time for the bench giving a skew of 37.495751 - 37.495751 = 0

Using 64-bit arithmetic (ie sub rax,rdx)
0000 0000 1000 0000 - 0000 0000 F000 0000 = FFFF FFFF 2000 0000, in unsigned decimal 18446744069951455232, in seconds = 18446744069951455232/14318180 = 1288344193881.586573 seconds.
Subtract the second reference counter time gives a skew of 1288344193881.586573 - 37.495751 = 1288344193844.090822 seconds (look familiar?), a difference of around 40825 years.

So skew is very likely good, just a glitch.

Edited by 0.0

Share this post


Link to post
Share on other sites
On 10/3/2019 at 11:41 AM, Splave said:

Hey guys so even if you dont alter the bclk directly you can have skew on the timer with ryzen in win10.

Im seeing 99.8* to 100.4* in cpuz depending on the boot and temp on ln2 it swings a lot. Scoring is not accurate.

So if you are me now, what do you do when you are using bench-mate and getting second place to someone that is not using it?

Does this mean on boards that dont have external bclk generators can also have skewing? will test on aqua which does not have external generator. 

timer bug.jpeg

Same thing popping up over here even on the X570 Aqua which has no clockgen or any way to alter bclk.

Share this post


Link to post
Share on other sites
10 hours ago, l0ud_sil3nc3 said:

Same thing popping up over here even on the X570 Aqua which has no clockgen or any way to alter bclk.

Interesting. I will have some time tomorrow to finish BenchMate 0.10. And even if I can't finish it tomorrow, I can send you and the Splaver a test version to see if this is fixed now. Would help me a lot!

  • Like 1
  • Thanks 1

Share this post


Link to post
Share on other sites
On 10/6/2019 at 4:20 AM, _mat_ said:

Interesting. I will have some time tomorrow to finish BenchMate 0.10. And even if I can't finish it tomorrow, I can send you and the Splaver a test version to see if this is fixed now. Would help me a lot!

Sounds great Mat, I can test out when I get back home in a day or so. No rush on your end but will gladly provide feedback if it can help in anyway.

Really appreciate what you've done for the community, keep it up :)

 

  • Like 4

Share this post


Link to post
Share on other sites

Fully agree with the original post by Splave. lets have Benchmate formalized for submissions with win10.  trying to get new hardware to run Win 7 is seemingly not going to work. Spent enough time trying. 

  • Thanks 1

Share this post


Link to post
Share on other sites

Don't worry been cooking up some good stuff. You guys going to beg to use benchmate when we are done 😀😀

  • Like 3
  • Haha 2

Share this post


Link to post
Share on other sites

bclk is what i have seen never 100% steady on any motherboard. and it is I assume based on the RTC.

The crystal used is for this is old style and has never been 100% stable. to have a stable clock you would need a more expensive temperature controlled oscillator circuit that simply is never used on motherboards but on certain high specked radio transceivers/receivers.

Cheaper MBs thus most often end up with a bclk just below 100 Mhz as i guess they select even cheaper crystals. 

The frequency 32768 Hz (32.768 KHz) is commonly used, because it is a power of 2 (215) value. And, you can get a precise 1 second period (1 Hz frequency) by using a 15 stage binary counter. which is not so precise compared to what the HPET solution gives.

I assumed the HPET will make sure to keep the scoring correct despite such clock variations?  both BCLK and Cores  varies if using all the intel turbo features.

Or do I understand this completely wrong?

 

 

Share this post


Link to post
Share on other sites

BenchMate uses HPET as well as the ACPI PM Timer to monitor the benchmark results. It's also good to know that there are three methods that BenchMate uses to validate any timer measurements:

  1. The HPET timer is injected into the benchmark, so every timer call that happens will give a very precise HPET timestamp. That's used for SuperPi and GPUPI for example. Results will also be more stable for the reasons you stated above. Any runtime is compared with other timers in the system as well. But this method only works if the timer calls are used as they should: A few dozen times during a reasonable runtime, not a million times per second. In that case HPET would be too slow and would hold the score back.
  2. The original timer is monitored by BenchMate because it is used too often that a very fast timer is necessary to stay competitive. The original timer's reliability is ensured by comparing runtimes with HPET and ACPI PM timer. If the benchmark chooses a very bad timer (like the very jumpy timeGetTime()) it is exchanged with the more stable QPC timer (which relies on the CPU's TSC). This used for CINEBENCH and 3DMark03, 05 and 06 for example.

Both methods have to be extremely precise to produce a validated score with BenchMate. Each timer has to be 99.99% and at least 10 milliseconds accurate to the other time sources that are measured; that's independent of the length of time that's measured, so all runs are equal. As you can see there's not a lot of room for error here and it's not necessary. If something is wrong, it will clearly show up as invalid.

What's important here is that we need to stop assuming things in regards to timer reliabilty. "AMD is safe on Windows 7" is not necessarily true at all, because most of the time we don't know the details of the system components involved and the way the OS reacts to them. The truth is that Windows chooses the default system timer by its own rules and these are not made for benchmarking. Microsoft cares about mainstream use and performance, everything else is better chosen by the user, who should have a clue what he wants to do with the system (benchmark it). So there is the option to switch to other timing methods for the system timer. Or as we know it: bcdedit /set useplatformclock yes
Does it say HPET in there? No, it says "platformclock" which might be HPET, might be ACPI PM timer, might even be RTC or PIT. It's what Windows deems to be right for a time source that's available by the platform (as in not in the CPU, I guess).
If that's not enough to think about, here is a new fact: There are also platforms out there where HPET is emulated by another timer source, that might be unreliable due to skewing.

To sum this rant up in one sentence: We can't assume shit, we have to measure to be sure.

Edited by _mat_
  • Like 2

Share this post


Link to post
Share on other sites
2 hours ago, _mat_ said:

BenchMate uses HPET as well as the ACPI PM Timer to monitor the benchmark results. It's also good to know that there are three methods that BenchMate uses to validate any timer measurements:

  1. The HPET timer is injected into the benchmark, so every timer call that happens will give a very precise HPET timestamp. That's used for SuperPi and GPUPI for example. Results will also be more stable for the reasons you stated above. Any runtime is compared with other timers in the system as well. But this method only works if the timer calls are used as they should: A few dozen times during a reasonable runtime, not a million times per second. In that case HPET would be too slow and would hold the score back.
  2. The original timer is monitored by BenchMate because it is used too often that a very fast timer is necessary to stay competitive. The original timer's reliability is ensured by comparing runtimes with HPET and ACPI PM timer. If the benchmark chooses a very bad timer (like the very jumpy timeGetTime()) it is exchanged with the more stable QPC timer (which relies on the CPU's TSC). This used for CINEBENCH and 3DMark03, 05 and 06 for example.

Both methods have to be extremely precise to produce a validated score with BenchMate. Each timer has to be 99.99% and at least 10 milliseconds accurate to the other time sources that are measured; that's independent of the length of time that's measured, so all runs are equal. As you can see there's not a lot of room for error here and it's not necessary. If something is wrong, it will clearly show up as invalid.

What's important here is that we need to stop assuming things in regards to timer reliabilty. "AMD is safe on Windows 7" is not necessarily true at all, because most of the time we don't know the details of the system components involved and the way the OS reacts to them. The truth is that Windows chooses the default system timer by its own rules and these are not made for benchmarking. Microsoft cares about mainstream use and performance, everything else is better chosen by the user, who should have a clue what he wants to do with the system (benchmark it). So there is the option to switch to other timing methods for the system timer. Or as we know it: bcdedit /set useplatformclock yes
Does it say HPET in there? No, it says "platformclock" which might be HPET, might be ACPI PM timer, might even be RTC or PIT. It's what Windows deems to be right for a time source that's available by the platform (as in not in the CPU, I guess).
If that's not enough to think about, here is a new fact: There are also platforms out there where HPET is emulated by another timer source, that might be unreliable due to skewing.

To sum this rant up in one sentence: We can't assume shit, we have to measure to be sure.

Thanks for very good explanation and for taking on the challenge to actually make an even playing field without dubious clocks. Indeed we cant assume shit. Then ofcourse it does not help that some Motherboard manufacturer create pause button to freeze a run so parameters can be changed mid way in a benchmark run....

Share this post


Link to post
Share on other sites
21 minutes ago, Matsglobetrotter said:

Thanks for very good explanation and for taking on the challenge to actually make an even playing field without dubious clocks. Indeed we cant assume shit. Then ofcourse it does not help that some Motherboard manufacturer create pause button to freeze a run so parameters can be changed mid way in a benchmark run....

I doubt that they can freeze the HPET crystal so I'm pretty sure that will result in an invalid run. Needs testing though.

Edited by _mat_

Share this post


Link to post
Share on other sites

how to get Wprime benchamrk to the Benchmate? I got error code if I tried add it manually :(

Share this post


Link to post
Share on other sites

if its not supported (yet) by benchmate, it will not work Christian 😛 AMD user will have to use 7 to sort of run Wprime...

Started cleaning the AM4 ... people will be wanting my blood....

Edited by Leeghoofd
  • Like 2

Share this post


Link to post
Share on other sites

Agree with you, I was a little mad yesterday after I read the emails :)...

Issue is still X570 vs Win7. I have no solution on this for wprime :( Yes, I have also C6H board (X370), but Im lazzy to switch to x370 for one result like wprime and specially on AIR/AIO cooling.

 

Share this post


Link to post
Share on other sites

Thus, for now if you can't get Win7 to work on X570 you are limited to the benches with a timer check (GPUPI and X265) and the ones supported by Benchmate.

For the future it will  all depend on the nr of benchies that Matt can include in the BenchMate program. He's trying to get hold of the Wprime developper.

Anyway a newer version is already announced with extra benches :)

  • Confused 1

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...