Proper rendering

Started by arcanum, September 07, 2012, 01:04:34 PM

Previous topic - Next topic

arcanum

Hi all.

One of the best applicanions i paid.

Jeremy, still waiting for an answer for this http://img404.imageshack.us/img404/2622/plcpu1.jpg

Tried another kind of softwares and they can and render, for example basic cpu usage no yesily.

Im not a coder, but a man that thinks, well thinks :D

So i think you do:

1. You are pollin too much on an ati driver(s)
2. That causes the prob on my side

My tip:
1. Hardcode those ati et drivers, dont touch them
2. do not even try to inject or tame prosesses that are use by the av companies

Its sad, in the future, your fantasic program will l get flagged by the av companies.

-arc


Nothing personally, of course. I mean that.

-arc

BenYeeHua

Did it still showing like that in a newer version?
And did reinstall Windows also showing like that?
----
And the PL is ignoring the anti-virus as it can, but there are many anti-virus in this world.
So it is difficult to ignore all the anti-virus process as they are behaving difference. ;)

Jeremy Collake

#2
I agree there is a problem. This is big on my list, I promise you, but I have yet to fully evaluate it.

I have tracked it down to what I think is responsible. If you watch the page faults that occur while the graph is visible, you should see them increase (page faults delta will show by how much per iteration). These page faults are soft page faults, at least for me, but are almost certainly responsible for the situation you see. On most PCs they aren't going to cause that kind of utilization, but they do for some, and I recognize that. This may cause problems depending on how much RAM is available to your GPU, and how much of that RAM is shared system RAM.

I am rewriting the graph, actually two stages:

Stage 0: Reduce maximum history of graph (right now allows for history stretching across 4 22" LCDs ;p).
Stage 1: Optimize existing graph, since stage 2 may take a while. I already have plans on how to do this. This may be all you need, we'll see.
Stage 2: Rewrite graph using DX or OpenGL if necessary, after investigating how useful they will be for a 2D surface.
Software Engineer. Bitsum LLC.

Jeremy Collake

Of course, this is one of the bad parts of writing all my own code. Maintaining all my own code ;)

Do NOTE though, that I *never intended* for the GUI to be something that remains open all the time (not including being minimized to the system tray). I meant for it to be opened only when the user has some configuration change to make. I really didn't even intend it to be a task manager, as there are already great task managers out there, and Windows has one built in that is getting pretty awesome itself. So, why try to compete with them? However, by adding some task manager capabilities, users naturally do use it as a task manager, and so I recognize the importance of addressing CPU utilization issues while the GUI main window is open and visible. While the main window is not visible, or minimized to the system tray, all this should stop as the GUI goes into a virtual sleep mode. Of course, I also remind people that they can run Process Lasso without its GUI, having the governor do the work, then launching the GUI only when they need to reconfigure the product, or monitor the actions.
Software Engineer. Bitsum LLC.

BenYeeHua

QuoteThis may cause problems depending on how much RAM is available to your GPU, and how much of that RAM is shared system RAM.
But I haven facing this on a netbook. ???
Maybe because the resolution is small.
----
The ATI drivers always having many topic on it, like showing the video as green with a flash player, but Nvidia drivers/graphic is working fine.
And some person found that, updating the WMP is solving it.  :o
----
Because people like a multifunction software than a pro software in that function.
Example, active processes  ;)

Jeremy Collake

I am going to issue a new final version, v6.0.1.12. After this, I am beginning work on the graph. I must begin work in a beta series in case there are complications. So, it is literally next on the agenda.
Software Engineer. Bitsum LLC.

Jeremy Collake

#6
ISSUE: While main window open and visible, graph consumes excessive CPU cycles on some minority of PCs (only)
STATUS: In Progress

Guidance until this next beta series work is to simply hide the graph (via the button in the GUI 'Hide graph'). There are *much better* resource utilization graphs in Windows anyway. Don't worry, this will be resolved SOON! Also remember, only a very small minority of users are affected by this, for whatever reason.

Again, regarding this issue:

