-
Save current settings to preset
-
The current settings will be saved to a new preset. Give it a name then you'll be able to reapply it fastly from the preset tab.
-
-
+
+
+
+
Import presets
+
Paste here the presets and valid, your current presets will be merged with this.
+
+
+
+
+
-
-
-
-
-
-
-
Export presets
-
This is the data to be used by Ryzen Controller to import presets.
-
-
-
-
-
-
-
-
-
-
-
Import presets
-
Paste here the presets and valid, your current presets will be merged with this.
-
-
-
-
-
-
-
-
+
+
+
-
\ No newline at end of file
+
diff --git a/index.html b/index.html
index 0aa6517..346a515 100644
--- a/index.html
+++ b/index.html
@@ -2,231 +2,365 @@
-
Ryzen Controller
-
-
-
-
-
-
-
-
+
Ryzen Controller
+
+
+
+
+
+
+
+
+
-
-
-
- Ryzen Controller
-
- Patreon
- Discord
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
- -
-
Auto start:
-
- Auto apply on launch:
-
- Minimize to tray:
-
-
-
- Re-apply ryzenadj periodically:
- Ryzen Controller will re-apply ryzenadj every X seconds. Set to 0 to disable.
-
- Ryzenadj path:
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
- -
-
-
- -
-
-
1. How to set CPU TDP
-
Where to find the STAMP limit
-
The main way to change your Ryzen CPUs TDP is by changing the STAMP watt value which you can find under the Heavy Impact menu.
-
-
You can change this value up if you wish to have a higher TDP which will allow the CPU more headroom for high boost speeds on both CPU and Vega Graphics at the cost of heat or you can choose a lower the value for a lower TDP which will give less head room for the CPU and Vega Graphics to boost but will run cooler.
-
-
Please note that truning this value up too much may cause crashes and or damage to the device so be careful
-
Additional ways to change CPU TDP
-
-
There are also other ways in which the TDP of your CPU can be changed if you were to scroll down from STAMP limit to the bottom of the page you will find PPT Fast Limit and PPT Slow limit. These are the TDP limits that the CPU will use when in boost which is PPT Fast and the TDP limits when the CPU is not boosting PPT Slow limit. Both limits like the STAMP limit can be altered up and down to your liking.
-
Please note that truning these values up too much may also cause crashes and or damage to the device so be careful
-
How to apply changes
-
To apply these changes just scroll down to the bottom of the page and press on the blue apply button shown below from this point your changed settings will be set.
-
-
Please note if you have any problems with you PC after this a simple reboot will reset your PC back to its default settings.
-
You can get additional help from the community Discord server Here
-
-
-
-
-
-
-
-
-
Save current settings to preset
-
The current settings will be saved to a new preset. Give it a name then you'll be able to reapply it fastly from the preset tab.
-
-
-
-
-
-
-
-
-
-
-
-
Export presets
-
This is the data to be used by Ryzen Controller to import presets.
-
-
-
-
-
-
-
-
-
-
-
Import presets
-
Paste here the presets and valid, your current presets will be merged with this.
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+ Ryzen Controller
+
+ Patreon
+ Discord
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+ -
+
Auto start:
+
+ Auto apply on launch:
+
+ Minimize to tray:
+
+
+
+ Re-apply ryzenadj periodically:
+ Ryzen Controller will re-apply ryzenadj every X seconds. Set to 0 to disable.
+
+ Ryzenadj path:
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
+ -
+
+
+
System Infomation
+
+
+
+
+
+
+
+
+
+ -
+
+
Coming Soon
+
+
+
+
+
+
+
+
Save current settings to preset
+
The current settings will be saved to a new preset. Give it a name then you'll be able to reapply it fastly from the preset tab.
+
+
+
+
+
+
+
+
+
+
+
+
Export presets
+
This is the data to be used by Ryzen Controller to import presets.
+
+
+
+
+
+
+
+
+
+
+
Import presets
+
Paste here the presets and valid, your current presets will be merged with this.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
\ No newline at end of file
+
diff --git a/js/init.js b/js/init.js
new file mode 100644
index 0000000..4c739ce
--- /dev/null
+++ b/js/init.js
@@ -0,0 +1,78 @@
+var os = require("os");
+
+
+var title = document.getElementById('title').innerHTML;
+var cpus = os.cpus();
+var cpucount = cpus.length;
+var cpucores;
+var cpuman;
+var cpuspeed;
+var cpuspeedmhz;
+var platform;
+var mem;
+var totalmem;
+var gputest1;
+
+cpus.forEach(function (cpu, i) {
+ cpuman = "
Processor Model: " + cpu.model;
+ cpuspeed = cpu.speed;
+ cpuspeedmhz = "
Processor Frequency: " + cpuspeed.toString() + "MHz";
+ platform = os.platform();
+ mem = os.totalmem();
+ mem = mem / 1000000000;
+ mem = Math.trunc(mem);
+ totalmem = "
System Memory: " + mem.toString()+ " " + "GB";
+ cpucores = "
Processor Cores: " + cpucount.toString();
+ if(platform == "win32"){
+ platform = "
Platform: " + "Windows " + os.release();
+ } else if(platform == "linux"){
+ platform = "
Platform: " + "Linux " + os.release();
+ }
+
+
+
+
+});
+
+var canvas;
+ canvas = document.getElementById("glcanvas");
+ var gl = canvas.getContext("experimental-webgl");
+
+function getUnmaskedInfo(gl) {
+ var unMaskedInfo = {
+ renderer: '',
+ vendor: ''
+ };
+
+ var dbgRenderInfo = gl.getExtension("WEBGL_debug_renderer_info");
+ if (dbgRenderInfo != null) {
+ unMaskedInfo.renderer = gl.getParameter(dbgRenderInfo.UNMASKED_RENDERER_WEBGL);
+ unMaskedInfo.vendor = gl.getParameter(dbgRenderInfo.UNMASKED_VENDOR_WEBGL);
+ }
+
+ return unMaskedInfo;
+ }
+
+gputest1 = getUnmaskedInfo(gl).renderer;
+
+if(gputest1 =="ANGLE (AMD Radeon(TM) RX Vega 10 Graphics Direct3D11 vs_5_0 ps_5_0)"){
+ gputest1 = "AMD Radeon(TM) RX Vega 10 Graphics"
+} else if (gputest1 =="ANGLE (AMD Radeon(TM) RX Vega 8 Graphics Direct3D11 vs_5_0 ps_5_0)"){
+ gputest1 = "AMD Radeon(TM) RX Vega 8 Graphics"
+} else if(gputest1 =="ANGLE (AMD Radeon(TM) RX Vega 8 Mobile Graphics Direct3D11 vs_5_0 ps_5_0)"){
+ gputest1 = "AMD Radeon(TM) RX Vega 8 Graphics"
+} else if(gputest1 =="ANGLE (AMD Radeon(TM) RX Vega 3 Graphics Direct3D11 vs_5_0 ps_5_0)"){
+ gputest1 = "AMD Radeon(TM) RX Vega 3 Graphics"
+} else if(gputest1 =="ANGLE (AMD Radeon(TM) RX Vega 3 Mobile Graphics Direct3D11 vs_5_0 ps_5_0)"){
+ gputest1 = "AMD Radeon(TM) RX Vega 3 Graphics"
+}
+
+
+document.getElementById('titleShown').innerHTML = title;
+document.getElementById('cpu').innerHTML = cpuman;
+document.getElementById('cores').innerHTML = cpucores;
+document.getElementById('cpuspeed').innerHTML = cpuspeedmhz;
+document.getElementById('platform').innerHTML = platform;
+document.getElementById('memory').innerHTML = totalmem;
+document.getElementById('gpu1').innerHTML = "
GPU: " + gputest1;
+
diff --git a/js/menuHandler.js b/js/menuHandler.js
new file mode 100644
index 0000000..0a12aaa
--- /dev/null
+++ b/js/menuHandler.js
@@ -0,0 +1,22 @@
+const {remote} = require('electron');
+
+document.getElementById('close').addEventListener('click', closeWindow);
+document.getElementById('minimize').addEventListener('click', minimizeWindow);
+document.getElementById('maximize').addEventListener('click', maximizeWindow);
+
+
+
+function closeWindow () {
+ var window = remote.getCurrentWindow();
+ window.close();
+}
+
+function minimizeWindow () {
+ var window = remote.getCurrentWindow();
+ window.minimize();
+}
+
+function maximizeWindow () {
+ var window = remote.getCurrentWindow()
+ window.isMaximized() ? window.unmaximize() : window.maximize();
+}
\ No newline at end of file
diff --git a/js/options_data.json b/js/options_data.json
index 651c008..537330a 100644
--- a/js/options_data.json
+++ b/js/options_data.json
@@ -1,30 +1,8 @@
-{
- "min_socclk_frequency": {
- "description": "The minimum clock speed the CPU is allowed to run at.",
- "label": "Minimum SOC Clock Frequency (Mhz)",
- "tab": "Experimental",
- "min": "200",
- "max": "750",
- "step": "1",
- "default": "200",
- "ryzenadj_arg": "--min-socclk-frequency=",
- "ryzenadj_value_convert": "roundTen"
- },
- "max_socclk_frequency": {
- "description": "The maximum clock speed the CPU is allowed to run at.",
- "label": "Maximum SOC Clock Frequency (Mhz)",
- "tab": "Experimental",
- "min": "200",
- "max": "750",
- "step": "1",
- "default": "600",
- "ryzenadj_arg": "--max-socclk-frequency=",
- "ryzenadj_value_convert": "roundTen"
- },
+{
"slow_ppt_constant_time": {
"description": "This define the period to be used out of boost period to deliver a constant power to be delivered to the socket.",
"label": "Package Power Tracking (PPT) - Slow period",
- "tab": "Low Impact",
+ "tab": "Power Settings",
"min": "1",
"max": "3600",
"step": "1",
@@ -32,65 +10,10 @@
"ryzenadj_arg": "--slow-time=",
"ryzenadj_value_convert": "toThousand"
},
- "min_fclk_frequency": {
- "description": "Fabric is AMD's marketing term for the bus connection that connects processor dies (GPU/CPU). This define the bus's min. clock limit.",
- "label": "Minimum transmission frequency (Mhz)",
- "tab": "Low impact",
- "min": "800",
- "max": "1600",
- "step": "1",
- "default": "800",
- "ryzenadj_arg": "--min-fclk-frequency=",
- "ryzenadj_value_convert": false
- },
- "max_fclk_frequency": {
- "description": "Fabric is AMD's marketing term for the bus connection that connects processor dies (GPU/CPU). This define the bus's max. clock limit.",
- "label": "Maximum transmission frequency (Mhz)",
- "tab": "Low impact",
- "min": "800",
- "max": "1600",
- "step": "1",
- "default": "1200",
- "ryzenadj_arg": "--max-fclk-frequency=",
- "ryzenadj_value_convert": false
- },
- "temperature_limit_c": {
- "description": "The temperature the CPU can reach before boost levels off.",
- "label": "Temperature Limit (°C)",
- "tab": "Heavy impact",
- "min": "50",
- "max": "100",
- "step": "1",
- "default": "75",
- "ryzenadj_arg": "--tctl-temp=",
- "ryzenadj_value_convert": false
- },
- "stapm_limit_w": {
- "description": "Skin Temperature Aware Power Management. This will define the socket power package limit which is used to manage the device boost period.",
- "label": "STAPM Limit (W)",
- "tab": "Heavy impact",
- "min": "5",
- "max": "60",
- "step": "1",
- "default": "20",
- "ryzenadj_arg": "--stapm-limit=",
- "ryzenadj_value_convert": "toThousand"
- },
- "stapm_time_ms": {
- "description": "Skin Temperature Aware Power Management. This will define the boost period to be used.",
- "label": "STAPM Constant Time (Sec.)",
- "tab": "Heavy impact",
- "min": "1",
- "max": "3600",
- "step": "1",
- "default": "900",
- "ryzenadj_arg": "--stapm-time=",
- "ryzenadj_value_convert": "toThousand"
- },
"psi0_current_limit": {
"description": "The limit of current we let the motherboard deliver to the PSI0.",
"label": "PSI0 Current Limit (mA)",
- "tab": "Heavy impact",
+ "tab": "Power Settings",
"min": "20",
"max": "100",
"step": "1",
@@ -101,7 +24,7 @@
"vrm_current_m_a": {
"description": "The limit of current we let the motherboard deliver to the CPU.",
"label": "VRM Current (A)",
- "tab": "Heavy impact",
+ "tab": "Power Settings",
"min": "20",
"max": "75",
"step": "1",
@@ -111,8 +34,8 @@
},
"min_gfxclk_frequency": {
"description": "The minimum clock speed the integrated (Vega) GPU is allowed to run at.",
- "label": "Minimum GFX Clock Frequency (Mhz)",
- "tab": "Heavy impact",
+ "label": "Minimum Vega iGPU Clock Frequency (Mhz)",
+ "tab": "GPU Settings",
"min": "400",
"max": "1300",
"step": "1",
@@ -122,8 +45,8 @@
},
"max_gfxclk_frequency": {
"description": "The maximum clock speed the integrated (Vega) GPU is allowed to run at.",
- "label": "Maximum GFX Clock Frequency (Mhz)",
- "tab": "Heavy impact",
+ "label": "Maximum Vega iGPU Clock Frequency (Mhz)",
+ "tab": "GPU Settings",
"min": "400",
"max": "1300",
"step": "1",
@@ -131,10 +54,65 @@
"ryzenadj_arg": "--max-gfxclk=",
"ryzenadj_value_convert": "roundTen"
},
+ "min_fclk_frequency": {
+ "description": "Infinity Fabric is AMD's marketing term for the bus connection that connects processor dies (GPU/CPU). This define the bus's min. clock limit.",
+ "label": "Minimum Infinity Fabric frequency (Mhz)",
+ "tab": "GPU Settings",
+ "min": "800",
+ "max": "1600",
+ "step": "1",
+ "default": "800",
+ "ryzenadj_arg": "--min-fclk-frequency=",
+ "ryzenadj_value_convert": false
+ },
+ "max_fclk_frequency": {
+ "description": "Infinity Fabric is AMD's marketing term for the bus connection that connects processor dies (GPU/CPU). This define the bus's max. clock limit.",
+ "label": "Maximum Infinity Fabric frequency (Mhz)",
+ "tab": "GPU Settings",
+ "min": "800",
+ "max": "1600",
+ "step": "1",
+ "default": "1200",
+ "ryzenadj_arg": "--max-fclk-frequency=",
+ "ryzenadj_value_convert": false
+ },
+ "temperature_limit_c": {
+ "description": "The temperature the CPU can reach before boost levels off.",
+ "label": "Temperature Limit (°C)",
+ "tab": "CPU Settings",
+ "min": "50",
+ "max": "100",
+ "step": "1",
+ "default": "75",
+ "ryzenadj_arg": "--tctl-temp=",
+ "ryzenadj_value_convert": false
+ },
+ "stapm_limit_w": {
+ "description": "Skin Temperature Aware Power Management. This will define the socket power package limit which is used to manage the device boost period.",
+ "label": "CPU TDP (W)",
+ "tab": "CPU Settings",
+ "min": "5",
+ "max": "60",
+ "step": "1",
+ "default": "20",
+ "ryzenadj_arg": "--stapm-limit=",
+ "ryzenadj_value_convert": "toThousand"
+ },
+ "stapm_time_ms": {
+ "description": "Skin Temperature Aware Power Management. This will define the boost period to be used.",
+ "label": "CPU Boost Period",
+ "tab": "CPU Settings",
+ "min": "1",
+ "max": "3600",
+ "step": "1",
+ "default": "900",
+ "ryzenadj_arg": "--stapm-time=",
+ "ryzenadj_value_convert": "toThousand"
+ },
"ppt_fast_limit_w": {
"description": "The amount of power the CPU can draw while boost levels on.",
- "label": "PPT Fast Limit (W)",
- "tab": "Heavy impact",
+ "label": "CPU Boost TDP (W)",
+ "tab": "CPU Settings",
"min": "5",
"max": "60",
"step": "1",
@@ -144,8 +122,8 @@
},
"ppt_slow_limit_w": {
"description": "The amount of power the CPU can draw while boost levels off.",
- "label": "PPT Slow Limit (W)",
- "tab": "Heavy impact",
+ "label": "CPU Min TDP (W)",
+ "tab": "CPU Settings",
"min": "5",
"max": "60",
"step": "1",
diff --git a/js/preset.js b/js/preset.js
index 97eaa29..6f271d8 100644
--- a/js/preset.js
+++ b/js/preset.js
@@ -180,7 +180,7 @@ function preset_updateList() {
- |