cyring / CoreFreq

CoreFreq : CPU monitoring and tuning software designed for 64-bit processors.
https://www.cyring.fr
GNU General Public License v2.0
1.97k stars 126 forks source link

FIXED. Chat & Screens & Benchs: Various Intel Gen CPUs & X570 + Ryzen 3rd Gen #129

Closed olejon closed 4 years ago

olejon commented 5 years ago
$ make
...
make -j1 -C /lib/modules/4.15.0-52-generic/build M=/home/username/Downloads/CoreFreq modules
make[1]: Entering directory '/usr/src/linux-headers-4.15.0-52-generic'
  CC [M]  /home/username/Downloads/CoreFreq/corefreqk.o
/home/username/Downloads/CoreFreq/corefreqk.c: In function ‘SMBIOS_Collect’:
/home/username/Downloads/CoreFreq/corefreqk.c:9107:5: error: ‘DMI_PRODUCT_SKU’ undeclared (first use in this function); did you mean ‘DMI_PRODUCT_UUID’?
   { DMI_PRODUCT_SKU, Proc->SMB.Product.SKU },
     ^~~~~~~~~~~~~~~
     DMI_PRODUCT_UUID
/home/username/Downloads/CoreFreq/corefreqk.c:9107:5: note: each undeclared identifier is reported only once for each function it appears in
scripts/Makefile.build:337: recipe for target '/home/username/Downloads/CoreFreq/corefreqk.o' failed
make[2]: *** [/home/username/Downloads/CoreFreq/corefreqk.o] Error 1
Makefile:1552: recipe for target '_module_/home/username/Downloads/CoreFreq' failed
make[1]: *** [_module_/home/username/Downloads/CoreFreq] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-4.15.0-52-generic'
Makefile:70: recipe for target 'all' failed
make: *** [all] Error 2

I see you did varios SMBIOS 6 days ago. That is what failing it seems.

I haven't installed/purged or changed anything that should have anything to do with building from source code.

cyring commented 5 years ago

If you thankfully add your screenshots, please consider the issue #138 and hide your board serial number

olejon commented 5 years ago

New data: Nehalem. I don't care about this MB's serial. For this old 18" monster with a 120 W huge power adapter getting really hot as well. SMBIOS data says it all, except dv8-1190eo:

https://www.olejon.net/files/CF-HP-Laptop-2010-i7-Q-720/

OS: Ubuntu 18.04.1 LTS Live USB now that SSD is out and only HDD left. Runs really fast TBH, and that USB isn't that fast, so when it had the 550/550 MB/s (confirmed) I took out of it to get Windows 10 on my workstation, it was really fast using Linux (had Arch for a while, then became just a Windows 10 test machine)

cyring commented 5 years ago

and seems like you're doing everything right

I love to read this, thank you

Thanks a lot for these precious returns.

BTW :

Cheers Cyril

cyring commented 5 years ago

Also, please try booting the CoreFreq image. It will help to validate the all Cores stress w/ the i7-920 Q
This live CD is also based on Arch Linux. You can install from it, just switch to another VT terminal, you are root w/o password. Just follow the Arch Wiki to proceed with installation

olejon commented 5 years ago

I never meant that CoreFreq should be able to match Ryzen Master, and remember, it's only for Ryzen. CoreFreq supports like everything with some gaps, but as you say here for VCore it doesn't seem to be CoreFreq's fault, but CPU/arch (haven't tried Intel's tool to check though), mostly that the "Memory controller" window is not possible to open, but TBH it's useless for me as it does not show my timings like all tools in Windows that show them show them correctly (like 3rd party vendor-independent CPU-z and also Ryzen Master shows these correctly - it can after all change UEFI settings). And later I'll post things CoreFreq can show/do that Ryzen Master can't so... Here it is:

# lspci -nn