1. Fine On Most PCs (only a minority apply to start with).
2. Fine when graph hidden.
3. Fine when GUI minimized to system tray.
4. Fine when GUI not running and governor left to do its job.

In other words, there are work-arounds, and it is not a life and death deal - but I do realize it's importance, else I wouldn't have it next on my TODO list.

I am uploading the final NOW, so will then begin work on the graph IMMEDIATELY and release a beta with the improvements made as quickly as they come.
Software Engineer. Bitsum LLC.

Jeremy Collake

I am eager to show off progress in this area. It will not be much longer before I will ;). Once I have it completed, I'll be reusing the same code (custom control) throughout many locations. It will definitely perform better on all systems.
Software Engineer. Bitsum LLC.

Victek

This it totally OT, but I had to scan your new QR Code/Avatar and it took me to your home page - very clever!  8)

BenYeeHua

Quote from: Victek on September 11, 2012, 06:28:20 PM
This it totally OT, but I had to scan your new QR Code/Avatar and it took me to your home page - very clever!  8)
Haha~ ;D

Jeremy Collake

Thanks, you can thank Tinfoil Hat for that, he created the QR image.
Software Engineer. Bitsum LLC.

Jeremy Collake

I've been working on this new graph component. It has improved substantially. I mean, substantially. However, it won't be in the next minor update. I'm holding off, it isn't quite ready. I will soon be though, trust me! This is huge! I should have rewrote it long ago, but got busy. Unlike some other programmers, I don't always have the advantage of using pre-written controls and libraries. I prefer to know what every line of my code does. Stay tuned, or don't, but it will be coming soon ;)
Software Engineer. Bitsum LLC.

BenYeeHua

Post it when the PL is having it.
So I can testing it on the Netbook.  ;)
----
PS:Sometimes the update file is false positives by the anti-virus(it having the higher(very higher) false positives than other anti-virus  ;D)

Jeremy Collake

Yes, the FP is really (obviously) their error. As consumers, you should complain to them. The horror stories I could tell you wouldn't believe.

My software is not alone, as far as smaller vendors go. I digitally sign my software, even work with these companies with regards to PECompact, yet still they false positive all the time. I document maybe a small percent of false positives at http://falsepositivereport.org . Most self-resolve as the update becomes 'known' to them. These cloud based heuristic false positives are the most difficult to deal with. The problem is that a lot of malware downloads payloads in a similar fashion as I do updates. Now, you could say, 'do it differently'. I would, but all different ways are also ways malware get their payloads. They've saturated every mechanism of downloading a payload, lol. Anyway, so the security companies naturally try to fix false positives, and try to avoid them, but are also aware that when false positives occur, they may benefit from it if anything - as it makes it seem like their software is doing something useful. This is ironic, since a lot of modern malware will slip right by since it is always 1 step ahead of them. Once malware gets installed, it can hide itself entirely from their scans.
Software Engineer. Bitsum LLC.

Jeremy Collake

As for the new graph component, it is coming ;). I did not want to slow down to wait for it, but trust me - it is what I'm working on now. While it seems like re-inventing the wheel, as many programmers take the easy route of using someone else's code, and I wonder if I should.. but it somehow feels better just to freaking code it up. It's good exercise anyway ;p. Once finished it will be a night and day improvement in performance while the main window is open and visible.

Already, to be honest, I found that painting so many lines was actually pretty high in overhead, thus reducing the number of lines (as I did in the last build) is actually more optimal. So, the last build did make an improvement.

I hope that people continue to respect native code over managed code (.NET). If not, I'll switch since the ease of coding is substantially different. However, the overhead and performance is also substantially different. For resident (always running) applications, I feel native code is imperative. That is why the kernel and drivers of all modern OSes is written in C or C++.
Software Engineer. Bitsum LLC.

BenYeeHua

