Announcement

Collapse
No announcement yet.

Linux 4.14 Ensures The "Core Performance Boost" Bit Gets Set For AMD Ryzen CPUs

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • timofonic
    replied
    Originally posted by Zan Lynx View Post

    The /proc directory is for process information. And only process information.

    Since for a long time it was the only pseudo-filesystem for kernel information it acquired a lot of unrelated junk like /proc/sys. Finally after years of stuffing in more and more junk, the kernel developers declared it was time for /sys and /sys/kernel/debug and /sys/fs/cgroup among others.

    But no one can remove the old /proc entries because that would break all kinds of programs.
    Sometimes you need to break things to make better one, like in making buildings.

    Conservationism is good when applied to nature, but not so much to the rest. If something changes, apps can change too. If the software isn't developed anymore, I'm sure they use ancient Linux kernels most of the time too.

    My dream partition tree (I didn't think it well enough, critics welcome). It's loosely inspired in plan9, some macOS thing and maybe more. I did it because of boredom:

    /system
    /init
    /(grub|syslinux|lilo|clover|efi,etc)
    /system1
    /modules
    /includes
    /system2
    /modules
    /includes
    ...
    /init(daemon|manager)=systemd,whatever
    /shell <-- symlink to shell in /system/bin?
    /tmp
    /proc
    /run <-- namespaces live here too
    /lock
    /net
    /tcp
    /udp
    /firewall
    ...
    /dev <-- Aliases to UUID, PARTUUID, labels, ACPI stuff, etc
    /storage
    /disk1
    /part1
    /part2
    /part3
    /swap <-- The classic one, for example
    /comm <-- aliases inside
    /ethernetcardname <-- inside "ethernet" if there's more than 1, f.e.
    /wificardname
    /rs232 <-- It can be a native pci/pcie controller, usb, etc
    /can
    /packetradio
    ...
    /whatevercommdevicename
    /hid
    /pointing
    /trackball1
    /trackball2
    /tablet
    /mouse1
    /mouse2
    /wiimote
    /lightgun
    /seeringwheel
    /arcadestick
    /paddle
    /dancepad
    /touchpad
    /touchscreen <-- symlinked?
    /keyboard
    /modelm
    /cool-one-with-leds-and-ultimate-gamer-ready
    /graphics
    /inteliGPUmodelX
    /edp
    /integrated-panel-brandX-modelX
    /touchscreen <- symlinked?
    /hdmi
    /someokaymonitor
    /evilnvidia
    /dp
    /cool-4k-monitor-modelX-brandX
    /dp
    /cool-4k-monitor-modelX-brandX
    /hdmi
    /big-4k-tv-modelX-brandX
    /goodamd
    /dp
    /cool-4k-monitor-modelX-brandX
    /dp
    /cool-4k-monitor-modelX-brandX
    /dp
    /cool-4k-monitor-modelX-brandX
    /dp
    /cool-4k-monitor-modelX-brandX
    /venerablevoodoo5
    /vga
    /classic-flat-crt-monitor
    /tvout
    /commodore1084s
    /sound
    /cool-usb/bluetooth/whatever-headphones
    /mic
    /out
    /button
    /name-of-on-board-one
    /input1
    /input2
    /output1
    /output2
    /phone-like-headphones
    /input
    /output
    /info <-- replaces /sys
    /docs <-- replaces /usr/share/doc
    /man
    /bin <-- replaces /sbin
    /lib <-- important libraries to init the system
    /cache
    /conf
    /src <- Replaces /usr/src
    /msgs
    /logs
    /mails

    /users
    /admin <-- replaces the confusing "root". Using OverlayFS to part
    of initrd
    /conf
    /bin <-- they can be bind mounted or whatever
    /lib <--
    /mnt (one mount/user. same device/partition can be mounted if allow)
    /msgs
    /log
    /mails
    ...
    /john
    ...
    /maria
    ...
    /susan
    ...
    /steve
    ...
    /ali
    ...
    /ani
    ...

    - No /root directory: Rescue stuff in bigger initrd, may later be
    removed from ram if necessary
    - Fundamental utilities in /system, it replaces "/" "root"
    - Server software these days is installed as limited users,
    no sense for /srv to exist
    - Temporary files which should be preserved between system reboots
    are in /system/tmp
    - System/superuser binaries in /boot/bin

    Leave a comment:


  • GreenReaper
    replied
    I've become a fan of turbostat, though it's a lot to keep an eye on. Perhaps someone can wrap that up into a nice graph.

    Leave a comment:


  • xiando
    replied
    Originally posted by Zan Lynx View Post

    The CPU knows its own internal temperature. AFAIK, XFR does not require anything from the OS. It just does its thing.
    I don't think this patch matters because, as stated in this quite, it just works.

    Try watch 'cpupower monitor' and stress-test one or two cores and you'll see a boost on 4.12, 4.13 and probably all other kernels for that matter.

    If you load all the cores then there's no boost, it's limited to just two cores or something (from what I'm seeing, anyway). But it works fine without any special kernel support and you can see this with tools like cpupower.

    Leave a comment:


  • Zan Lynx
    replied
    Originally posted by timofonic View Post

    Why is /proc still alive when there's /sys ? I wonder about that...
    The /proc directory is for process information. And only process information.

    Since for a long time it was the only pseudo-filesystem for kernel information it acquired a lot of unrelated junk like /proc/sys. Finally after years of stuffing in more and more junk, the kernel developers declared it was time for /sys and /sys/kernel/debug and /sys/fs/cgroup among others.

    But no one can remove the old /proc entries because that would break all kinds of programs.

    Leave a comment:


  • timofonic
    replied
    Originally posted by tildearrow View Post
    Minor typo?



    (it's /proc/cpuinfo)
    Why is /proc still alive when there's /sys ? I wonder about that...

    Leave a comment:


  • Zan Lynx
    replied
    cpuinfo was never the authority on frequency. Way back in 2007 with a Athlon64 this was already the case.

    Leave a comment:


  • LuukD
    replied
    Originally posted by monte84 View Post
    I don't think CPB works with the performance CPU governor. When I enable the performance governor, all CPU cores at locked at their base frequency. I have watched through (watch grep "cpu MHz" /proc/cpuinfo)
    /proc/cpuinfo MHz no longer provides live current frequencies. I believe from 4.13 onward.
    This will: $cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_cur_freq

    There may be some perfect rationale behind the change. Maybe /proc is statically generated and /sys on every request? Just guessing here.
    Does anyone hee know?

    Leave a comment:


  • mlau
    replied
    Originally posted by monte84 View Post
    I don't think CPB works with the performance CPU governor. When I enable the performance governor, all CPU cores at locked at their base frequency. I have watched through (watch grep "cpu MHz" /proc/cpuinfo)
    Since 4.13 the cpu frequency in cpuinfo is locked to the rated speed when the cpu supports aperf/mperf. In this case, look at /sys/devices/system/cpu/cpufreq/policy*/scaling_cur_freq which more accurate info.

    Leave a comment:


  • mlau
    replied
    Originally posted by Kendji View Post
    There's virtually no or very little performance difference.
    It only works when you tax only a single core, and the rest are ideally below the rated frequency. For example, use the ondemand governor, start e.g. scimark
    and then do 'cat /sys/devices/system/cpu/cpufreq/policy*/scaling_cur_freq' in a terminal repeatedly. You'll see one core and its HT sibling go beyond the rated speed.
    I've seen my 1800X go up to 4.0GHz in some very rare instances, but it never hit 4.1, and realistically goes between 3.7 and 3.9 GHz when 2 or more cores are busy.

    Leave a comment:


  • sdack
    replied
    Originally posted by Kendji View Post
    There's virtually no or very little performance difference.
    For a change as small as this to result in a gain of 1%-5% and for all Ryzen CPUs is actually huge, and I dare say it's exciting to see.

    Since this went into 4.14 already has 4.15 now been deprived of further excitements.

    Leave a comment:

Working...
X