00:00.0 Host bridge [0600]: Intel Corporation Core Processor DMI [8086:d132] (rev 11)
00:03.0 PCI bridge [0604]: Intel Corporation Core Processor PCI Express Root Port 1 [8086:d138] (rev 11)
00:08.0 System peripheral [0880]: Intel Corporation Core Processor System Management Registers [8086:d155] (rev 11)
00:08.1 System peripheral [0880]: Intel Corporation Core Processor Semaphore and Scratchpad Registers [8086:d156] (rev 11)
00:08.2 System peripheral [0880]: Intel Corporation Core Processor System Control and Status Registers [8086:d157] (rev 11)
00:08.3 System peripheral [0880]: Intel Corporation Core Processor Miscellaneous Registers [8086:d158] (rev 11)
00:10.0 System peripheral [0880]: Intel Corporation Core Processor QPI Link [8086:d150] (rev 11)
00:10.1 System peripheral [0880]: Intel Corporation Core Processor QPI Routing and Protocol Registers [8086:d151] (rev 11)
00:1a.0 USB controller [0c03]: Intel Corporation 5 Series/3400 Series Chipset USB2 Enhanced Host Controller [8086:3b3c] (rev 05)
00:1b.0 Audio device [0403]: Intel Corporation 5 Series/3400 Series Chipset High Definition Audio [8086:3b56] (rev 05)
00:1c.0 PCI bridge [0604]: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 1 [8086:3b42] (rev 05)
00:1c.1 PCI bridge [0604]: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 2 [8086:3b44] (rev 05)
00:1c.4 PCI bridge [0604]: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 5 [8086:3b4a] (rev 05)
00:1c.7 PCI bridge [0604]: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 8 [8086:3b50] (rev 05)
00:1d.0 USB controller [0c03]: Intel Corporation 5 Series/3400 Series Chipset USB2 Enhanced Host Controller [8086:3b34] (rev 05)
00:1e.0 PCI bridge [0604]: Intel Corporation 82801 Mobile PCI Bridge [8086:2448] (rev a5)
00:1f.0 ISA bridge [0601]: Intel Corporation PM55 Chipset LPC Interface Controller [8086:3b03] (rev 05)
00:1f.2 SATA controller [0106]: Intel Corporation 5 Series/3400 Series Chipset 6 port SATA AHCI Controller [8086:3b2f] (rev 05)
00:1f.3 SMBus [0c05]: Intel Corporation 5 Series/3400 Series Chipset SMBus Controller [8086:3b30] (rev 05)
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GT216M [GeForce GT 230M] [10de:0a28] (rev a2)
01:00.1 Audio device [0403]: NVIDIA Corporation GT216 HDMI Audio Controller [10de:0be2] (rev a1)
02:00.0 Network controller [0280]: Intel Corporation Centrino Advanced-N 6200 [8086:4239] (rev 35)
03:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168] (rev 03)
04:00.0 FireWire (IEEE 1394) [0c00]: JMicron Technology Corp. IEEE 1394 Host Controller [197b:2380]
04:00.1 System peripheral [0880]: JMicron Technology Corp. SD/MMC Host Controller [197b:2382]
04:00.2 SD Host controller [0805]: JMicron Technology Corp. Standard SD Host Controller [197b:2381]
04:00.3 System peripheral [0880]: JMicron Technology Corp. MS Host Controller [197b:2383]
04:00.4 System peripheral [0880]: JMicron Technology Corp. xD Host Controller [197b:2384]
ff:00.0 Host bridge [0600]: Intel Corporation Core Processor QuickPath Architecture Generic Non-Core Registers [8086:2c52] (rev 04)
ff:00.1 Host bridge [0600]: Intel Corporation Core Processor QuickPath Architecture System Address Decoder [8086:2c81] (rev 04)
ff:02.0 Host bridge [0600]: Intel Corporation Core Processor QPI Link 0 [8086:2c90] (rev 04)
ff:02.1 Host bridge [0600]: Intel Corporation Core Processor QPI Physical 0 [8086:2c91] (rev 04)
ff:03.0 Host bridge [0600]: Intel Corporation Core Processor Integrated Memory Controller [8086:2c98] (rev 04)
ff:03.1 Host bridge [0600]: Intel Corporation Core Processor Integrated Memory Controller Target Address Decoder [8086:2c99] (rev 04)
ff:03.4 Host bridge [0600]: Intel Corporation Core Processor Integrated Memory Controller Test Registers [8086:2c9c] (rev 04)
ff:04.0 Host bridge [0600]: Intel Corporation Core Processor Integrated Memory Controller Channel 0 Control Registers [8086:2ca0] (rev 04)
ff:04.1 Host bridge [0600]: Intel Corporation Core Processor Integrated Memory Controller Channel 0 Address Registers [8086:2ca1] (rev 04)
ff:04.2 Host bridge [0600]: Intel Corporation Core Processor Integrated Memory Controller Channel 0 Rank Registers [8086:2ca2] (rev 04)
ff:04.3 Host bridge [0600]: Intel Corporation Core Processor Integrated Memory Controller Channel 0 Thermal Control Registers [8086:2ca3] (rev 04)
ff:05.0 Host bridge [0600]: Intel Corporation Core Processor Integrated Memory Controller Channel 1 Control Registers [8086:2ca8] (rev 04)
ff:05.1 Host bridge [0600]: Intel Corporation Core Processor Integrated Memory Controller Channel 1 Address Registers [8086:2ca9] (rev 04)
ff:05.2 Host bridge [0600]: Intel Corporation Core Processor Integrated Memory Controller Channel 1 Rank Registers [8086:2caa] (rev 04)
ff:05.3 Host bridge [0600]: Intel Corporation Core Processor Integrated Memory Controller Channel 1 Thermal Control Registers [8086:2cab] (rev 04)