Ya, and the most FP is their heuristic engine.
So if the virus is detect by the heuristic engine, I will pause the process(if running) and upload to virustotal to check it.  ;)
Because it is high detect on virus also.
They has update their heuristic engine in beta, but I haven some file that FP easyly to test it yet.
----
And that why Windows 8 is in square.  ;D
----
QuoteI hope that people continue to respect native code over managed code (.NET). If not, I'll switch since the ease of coding is substantially different. However, the overhead and performance is also substantially different. For resident (always running) applications, I feel native code is imperative. That is why the kernel and drivers of all modern OSes is written in C or C++.
Ya, the Android and some java software/games has prove it.  ;)

Jeremy Collake

Yes, VirusTotal is run by some friends of mine, and if you didn't know, they were bought by Google last month :)

Quote from: BenYeeHua on September 18, 2012, 03:41:10 PM
----Ya, the Android and some java software/games has prove it.  ;)

Yep, while the guts of Android is written in C and C++, the high level apps are indeed often Java, though some native apps, which may be what you mean. I'm sure the native apps run circles around the Java.
Software Engineer. Bitsum LLC.

Jeremy Collake

BTW, what security software do you run, so I can whitelist it?
Software Engineer. Bitsum LLC.

BenYeeHua

360杀æ¯'+360安å...¨å«å£«
360 Anti-Virus and 360 Safe Guard
When install 360 anti-virus, it also install 360 safe guard.
I think you very hard to whitelist it...
360rp.exe is engine, avira+bitdefender(after 4.0) or avira/bitdefender(before 4.0) with a selectable qvm engine(heuristic engine)
If it detect virus, it will running with other exe with difference name like
Calc.exe, EXCEL.exe, KuGoo.exe, Notepad.exe, Winrar.exe, winword.exe etc
And the PF is cause by qvm engine(heuristic engine).

And 360 Safe Guard is ZhuDongFangYu.exe
Manual scan is DSMain.exe
That all I know.

And not conflict with PL ;)
The 360 process just read-only as the function of self-defence is enable(by default).
So maybe no need to whitelist it.
----
QuoteYep, while the guts of Android is written in C and C++, the high level apps are indeed often Java, though some native apps, which may be what you mean. I'm sure the native apps run circles around the Java.
Ya, so it can running with difference mobile(hardware), and easy to create(compatibility) it.
----
QuoteYes, VirusTotal is run by some friends of mine, and if you didn't know, they were bought by Google last month :)
And now I know. ;)
----
I just testing the ParkControl(core-parking) with other people that having 660m+ivy 17-3630QM
DL;DR
WinRar
Yes, I can saw the Core is jumping between parking, unparking.
After disable core-parking, the performance is increased.

Battlefield 3
By showing the render.perfoverlayvisible 1(the time required for rendering, by showing CPU/GPU), and yup.
With parking enable, the CPU is stuttering.
Without parking, the CPU is stable as it can.
(without vsync and triple buffer+Maximum Pre-rendered Frames to 1)

MineCraft
That guy say it feel smooth(with HD4000) with 10 FPS(maybe because of java :P), but at that time I forgot to disable DWM(vsync).
So it maybe inaccurate.

HPET
Nope, I still getting the result that, after only use HPET, the game become smooth.
Need more tester.

DWM
I forgot this guy when testing core-parking, after that person say that BF3 is feeling the movement of the mouse is delay.
And I catch that is the DWM enable the Vsync and causing it, after disable it, that person say no feeling any delay.

Maximum Pre-rendered Frames
And this also affect the movement of the mouse, with increasing the value, delay increased.
But when the FPS is increased(the time required for rendering deceased) the delay is decreasing.

Switchable Graphic
Just testing it with some time, by watching the BF3 render.perfoverlayvisible, the GPU is stuttering(per 1.5s) in the menu.
And I forgot to test the DPC delays.
The HT, I don't have time to test it, because that person need to sleep(GMT+8) ;D
----
So the result is, without core-parking, even a single-thread game(Minecraft) is feeling smooth.
And the performance is increase, the time required for process is decreased.(realtime) ;)

Jeremy Collake

Wow! Thanks for the benchmarking and anecdotal reports! I had planned to soon add a 'stagger' feature to ThreadRacer to better benchmark in a lab the effects of core parking on various platforms.
Software Engineer. Bitsum LLC.

