I am just curious, will be source code eventually released?
I also noticed MPRESS is used for compressing the EXE, usually unpacked executables, gets it memory usage being reduced, maybe you can try.
I am just curious, will be source code eventually released?
I also noticed MPRESS is used for compressing the EXE, usually unpacked executables, gets it memory usage being reduced, maybe you can try.
does it have realtime option? 8-)
Glaring bug i the new 1.2 .0.0 Windows hook structure. Will be fixed this weekend
It seems that the windows hook react differently in windows 10 than in windows 7. So current 1.2.0.0 version does NOT work under windows 7. Priorities are not getting adjustet at all.
Since I don't have win8 i would love feedback from a user. Priority on process can be seen in taskmanager but you have to add in the "base priority" collumn
@Nikkho
probably not. I'm a bit privy. also the code is a big mess. almost no comment and a lot of stuff i should have as functions instead of hard coding it in the main code.
it was really born as a very little experiment and growing pain has set its traces in the code. I'm sorting up the code a bit on each release to make it easier to read though.
In regards to mpress. Project Mercury should already shed its mpress load of itself at load time. without this shedding the working set would be around 4mb. with this shedding its down to around 800kb.
Project mercury also does its shedding if you enter the info box and exit since there is no real advantage leaving it in physical memory, Very rarely do you need to enter this multiple times.
I do however need to look into doing it a bit more often but haven found a good idea to make it right. I dont want to just aimlessly doing it on some random time interval as it will probably reduce overall performance. Better leave that to Windows until I can do it smart.
@Necros
I might see if i can get it into next realest this weekend otherwise it will be in next feature release. I don't want to delay a fix of such a serious bug for a feature.
Also i want so have some internal documentation up and running where I can advice against this priority level, for user protection.
FastReact Featureis also on the features list. T he code is pretty much done in my head I just need to get it down and bug check it.
I cant figure out if i should enable this as default or only give th user the options to enable it
Save settings is on the list to do as well. Got a user request for that.
Going back to Realtime feature. i guess Project Mercury should ad just itselve to high/realtime as well in regards to this? or would you prefer that it kept itself on above normal ?
V 1.2.0.1 is up on www.techcenter.dk. Softpedia should be updated over the weekend.
- Fixed Windows 7 incompatibility with new Windows hook
- Fixed too high CPU usage when Paused.
- Slight improvement in paging (Pages out at Pause)
Some new features are in the design process
- Additional clear(execute) process waiting in idle task queue. useful to run before running a benchmark for more consistent results
- Selection of increased priority level (donation version only)
- FastReact v1. Increase windows overall feel.
It is a pitty, because I like a lot the idea under Project Mercury, but to be honest, do not really like how it is implemented. I was thinking in making only a Windows API version, such as my SMETAR (http://nikkhokkho.sourceforge.net/st...hp?page=SMETAR) which will make it less than 100 Kb uncompressed, and reduce its memory size usage.
Do not see Mercury.exe there. Can you double check?
#35
I reset the web server earlier today should be up now.
T.Y. for pointing at SMETAR. I might look into it. especailly if it can enhance effectiveness or reduce resource load
Thanks. Now was able to get 1.2.0.1.
The idea for keeping it compact is easy: Avoid any C/C++ RTL dependency, and implement it by directly using Windows API. You will see as a comparison that the SMETAR 64bit, is less than 11 Kb MPRESSed.
Let me know if you need any help.
Thank you nikho im still a lot in learning phase this is my first real utility.
just a general info next weekend the opportunity to adjust what priority gets increased to will be implanted ans the infobox/settings will get reworked.
I don`t know what priority should be default to Mercury itself, but i guess it shouldn`t slow it down
+1 to make it in Windows API only (i know it`s your 1st try but it`s feature req. for future)
V 1.2.2.0
New version is released and on my Home site. Softpedia Should update withing 24 hours
- Clear Memory now works intelligently, greatly increasing its speed
- Project Mercury's own page out routine improved to double speed
- Optimized some IF settings for minuscule reduced CPU usage
- Removed nonworking priority settings menu (was leftover from experiment)
- Implanted "Windows FastReact" features that speeds up windows
- Implanted "Save Settings" feature
Notice that "Windows FastReact" feature has a nag screen That is gone in the donator edition
If the new donations model violates any forum rules about advertisement a mod can hit me up in a PM or in this thread
@SvenBent: Would it be possible to upload the latest version of your mercury to encode.su ?
(Because your website http://www.techcenter.dk/ is often not accessible.)
best regards
PS: Would it be possible to controll the program priority by time?
example: from 00:00 to 05:59 give automatically a specific program the "highest priority"
and from 06:00 to 23:59 give the same program the "process priority lower then normal" ?
How we can donate?
#41
yes i will do that immediately. I'm having some ISP issues and the ISP technician was out here once but didn't find anything wrong... gosh wonder why his 5 min check didn't find a random occurrence issue.
If we are talking about a specific process it would be almost a total rewrite of Project Mercury as it progress agnostics.. it doesn't know what process are running in your system only what the PID is from you current active programs. and after the new window Shell hook bases structure
nothing in Project mercury is running unless you click a new window.
It would probably be better to make a separate tool for it and i might look into it just to learn it. would you prefer to decide the process by name or PID ?
Donation is not up and running yet. I'im looking into paypall for that, but has been out for the last couple of days due to food poisoning
#42
FastReact basically just disable some windows animation and delay timers temporarily
- it disable the windows minimize/restore animation
- removes the menu animation and the menu delay
- removes the combo box animation
- removes the tooltip animation
All this is temporarily until the features is disabled on the program is shut down. nothing is saved to your current configuration so even if you for some reason crash you are back to normal on next boot.
nikkho (9th March 2016)
OH i forgot. on behalf of Nikhos wish for window API and in regards to saving resource. i took a little time to compare ressource usage among the more officially known programs out "There"
all tested under windows 10 64bitCode:Work set Commit size CPU usage (Monitoring) Mercury 1.2.0.1 588-616k 3336-3336k 0% TopWinPrio 1 8276-11176k 29328-32228k 0.018% TipWinPrio B3 6880-9792k 47776-50268k 0.024% ProcessTamer 2400-2600k 3136-3416k 0.05% ProcessLAsso 2108k 11748k 0.156%
Memory usage was taken from taskmanagers detail mode
CPU usage was taken from AverageCPUcycles http://www.boray.se/software/averagecpu/
not that bad![]()
Its its already fixed in my current dev version I'm still working on a better setting menu which will incorporate a bit of explanations of the features. How ever this is my first try on a GUI so I am still messing around getting it working properly.
hopefully this weekend next release will be out.
Once the settings menu is done i will put in selection of priority to increase to. I didnt want to put it in before i could make sure that a user gets a warning the negative effect of increasing to high and realtime priority could lead to.
Just heads up off what im currently working on as well as the settings GUI
I'm currently create features in Project Mercury that prevents windows from going to standby mode as long as your CPU load is high.
There is an easy methode but that requires a constant loop chekc running that consume some CPU power ( ~0.025%), I'm trying to figure out how to do it solely by listening to WM_POWERBROADCAST message so that CPU power consumption should be down to 0%.
Hopefully this would make me able to toss away another 3rd party application and same some CPU and memory resources.
Why this features is not a part of windows own powerplan is beyond me.
The standby prevention during CPU load is going to be optional.
Project Mercury already has a memory cleanup feature. but i highly recommend against using those kind of things as its pretty much snakeoil, unless you have a very technical specific reason for putting your programs/data out of physical Ram and down to your slow pagefile.
It's at the top of the systray menu.
Having a time based or memory usage based activation of the features is even more stu... unoptimal. Especially the last one as it pretty much the same function as having less physical ram.
memory cleaners and disabling pagefile is generally horror full "tweaks" to your overall system performance.
Also I'm thinking putting in the the "clear idle task" feature. But I am not entirely sold on it myself, as it has been taken 15+ min a couple of times I've done it, and the big misunderstanding that it's a speedup trick on a lot of tweaksites, let me believe there is a big risc of the user thinking exactly that.
At least the is features has to wait until the new UI is ready and i can have a proper warning/explanation tooltip going on.
nikkho (13th March 2016)
Didn't get as much done as I was hoping for but got at least some small stuff done.
V1.2.3.0
- Windows FastReact settings are now saved when choosing save settings
- Implanted "No Standby on CPU load" feature
- InfoBox now has a link to www.Techcenter.dk
The No standby features is still very new and lacks customization. But it does prevent going to standby if CPU load is above 8% on a 10second average tested aprox. twice a min.
The CPU usage from this feature is far below WinOFF but does take around 0.014% on my Core I7 2500k @4.6GHz ( WINoff takes around 0.09%
The is 0% CPU load if the features is not enabled (default)
www.TechCenter.dk is Updated
Softpedia should be updated within 24h
It seems that even if FastReact and Insomnia get properly saved, they are not loaded properly on startup, and always appear checked.
[Settings]
NoHT=
NoStutter=
BallonTip=
FastReact=0
Insomnia=0
Yeah im sorry Ii just prefer it that way. This leaves the program with the smallest footprint of all the known "competitors" in both CPU usage, memory usage and disk usage.
Hmm i didn't notice that in my test but I will try to reproduce it here. which windows version are you using ?
Can you give me a step by step guide to reproduce it ?
-- edit --
nvm i see it now.
it has to be enabled saved and then disabled and saved and then they still start.
Bah stupid copy paste mistake.
The FastReact and Insomnia autostarting is fixed.
I'm Uploading the fixed version once I get home from work
That is why I said that. Usually all exe-compressed programs, need more memory when run than if uncompressed. This is because at sometime, there is coexistance of the unpacker, some packed data, and some unpacked one, which is larger than having only the unpacked data.
It is easy to test, simply get Process Explorer, and take a look at your MPRESSED executable paying atention to Virtual Memory, Page Faults, and Physical memory. Then do the same against the not packed one. You will see they are worse on the packed version.
It has also the drawback of antivirus needing more time to explore it, because the should decompress them first, so usually executing a packed executable is also slower. To me they only make sense as an option for small USB drives, but not for general purposes.
I guess you are trusting on Windows Task Manager, which by default, reports only Working set private bytes, which does not reflect real memory consumption.
Anyway, I did the exercise with my FileOptimizer, first pic is a version packed with MPRESS 2.19, second one, is the not packed x64 executable.
![]()
How much do you handle manual handle page out in fileoptimizer ?
I use taskmanager corret, but I look at working set and commit size (VM size).
and I use averageCPUcycle to get the CPU usage since it appears to be more accurate than task manager (better resolution)
-- edit --
a little look with process explore. Ive upaaode PMbefore.png and PMafter.png
Please note that im in no way an expert in this so I am simply explaining from how it looks from my viewpoint with my limited knowledge;
PMbefore - shows the info after the programs has been freshly loaded and clicked around a fewtime in windows to make sure the "core engine" has been "poked"
I can see an increase VM size and a sligth increase in pagefaults (~3%). the physsical workgin set is basically identical how ever the one with MPress has a larger (400kb) larger privat set and same size less sharede set
PMafter - this show th info after I've been messing around in the systray menu
Again Mpress version show a larger VM size but this time its the NON-mpress version that has the most page faults (~4%) which in my eyes tells me we are talking about simple errors margens.
gain the physical size is the same but mpress and as before mpress version has 400kb more in its private set and less in its shared set
Looking at this i dont see any huge gain in physical memory performance by not doing mpress. reducing the VM size would be nice but holding it against the trade-off of a smaller .exe. im not really sold yet
Last edited by SvenBent; 16th March 2016 at 04:15.
However this is not the full pictures as I dug little further i made 4 version. With and without mpress and with and without my page out handling code.
Freshload - show the info right after start
we see the sam trends as above that mpress and non mpress have same physsical working set but a little bit less shared and a bit more privat.
However the different between having my page out code and not in it make a huge difference in the physical memory usage.
The little penalty from having mpress is nothing compared to the gains if paging out unneeded stuff.
AfterMenu - show the info after I've been navigating the menu
The nonpage version has small increase in physical memory usage and off cause the delta down to the version with my pageout code get a bit smaller as we now need to have more needed stuff in physical memory
however the physical memory footprint is still half of not having my page out code running and mpress difference in comparison is negligible.
After Info box - show the info after both navigation the menu and then hitting the info box and closing it (by the ok button)
Her you will see how again the physical memory shrinks down to a bare minimum. The INfobox button activates my page out code and the menu and infobox "data/code" is paged out to minimize the physical memory usage
The page out code is run at the end of the 3sec pause from the programs as executed to it actually start. ( this 3 sec pause is there in case it is tarted at windows start to let other programs start up nicely)
tits activat when you pause the programs and unpause it as well as when you exit the info box.
the situations is chosen on purpose, because there is a very low change you need to go into the infobox, or use the pause function repeatedly after each other. So its a good time to page out and reduce physical memory
most of the time this program just runs its monitoring.
so in these 4 different version i can get all the benefits from mpress which pretty much all the benefits of my page out code as well.
of all he 4 situations this is the "best of all worlds " scenario.
Its the reason there is a clear memory features to begin with. Since the page out code was there, it just took a loop through PID's to make a Clear memory function. The first version actually just looped through each 4th PID (they only appear in multiple of 4) from 8 to 262144 whatever the PID existed or not
The newer faster intelligent way actually gets a PID list from windows to work at and reduce unneeded work.
oh and also the fixed version is up on www.Techcenter.dk will probably not push it to softpedia before the weekend
Now on Major Geeks: http://www.majorgeeks.com/files/deta...t_mercury.html