Got surprised (again!) when looking at I/O of this beast (curious reading):

cyring commented 5 years ago

What's really chock me is that all stressed Cores max to ratio 12 ! rather than 13 (EDIT)

Can it be my algorithm not stressing CPU enough ?

Can you plz test with Conics, 2 plans ?

cyring commented 5 years ago

EDIT: below was the answer

Using "Atomic Burn/CRC32 Compute" it holds 1.7 GHz

Forget requests above

cyring commented 5 years ago

Grabbed this screenshot on Reddit, from what do this software read the C-States from ? Have read many times the PPR specs and I don't find any counter ! cnsm3u0fmtf31

cyring commented 5 years ago

If your Ryzen ready ? please try the user-space program of this project : https://github.com/FlyGoat/ryzen_nb_smu

olejon commented 5 years ago

Here you go, same folder:






Screenshots:

Latest Blender Benchmark Beta - Popular CPU bench as it maxes and takes time so throttling will affect it heavily:

Linux (Standard bmw & classroom):

Blender Linux

Windows (Standard bmw & classroom):

Blender Windows



Geekbench 4 Linux (CLI run):

Geekbench Linux

Geekbench 4 Windows (CLI run as well to be fair):

Geekbench Windows

HWMonitor showing the correct CPU temp when stressed by CPU-z (same developer):

HWMonitor Stress

HWMonitor showing some times 3-5 C difference from Ryzen Master when idle compared to Ryzen Master at the same time - AND CoreFreq is right compared to this widely used Windows tool (I doom HWMonitor not ready for Ryzen yet - while declaring CoreFreq READY!):

HWMonitor Idle

Ryzen Master for curiosity (not showing the idle temp difference mentioned above as screenshot not taken at same boot & conditions):

Ryzen Master

olejon commented 5 years ago

EDIT: Some extra info + typos.

cyring commented 5 years ago
cyring commented 5 years ago

i7-720QM is now listed into the wiki CPU support page

BTW, I'll add its specific codename Clarksfield

olejon commented 5 years ago
2191231
2193568
2195194
2195446
2193097
2195815
2191359
2195558
2194831
2191987
2192160
2195584

Image

Image

olejon commented 5 years ago

EDIT:

Looking at my screenshots from the i5-6600K it used (I cut the values in half because that's precisely what CoreFreq did after you changed the algorithm):

BTW: Seems like I must take new screenshots for my NUC and MacBook then, since the Power Usage (Watts etc) reading is incorrect (should be half of current screenshots). But sorry I can't for the i5-6600K since it and the whole MB is in a box now (BUT I can edit them in GIMP, no problem!). Probably gonna use it to build a rig for my nephew. He's getting old enough, and father is strict on iPad time which he respects, so... Just lacks a chassis and a PSU. In fact on the top of his Christmas wishlist for years has been "Build a PC with (me)" :-) He's so like me as my sister always said... And his favorite school subject: Well just called "Data" in Norwegian, which is basically (Using and understanding) Computers & Productive Programs & Some "Coding" for that age now with Coding for Kids programs by governments and NGOs.

cyring commented 5 years ago

Idle Ryzen: 14 W Max stressed Ryzen: 92 W

If yes, this a major breakthrough b/c I have an issue w/ two 3700X where the power measurements are wrong. We can't tell if it comes from an algorithm error, or RAPL, or microcode, or BIOS ? Please supply your detailed outputs into issue #57

olejon commented 5 years ago
olejon commented 5 years ago

Used the "Performance Monitor" in Windows where one can add monitoring of C-states. Not sure if it's correct at all though. All files here.

cyring commented 5 years ago

Fyi Ryzen 5 3600X added into Wiki.

olejon commented 5 years ago

:+1:

With a couple of logical Google searches I didn't find a tool saying it monitors C-states. I did however find an old MS article showing how to do it in Windows 7, and it's there in Windows 10 as well

Man can one add tons of stuff to monitor, but not very made for screenshots as many readings would add a ton of graph colors, would require one screenshot per reading for the Average, Max & Min, but a pro user of the tool can maybe change it to numbers instead of a graph, I didn't have time to become a pro user of the tool, especially when in this case IDK if they're right.