BenYeeHua

#20
Ya, most of them don't know what is core-parking.
When that person saying this is too depth...
Er... What?

Maybe they don't try to do research on Windows, am I just making the computer boot faster form 45-48s to 27s every boot.
And after boot, just running the software that you like~
Not stuttering, delay.

Because I hear from most of SSD user is, after boot, you can run whatever software as many you like, with no stuttering, delay.
So I try optimizing with a HDD, see that it can reach 10% of SSD or not, and that what I get.
27s every boot, the anti-virus is loading the data it needs after boot in 5s.(with a lot of helping hand from ReadyBoot)
And here you go.  ;)
Most of the time is taken by loading the drivers, and it only can be solve by buying a SSD/windows 8.
If I have some chance to try windows 8, I will find out why it can solving this part with just HDD.  8)

QuoteI had planned to soon add a 'stagger' feature to ThreadRacer to better benchmark in a lab the effects of core parking on various platforms.
I will waiting for it to test  ;D
----
And I wanna ask.
Some connection is fail with this state.
FIN_WAIT_1
If it is FIN_WAIT_2, I can set the time out to 10s or whatever, but FIN_WAIT_1...
The registry is not having FIN_WAIT_1 timeout to set.
Is there nothing I can do?
Or the connection that suck at the FIN_WAIT_1 is not affect anything?

Thank You. ;)

Jeremy Collake

#21
I am releasing a build today that is not my final work, BUT does improve the drawing performance of the graph considerably using a variety of 'smart' painting techniques. I never intended it to be such a focal point, but in retrospect I should have figured it would be. These improvements *start* in v6.0.1.15 beta 40400. There are *several more* improvements planned that will improve painting speed much more. Wait until one or two more builds to test though, it is still not ready. Soon, it will be perfect. I have a good plan for this.
Software Engineer. Bitsum LLC.

Jeremy Collake

I am *not* done with my work, but if any user seeing this trouble would like to give me a status update on the performance difference so far, if any, I'd be very appreciative. The issue here is I can only benchmark using a the machines I have. Systems seeing this problem are different in some way I've yet to determine with certainty, though am working on getting a good environment reproduced.
Software Engineer. Bitsum LLC.

hanemach_gt

Graph painting appears faster to me, as I have not changed the refresh interval (triggers more smoothly).
<img src="[url="http://imageshack.com/a/img913/7827/On37F9.gif"]http://imageshack.com/a/img913/7827/On37F9.gif[/url]"/>

Jeremy Collake

Thanks. There's still more work to do, and some debugging (some XP physical machines may see rendering problems with the RAM Load in this build).
Software Engineer. Bitsum LLC.

MMcVeigh

Jeremy, I see that you have been working along on the ram load graph, but I have just the opposite desire.  I like to see all the individual core graph display, but have no personal use for the instantaneous RAM graph display so I like to turn it off.  Since 6.0.1.3x, that works fine for a current invocation of PL, but the next time I start it, the display is goofy.  When I restart the PL main window instead of a display of 8 instantaneous core graph on the right, I get 4 cores a modest space and a blank area labeled Ram Load.  In order to restore my desired display, I have to use the "View|Show Ram Load Graph" option to turn it on followed by "View|Show Ram Load Graph" option to turn it off and then re-size the overall graph display height.

Would you have a look at the initialization coding to see why I don't get the same display on startup as the last setting?

No real rush, it is just kind of annoying.

Thanks,

Mark McVegh

Jeremy Collake

#26
Indeed, I see these issues. I will resolve them. Thanks for reporting! The primary graph is still a target for being completely rewritten as well, though has already had major performance gains (whether you like or hate the new look).
Software Engineer. Bitsum LLC.

Jeremy Collake

#27
The painting issues when the memory load is hidden are addressed now in the current beta series of v6.0.1.53.
Software Engineer. Bitsum LLC.

Jeremy Collake

The graph painting performance has been further improved in the current beta series, BTW, pending larger changes under development.
Software Engineer. Bitsum LLC.