I want to make my progress bar progress with the amount of File lines read.
How would I do this correctly. So far the code below can sometimes run in the middle of the progress bar and state completed.. and other times it can run into the 200%.
;======================================================================== ProgressOn("TITLE", "ACTION") ;======================================================================== For $count = 1 To _FileCountLines($FileRead) Step 1 $string = FileReadLine($FileRead, $count) $value1 = $input $value2 = $input $value3 = $input $value4 = $input $TM = FileWrite("C:\temp\test.txt", $value1 & " " & $value2 & " " & $value3 & " " & $value4 & @CRLF) ProgressSet($count, $count & "%") Next ;======================================================================== ; PROGRESS BAR OFF ;======================================================================== ProgressSet(_FileCountLines($FileRead), "Completed!") Sleep(750) ProgressOff() ;========================================================================
The back story:
I've got a Dell XPS w/ i7-8700K. The fastest, by single core, I could get, by well known PC maker.
The problem is that the fan can get so loud, like, REALLY LOUD, I can not use the CPU at its max. clock speed.
I could leave it at 90% all the time and not use this but I want to have the full 4.x Ghz and no parked cores, at all times, if I can.
But as room temperature and CPU load changes, a set throttle, may still make fan noise.
To avoid the fan from going "airplane turbine mode", the utility gets the temp. from "Core Temp" ( you can google it )
It has a"plug-in" called "Core Temp Remote Server". The utility gets the values via TCP.
When it "feels" it's gonna get hot, drops the CPU throttle to a selected value, lets say 99% ( where is quieter ) and back up to 100% when it "feels" is ok to go back.
Now temperature can creep up to higher than expected if load is sustained or room temperature changes. So there is an "anti creep up" feature, to temporarily set the throttle even lower, 5% at a time, until the known quiet temperature is achieved.
If don't know how to find the temperature you should use, check out these videos. They will tell you how.
The end result:
Any thermal problem, is a hardware problem. No way around that, other than attending to the CPU cooling and case ventilation. Software can not fix that.
But without this utility, the PC would slow down the CPU anyway, to keep it from melting.
This software preemptively slow down the CPU, keeping the CPU related fan speeds from going to maximum RPM. Hence having a slower, but a quieter box.
Hello, I'm very stumped with finding the decimal place for the CPU %.
I found some example code online
#include <Array.au3> $aProcess_Info = GetCPU("RzSynapse") _ArrayDisplay($aProcess_Info) Func GetCPU($sProcess = "") Local $aAllProcess_Info = [], $aOneProcess_Info $oWinMgmts = ObjGet("winmgmts:\\.\root\cimv2") $aCPU_Usage = $oWinMgmts.ExecQuery("SELECT Name, IDProcess, PercentProcessorTime FROM Win32_PerfFormattedData_PerfProc_Process") For $vCPU_Info In $aCPU_Usage If $sProcess Then If $vCPU_Info.Name = $sProcess Then $aOneProcess_Info = $sProcess $aOneProcess_Info = $vCPU_Info.IDProcess $aOneProcess_Info = $vCPU_Info.PercentProcessorTime & " %" Return $aOneProcess_Info EndIf Else $aAllProcess_Info += 1 $aAllProcess_Info[$aAllProcess_Info] = $vCPU_Info.Name $aAllProcess_Info[$aAllProcess_Info] = $vCPU_Info.IDProcess $aAllProcess_Info[$aAllProcess_Info] = $vCPU_Info.PercentProcessorTime & " %.1f" EndIf Next ReDim $aAllProcess_Info[$aAllProcess_Info +1] Return $aAllProcess_Info EndFunc ;==>GetCPU Currently the code shows the CPU % as 0 % and I want to show 0.0 % I found this online for strings "%.1f" but i'm not sure how to incorporate it.
in AutoIt we have:
_WinAPI_IsProcessorFeaturePresent($iFeature) this internally just calls what is provided by microsoft: https://msdn.microsoft.com/en-us/library/windows/desktop/ms724482(v=vs.85).aspx
unfortunately this is completely outdated as we can only check for features like MMX and up to a maximum of SSE2 or SSE3 - which have been introduced back in 2001 / 2004.
but nowadays there is stuff like AVX, AVX2, AVX-512 ...
for example see: https://en.wikipedia.org/wiki/Template:Multimedia_extensions
well, for CPP we have the FeatureDetector (by Mysticial): https://github.com/Mysticial/FeatureDetector
it calls __cpuid / __cpuidex from <intrin.h>.
for additional details see: https://msdn.microsoft.com/en-us/library/hskdteyh.aspx
has anyone tried to determine such SIMD features and related CPU capabilites with AutoIt?
The simple widget shows the percentage of cpu, ram used and the CPU temperature (WMI).
- Every 30s check, sync and update time for computer.
- Drag adn Drop any files on GUI for reset Attribute (-RAHS) and set Full Access to Everyone !
- Righ Click on x and click Un/Install app to boot with Windows!
CPU_Widget_TimeSync.exe CRC32: 1956339E MD5: BFC2B596BD1EDA35D6B02B97F8FB57AE SHA-1: 796A663739EA5AC9890D9FA324A98E987F35E7C8
Function code from:
RAM: MemGetStats ( )
Memory: _WinAPI_EmptyWorkingSet ()