Theory: Maybe C2 is really C1, or at least what CoreFreq shows as C1 (if the Windows tool's fault or CoreFreq IDK). But if C2 in that tool is really C1, the CoreFreq readings are correct (or should show C1 as C2 if Windows tool is right).

And NO, one can not add any C-state lower than C3 to monitor. Maybe on Intel, but I've only got Windows on this machine now, so can't check on my MacBook for instance. Well can download 90 day evaluation version and install in Bootcamp but even when Apple provides the necessary drivers for Windows in Bootcamp, if Apple provides correct values for such readings, IDK either.

Somebody else with Windows installed as well and with an Intel CPU should check if the tool can add C6/C7 for instance, and if matches CoreFreq!

cyring commented 5 years ago

Used the "Performance Monitor" in Windows where one can add monitoring of C-states. Not sure if it's correct at all though.

I can't tell where those counters are read from. I might be wrong but C2 is usually an ACPI states. This is telling me that values may be read from the ACPI reserved memory area...

PC6 and CC6 are somewhat documented however they don't show up in the tool ! ... Because they are not part of ACPI specifications...

  1. a registered idle function is called by kernel when it comes to enter a defined idle state.
  2. corefreq-idle is already implemented for this and when called, it executes the mwait instruction, with the level of C-States passed by kernel
  3. for Zen, we can use this call opportunity to increment an artificial counter per level.
  4. taking care it doesn't overflow by the way

Results will off course be less accurate than hardware counters. It also requires to blacklist the mainstream idle driver to leave the room to CoreFreq. (only one driver can register during the full uptime)

cyring commented 5 years ago

The effective frequency interface only counts clock cycles while the core is in the ACPI defined C0 state.

Specifications don't mention other state than C0 but ACPI is clearly in use.

Software determines the P0 frequency using ACPI defined data

Above is about P-States, and not C-States

Remark:

olejon commented 5 years ago

cyring commented 5 years ago

but "GPIO" and "PCI" parts fail (as one can see if opening log), so must be unticked...

These don't invite me to go back to Windows 😢

Future is open source drivers with a significant contribution from manufacturers. Only users with the help of developers can realize the right software. This requires to free the NDA which is somewhat useless b/c the competition rule is in fact : first one to release some tech on the market wins. The others are just left behind and have no time to fill the gap.

olejon commented 5 years ago

Not exactly CoreFreq, but somewhat funny journey, and useful if you wanna try Windows 10 on a separate disk for comparisons:


cyring commented 5 years ago

Windows, so, I have a second partition for this 7 pro upgraded to 10. What it looks like: digital dust. Too long to explain why Windows Update just makes me crazy, I'm just keeping it for Star Citizen

I have had hope WSL v1 will make CoreFreq port à piece of cake until insmod returns "stub not implemented". What a joke.

Native port does not seem that hard. I have programmed DOS, OS/2 and NT drivers in the past, but like Mac OS, Windows is unfriendly as a system programmer. Pay for a developer subscription; pay for a certicate; submit your work to a bureaucracy team; etc...

olejon commented 5 years ago

Mhm, I know. BTW just posted above. Linux is darn flexible and I'll never go Windows again.

I have not booted Windows 10 (and that was Regular not Insider Program) since April 2018, and it's always fun to fiddle around with a new OS, which a clean install of Windows 10 with the Insider Program on and set to Fast basically is compared to back then. It HAS improved.

Soon MS Edge will be Chromium-based too by default (one can download the beta or nightly if Insider), and as far as I've seen on Windows Central YT Channel it works fine as a daily driver now.


That'll make web developer's job much easier from now on. They can rely on Chromium-based browsers (including their mobile versions), like Chrome, Safari (for the most part as using WebKit2, but Google still contributes like crazy even after stopping forking WebKit for the rendering (only), always used another faster JS engine which was kind of the point with Chrome at first) and Opera to behave the same. And Firefox is good too, of course. The LOL about Firefox is that with like first beta of 1.0 everyone in my small town I knew, including non-tech people switched to it as soon as hearing the rumour and trying it.

Before Firefox though, (Norwegian company) Opera invented tabs, bookmarks manager, bookmark toolbar and such, and DID adhere to web standards and IIRC had no browser specific code, fast rendering, worked on Linux like a charm... Can't remember instability. It wasn't FOSS though, or think parts of it, like engine. But the browser itself showed a banner ad unless you paid. It was worth it. IDK if it gave any extra features. As most companies probably made more money on people seeing ads rather than buying "pro". Think it was easy to use another person's license too, or at least your own on all PCs. Was my browser of choice on SUSE + KDE3 back in the days until Firefox 1.0 Beta, since Konqueror sucked (but credits for KHTML forcing Apple to keep WebKit open hah).

After making Opera Mini, which was HUGE in developing countries, even accepted on the App Store not using iOS WebView by Apple since not technically a web browser, but parsing on servers and sending very small data files compressed with the text and images, kind of like Reading Mode today but without loading the page fully first (cutting all unnecessary stuff, though became difficult when sites became so dependent on JS, but most news sites, Wikipedia etc just used the noscript tag and sent a standard site using text, images, buttons, links etc), while other 3rd party browsers must use the WebKit WebView engine (which Chrome must on iOS, it's really just different UI, sync etc that's different), and even worse before Apple just forced all third party browsers using the WebKit WebView AND pages added to the home screen that had the "full screen" HTML tag, to make it an app basically to first use the previous version of their JS engine they shipped for that reason alone(?), giving much lower JS benchs and easy to notice on heavy pages. AND still lacking setting another default browser.

Gotta hope X app choose which is possible, but you must enter Settings like one always should to turn off Telemetry etc. Some statistics show more use Chrome than Safari even on iOS, so that's probably why Apple sends you to Safari when you open a link from any Apple App for instance. THEN they started to give access to same JS engine, but with a low priority on the process. Again making Safari seem much smoother, but full screen apps added from Safari got almost full benefit.

At the same time they broke many Apple specific HTML header tags, which are still in the docs and says they do X on iOS but they don't - there's a blog following what is changing, usually for the worst, with every iOS release, even point releases, and thousands of web developers either used their Developer Account Feedback option or simply apple.com/feedback to report the bugs, and nothing happened.

The mentioned public site is actually a form you can get response to, like if you've bought an app and it doesn't do what it should, you simply provide details or screenshots, and get your money back. This is human interaction with Apple OMG! Why not adapt Google's policy of letting one try an app (one time) for an hour and before an hour has passed the Uninstall button is called Refund... And uninstalls. They lowered to 15 minutes but went back because of outcry. Maybe it's even more now, or 30 minutes. Be aware that abuse of the Refund may get you in problems. Like games that one can complete or get bored of within the time, if like using the Refund feature obviously for those things (quickly do something you need then Refund) a lot Google's AI picks it up.

LOL like the guy who sent an email to sj at apple dot com complaining about the iPhone 4's cellular reception and got the response

You're holding it wrong

... which forced a public statement from Apple. He answered others as well. Several times kindly.

Especially because of Opera Mini the browser division of Opera was sold for A LOT of money. Think the new Chromium one is back in the mother company though, as they wouldn't let go. But why use it instead of the others, they haven't figured out.

BTW these are the same guys behind Trolltech meaning the same guys behind Qt (Cute), meaning KDE, VLC and much more. Think maybe Trolltech is sold, or merged.

Also a Norwegian website, most read one AFAIK, news site vg.no started the campaign against MSIE 6 users when MSIE 8/9 or something was out. They made it for all languages and shared the code of their banner to the world with the hope of FINALLY when people see the same darn banner on every serious big website they'll more or less think it's from Microsoft. It had like a button to click to tell you with direct links to download other browsers, like "You're using an outdated and insecure browser. This website will soon stop working correctly in this browser as it requires a person with a full time job just making sure it works OK. Please update to a more modern browser like Firefox, Google Chrome, Opera or Click here to download the latest Internet Explorer directly from Microsoft".

Sources are easy to find, and screenshots. Thankfully it spread like wildfire amongst big websites. People was finally free to do productive work and stats showed MSIE 6 usage dropped dramatically as soon as bit news sites implemented it worldwide, except China and such where everyone has a pirated XP...

Websites still recommended MSIE 6 when detecting it (not using standards). But Firefox 1.0 was just so good and websites rendered fine, and it was developer friendly and FOSS. IDK when extensions came, but ran Flash and Java. Just remembered it was simplistic, nothing more than needed, and such fast, had good tabs management and bookmarks management (MS lost just because of that).

And if not using any browser specific CSS prefixes (many of those are already being implemented as standard so no need for prefixes anymore, mostly just the darn scrollbars, kind of understandable since it's an OS thing, but NOT inside of scrollable div elements for instance, like a pop-up using that, and iframe, but everyone knows to limit those as much as possible. Although new proposed standard from Google will let some non-sensitive communication be able to flow between (very restricted but looked like a good idea, and why those cases needs iframes, when I saw it in action on Chrome Developers YT Channel). It's mostly Apple that blocks standards. Like they blocked the excellent proposal by MS for Pointer Events instead of Touch Events + having to deal with keyboard events and mouse events. This when Hybrid Devices started to come on the market, proposed already perfectly refined when first Surface came. Would've solved so much. There were libs that let you use the API in Safari and IE, converting automatically. Though MS finally had to give up and support Touch Events on both Windows Phone (when still existed) AND faking the user agent so websites thought it was Chrome, with a little clue if you wanted to know it really was Edge for logs or whatnot (this for stupid websites not using JS feature detection). Though think Pointer Events is still a standard. Was an experimental flag in Chrome before at least. Maybe now included. Developers were outraged that Apple denied to implement it, even when MS or Google committed code. Without Apple little will change regarding Touch on websites.

Finally they don't pause all JS execution on scroll (onScroll event). Really what made Safari feel faster when scrolling before (people blamed Android as usual, I suggested to Chromium issue tracker to block certain heavy JS things that don't require running when scrolling, like adding in iframes to DOM with blocking JS, and they kind of agreed actually, but then issue was closed for employees only, haven't seen since but know they do such stuff). Apple had as so many websites dynamically change when scrolling.

Chrome now has a fancy "adblocker" as well, in cooperation with the Open EasyList (how cool is that - sceptics of course but EasyList won't change anything - Google just pulls data from it and proposes new additions) on mobile as well, using code to block certain ads, and with Chrome's market share, ALL websites and ad companies have read their guidelines (easy to find) as to how to make an ad that'll NOT be blocked = WIN for us all.

cyring commented 5 years ago

That's why I'm choosing Linux, the last refuge for developers. And off course, you can do the rest of your office work, as a bonus.

cyring commented 5 years ago

This 32C/64T beast is going to be 6.5 times more powerful than my 6C/12T W3690

Let's hope scores are not faked results.

Sharkstooth @ Geekbench

cyring commented 5 years ago

Hello,

Can you go to issue #140 to replace code with the function

Thanks

olejon commented 5 years ago

Just answered to that in #57 at the bottom as you asked there too. I'll be gone until the 20th at least. Can do stuff remotely but won't leave the monster laptop on for SSH. Must prepare for NVMe RAID and going to Spain on Tuesday as said.

olejon commented 5 years ago

This 32C/64T beast is going to be 6.5 times more powerful than my 6C/12T W3690

WoW! What exact CPU is that? Price?

Not C:\Windows\WindowsWoW64 LOL, sorry but it comes to mind when saying "wow", Windows on Windows 64, great naming...! So stupid and still there as legacy from XP 64-bit AFAIK which was severely limited and desperate for marketing mainly, even many essential Windows components were 32-bit still, while Linux was all 64-bit then for FOSS repos. Like more than a decade for Firefox to be 64-bit on Windows vs Linux which had it from the beginning, because of some Windows limitation shit. Since Firefox is FOSS there was some good reason for it. Took a while for Chromium (Chrome) as well IIRC, compared to Linux. It did after all launch years after Linux had full 64-bit support.

olejon commented 5 years ago

PS: Remember to add .gb4 to the URL of Geekbench results for more details, all in JSON for a simple online viewer if preferred.

EDIT: My 3600X at least takes it on single thread, with the most optimized UEFI stock OC settings, no core ratio, just PBO/XFR-PBO:

https://www.olejon.net/files/CF-X570-Ryzen-3600X/Geekbench-Linux.png

Oh, and there's a new version of Geekbench if it's not the beta... Gotta test later.

olejon commented 5 years ago

New Insider Build. Gotta love when goes "quickly enough" to not swear at it to 100%, but then stays like this forever, with occasional disk activity indicator at least, so probably hasn't hung. You like sit down at 100% you know ready to press the UEFI boot menu key so it restarts to Windows, then end up sitting and sitting... LOL mouse is still active and now screen timed out at 30 mins while I thought it was restart. OMG. 20 minutes later still there. Why it's suddenly saying updates are controlled by my organization IDK. But so does Chrome on Fedora on another computer.

Image

On the other side, let's see if this improves benchs. At least MS publishes a nice changelog with known issues.


Installed my system from scratch. Decided / on one NVMe and /home on the other. Probably better since like Android Studio for instance reads/writes a lot in /home, and will also put all programs (not from repos) previously put in /opt in /home instead. And by default all Steam files go to a hidden folder there as well. Benchs in Linux show 4.5 GB/s+, for both, a 4.6 x improvement over the Intel NVMe (one M.2 slot CPU bound and the other MB, luckily same results).


I don't game as you know. Only know Counter-Strike from back in the days (v 1.5), and controls were still in muscle memory 2017 when last played in 2004 or 2005! When checked out Steam on Linux (kind of had to), installed CS Source, similar in all aspects to CS 1.6 (first Steam edition although remember we always used the stripped version available at TPB etc for LANs). CS Source has a Video Stress Test on Main Menu, and seeing it detects all except unnecessary settings for that game to max (actually 2 settings a level higher than with "Pro" driver), and result: 293-298 FPS average.

Tried CS GO since free to play (nice), since had purchased of CS 1.6 back in the days, the whole suite of Half-Life-based games shows (must be downloaded though). Think CS Source came with as a bonus. CS GO I had to search for and install on Linux although in library on Windows, didn't show up in the library.

Miss the feature from CS 1.5/1.6 on both the newer where one could choose OpenGL instead of DirectX on Windows directly in the menu. Not possible on Source or GO, maybe with flags. On Windows always uses DirectX. What's crazy is that with my AMD MSI RX 570 CS GO peaks at 300 FPS with 19 bots many times during gameplay (activate FPS counter in console), with all settings automatically detected to be set to MAX Quality, and this also with the open and shipped-with amdgpu in the kernel!. You must download a popular 5 stars FPS Benchmark map for CS GO which seems to be the only way to check it and compare as it controls player automatically. Only in smoke FPS dips drastically.


Think only when using bench tool Unigine, one of the few cross-platform GPU tests (Superposition, their latest bench most YT bench videos shows results of many). On 1080 High "Pro" driver performed better, but haven't seen it anywhere else (from glmark2 to games). On Windows one can choose DirectX12 and not surprisingly it gives like 5 FPS average more and nicer colors.

What GPU do you have? Must have one since Ryzen 3rd Gen require a discrete GPU :P Would love to see your average FPS in Unigine Superposition 1080 High bench! (free download). It's a .run file that verifies and extracts it basically. Don't require sudo.

Pro driver says it includes "Pro OpenGL, Pro OpenCL and Pro Vulkan". Think if improving, it's the 2 latest, but didn't compare FPS results with included in repo vulkan-smoketest. But maybe the Pro driver really DIDN'T REALLY perform better, but that also installing latest open only (you choose which to install using the script in the package .tar.bz2 you download) from amd.com which I think is from early August, so new, can give same improvement (if not same amdgpu as in latest HWE Kernel that came early August as well). Open just replaces a few packages, the driver to newer Mesa, a few Xorg related packages etc, including 32-bit, since Steam installs a bunch of them. So it says vendor is Mesa. Pro says AMD but otherwise same versions of OpenGL etc.

sensors latest HWE kernel now shows all data with shipped, voltage, temperature with max and hysterical, fan speed and watt usage. Only lacks MHz.


Something like MSI Afterburner would be awesome on Linux, and don't see why no one can't make the monitoring overlay at least. All gamers use it to see and tweak, since also a OC tool, sliders are "stock/safe". All data as an overlay, as soon as detects a game. Didn't show up when running Unigine but that shows most data anyway. Don't know what algorithm and if only activates when detecting DirectX games. BTW Afterburner does NOT require an MSI card. As website says it's free for all and supports all AMD and NVIDIA cards.

On Linux I have CoreFreq in one terminal and sensors in another split screen on my second monitor, which is kind of a good replacement for resources usage. They use like 0 resources, while Afterburner warns it will use some, but any such overlay will. Just loading a map or when Unigine loads really ups temp on my Ryzen, probably because it launches a single thread process, but while when playing/Unigine running all stay low, never reaching the 62C I've set for spin up CPU fan to 80% from just 20% (so stays on that duty cycle, really silent for a stock fan, and chassis fans when 65C so that don't happen).

cyring commented 5 years ago

On Linux I have CoreFreq in one terminal and sensors in another split screen on my second monitor

Don't. Both code read/write the same SMU registers to select the thermal sensor.

cyring commented 5 years ago

Here is the current development to scale to 256 Cores ! Can you plz try with Ryzen and any other AMD, Intel high Core Count servers Screenshots and comments are welcomed in this tchat

olejon commented 5 years ago

Don't. Both code read/write the same SMU registers to select the thermal sensor.

2 terminal windows because: 1 for CPU and 1 for GPU:

amdgpu-pci-0900                                                                 
Adapter: PCI adapter                                                            
vddgfx:       +0.72 V                                                           
fan1:        1001 RPM  (min =    0 RPM, max = 4500 RPM)                         
temp1:        +32.0°C  (crit = +94.0°C, hyst = -273.1°C)                        
power1:       30.02 W  (cap = 120.00 W)                                         

asus-isa-0000                                                                   
Adapter: ISA adapter                                                            
cpu_fan:        0 RPM

olejon commented 5 years ago

EDITS: Updated a few times. Was a messy post.

cyring commented 5 years ago

Can't cause a problem when sensors only reads from the AMD GPU using amdgpu module...

Indeed it can't. I was meaning k10temp but I think this module is not released yet

Do you actually have 256 cores or is that virtualized/simulated or something ?

Unfortunately, those are 255 virtualized Cores. I'm reaching the limit of QEMU; it is slow but at least I can create a pseudo hardware test context.

Will make the deb package ...

Please notice in last version that the Daemon can now be constrained by options with UID, GID and file/shm Creation Mask. It was a security observation made by a CoreFreq user about the shared memory being opened to any processes.

What do you define as "high core count?

I would say equal and above 32.
I will appreciate any tests with your 3700X because this upscaling is making use of other assembly instructions, which are however part of the x86 General Purpose set. 2700X seems to run OK, I can't tell about 3000's results yet, and for EPYC I'm still waiting answers from the main requester.

olejon commented 5 years ago



EDIT: My 3950X when it comes won't have 32 cores but at least 32 threads. For now can only test my 3600X.

olejon commented 5 years ago

BUG IN LATEST CODE?

Image

cyring commented 5 years ago

On my Ryzen workstation corefreq-cli actually opens without daemon running and module is not loaded

I'm pretty chocked by this.

The dev/shm/corefreq* has to be present for the Client startup
Probably that file was left alone by a previous Daemon crash. But Kernel should have cleaned it up...

olejon commented 5 years ago

It's not starting now, so probably as you say, the kernel has cleaned it up :-) Didn't want to reboot to check. But at the same time I saw you hadn't committed any code today/yesterday so for this to suddenly happen made no sense. There were no sign it crashed. Stopped and unloaded module as usual. First time I've seen this. Well well, I'll report back if happens again. If so probably like 1/100 times with complete stop/unload.

Really has to eat my pizza and pack by luggage now! Luckily ordered the afternoon Bergen > Amsterdam > Bilbao flight. My rhythm don't allow the early flight, would have to not sleep then. Or the via Paris, but a little more expensive and I'm very happy with the route as it's basically half an hour waiting in Amsterdam before boarding, and both flights are so short it feels much shorter than direct flights I'm more used to to the South (Andalucía) or Canary Islands (when living there).

cyring commented 5 years ago

Have a nice trip And if things get weird, just ask to plug CoreFreq to the plane processor
(just kidding)

olejon commented 5 years ago

Thanks. That made me LOL :1st_place_medal: At least I do have my MacBook with CoreFreq if tower asks if anyone is up for the task if both pilots become incapable of flying. Who knows? One of the planes is one I'm not familiar with the landing configuration and procedure hah. Most of the times it'll be fine with instructions from a senior simulator training pilot rushing to the tower who knows the cockpit in and out and focus. One more dude to double check all commands and actions. Worse if hijacked now when policy is shoot down if casualties is likely to be higher on the ground "/ Good thing ETA has gone political heh.

cyring commented 4 years ago

Hello, Can you please try the stress tests of the last CoreFreq version. If Conics, especially, crash your Ryzen processor ? In the issue #131 , Threadripper hard locks with Conics

olejon commented 4 years ago

Sorry for a very late response. Of course I got sick at the end of my vacation and for me it can take time to bounce back, with meds changes and stuff. I'll have more stuff for you later, but can't promise when right now.

What I can say, for the latest code, is that there's NO crash using CoreFreq stress test (Conic) on my 3600X (not tested for many minutes but enough to go 85+ Celsius). Nor my Intels. There were some warnings a while ago during make, but this happened also on Intel, but not errors/fail. You seemed to have fixed that.

My script works beautifully for me so I pretty much run your latest code every time I use CoreFreq, or the kernel has been updated and hence my script detects it and tells to download latest and build.

Sorry for the deb delay. I was expecting having time for it, but I didn't, especially when I got sick during the last days when I had thought to do it (really it's a simple simple thing). But it'll come.

I have a small but report, for all platforms, but haven't tested on your latest code yet either. Could be fixed. Nothing big but if still there probably should be fixed as wasn't there before. Shouldn't affect a regular power user though. Could affect a regular user who knows the basics of background processes, and seeing corefreqd not responding as basically any living process does. Knowing a little basics or a reboot, or simply let it live, and it won't cause a problem.

Cheers

cyring commented 4 years ago

Thank you for your returns. For next 1.67 version, I'm currently refactoring the Power / Energy view to add per CPU temperature. So please let me know in detail or screenshots about any issues you are facing to. Take care of yourself.

olejon commented 4 years ago

You mean per CPU and not per Core then right? As not even Windows can read that on Ryzen, IIRC. If it's per Core, especially on Ryzen too, then it would be awesome! Not that many with dual or more CPUs these days...

Note: Seems you have fixed the bug I found too :-) It was that corefreqd did not respond to a standard SIGTERM but only SIGQUIT (checked the systemd service file). So this meant (p)kill(all) pid/processname did not work without adding a special signal, and no one wants that... especially not SIGKILL, as that is force kill, doesn't clean up the shm etc... But well, it's back to regular behavior. Good!

I'll report as soon as v 1.67 is out, both Intel and AMD. You can give me a heads up when it is, if you want to :-)

cyring commented 4 years ago

Hello,

Version 1.67 released with Energy/Power measurements per Core I believe only AMD Zen provides those RAPL counters per Core.

Go to the view Power & Voltage Btw, Core Temperature has been added to this view.

Regards