* [PATCH] Psychovisually-optimized HZ setting (2.6.33.3)
2030-04-15 8:57 ` Zhang, Yanmin
@ 2010-04-27 19:03 ` Uwaysi Bin Kareem
2010-04-27 19:51 ` Randy Dunlap
2010-04-27 21:50 ` Valdis.Kletnieks
0 siblings, 2 replies; 8+ messages in thread
From: Uwaysi Bin Kareem @ 2010-04-27 19:03 UTC (permalink / raw)
To: linux-kernel@vger.kernel.org
This is based on the research I did with optimizing my machine for
graphics.
I also wrote the following article:
http://www.paradoxuncreated.com/articles/Millennium/Millennium.html
It is a bit outdated now, but I will update it with current information.
The value might iterate.
Peace Be With You,
Uwaysi Bin Kareem.
--- Kconfig.hzorig 2010-04-27 13:33:10.302162524 +0200
+++ Kconfig.hz 2010-04-27 20:39:54.736959816 +0200
@@ -45,6 +45,18 @@
1000 Hz is the preferred choice for desktop systems and other
systems requiring fast interactive responses to events.
+ config HZ_3956
+ bool "3956 HZ"
+ help
+ 3956 Hz is nearly the highest timer interrupt rate supported in the
kernel.
+ Graphics workstations, and OpenGL applications may benefit from this,
+ since it gives the lowest framerate-jitter. The exact value 3956 is
+ psychovisually-optimized, meaning that it aims for a level of jitter,
+ percieved to be natural, and therefore non-nosiy. It is tuned for a
+ profile of "where the human senses register the most information".
+
+
+
endchoice
config HZ
@@ -53,6 +65,7 @@
default 250 if HZ_250
default 300 if HZ_300
default 1000 if HZ_1000
+ default 3956 if HZ_3956
config SCHED_HRTICK
def_bool HIGH_RES_TIMERS && (!SMP || USE_GENERIC_SMP_HELPERS)
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] Psychovisually-optimized HZ setting (2.6.33.3)
2010-04-27 19:03 ` [PATCH] Psychovisually-optimized HZ setting (2.6.33.3) Uwaysi Bin Kareem
@ 2010-04-27 19:51 ` Randy Dunlap
2010-04-27 21:50 ` Valdis.Kletnieks
1 sibling, 0 replies; 8+ messages in thread
From: Randy Dunlap @ 2010-04-27 19:51 UTC (permalink / raw)
To: Uwaysi Bin Kareem; +Cc: linux-kernel@vger.kernel.org
On Tue, 27 Apr 2010 21:03:11 +0200 Uwaysi Bin Kareem wrote:
> This is based on the research I did with optimizing my machine for
> graphics.
> I also wrote the following article:
> http://www.paradoxuncreated.com/articles/Millennium/Millennium.html
> It is a bit outdated now, but I will update it with current information.
> The value might iterate.
Hi,
What CPU architectures or platforms did you test this on?
Were any other kernel changes needed?
> Peace Be With You,
> Uwaysi Bin Kareem.
>
>
> --- Kconfig.hzorig 2010-04-27 13:33:10.302162524 +0200
> +++ Kconfig.hz 2010-04-27 20:39:54.736959816 +0200
> @@ -45,6 +45,18 @@
> 1000 Hz is the preferred choice for desktop systems and other
> systems requiring fast interactive responses to events.
>
> + config HZ_3956
> + bool "3956 HZ"
> + help
> + 3956 Hz is nearly the highest timer interrupt rate supported in the
> kernel.
> + Graphics workstations, and OpenGL applications may benefit from this,
drop first comma.
> + since it gives the lowest framerate-jitter. The exact value 3956 is
> + psychovisually-optimized, meaning that it aims for a level of jitter,
> + percieved to be natural, and therefore non-nosiy. It is tuned for a
perceived non-noisy.
> + profile of "where the human senses register the most information".
> +
> +
> +
> endchoice
>
> config HZ
> @@ -53,6 +65,7 @@
> default 250 if HZ_250
> default 300 if HZ_300
> default 1000 if HZ_1000
> + default 3956 if HZ_3956
>
> config SCHED_HRTICK
> def_bool HIGH_RES_TIMERS && (!SMP || USE_GENERIC_SMP_HELPERS)
>
> --
---
~Randy
*** Remember to use Documentation/SubmitChecklist when testing your code ***
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] Psychovisually-optimized HZ setting (2.6.33.3)
2010-04-27 19:03 ` [PATCH] Psychovisually-optimized HZ setting (2.6.33.3) Uwaysi Bin Kareem
2010-04-27 19:51 ` Randy Dunlap
@ 2010-04-27 21:50 ` Valdis.Kletnieks
1 sibling, 0 replies; 8+ messages in thread
From: Valdis.Kletnieks @ 2010-04-27 21:50 UTC (permalink / raw)
To: Uwaysi Bin Kareem; +Cc: linux-kernel@vger.kernel.org
[-- Attachment #1: Type: text/plain, Size: 1234 bytes --]
On Tue, 27 Apr 2010 21:03:11 +0200, Uwaysi Bin Kareem said:
> http://www.paradoxuncreated.com/articles/Millennium/Millennium.html
> + config HZ_3956
> + bool "3956 HZ"
> + help
> + 3956 Hz is nearly the highest timer interrupt rate supported in the kernel.
> + Graphics workstations, and OpenGL applications may benefit from this,
> + since it gives the lowest framerate-jitter. The exact value 3956 is
> + psychovisually-optimized, meaning that it aims for a level of jitter,
Even after reading your link, it's unclear why 3956 and not 4000. All your link
said was "A granularity below 0.5 milliseconds, seems to suit the human
senses." - anything over 2000 meets that requirement. Also, if your screen
refresh is sitting at 72hz or a bit under 14ms per refresh, any jitter under
that won't really matter much - it doesn't matter if your next frame is
ready 5ms early or 5.5ms early, you *still* have to wait for the next vertical
blanking interval or suffer tearing.
There's also the case of programs where HZ=300 would *make* the time budget,
but the added 3,356 timer interrupts and associated overhead would cause a
missed screen refresh.
I think you need more technical justification of why 3956 is better than 1000.
[-- Attachment #2: Type: application/pgp-signature, Size: 227 bytes --]
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] Psychovisually-optimized HZ setting (2.6.33.3)
@ 2010-05-29 11:54 uwaysi.bin.kareem
2010-06-01 6:21 ` Valdis.Kletnieks
0 siblings, 1 reply; 8+ messages in thread
From: uwaysi.bin.kareem @ 2010-05-29 11:54 UTC (permalink / raw)
To: linux-kernel
Hmm, yes. Some typos there. Alhamdulillah (Praised Be God), for the correction. I do not have a good spellingchecker installed at the moment, and english is not my native language.
The patch is still very interesting though, I have also tried it on 2.6.34, where jitter is somewhat lower than 2.6.33.
For users of opengl-application, it is purely a benefit to increase the interrupt timer, and I have noticed no performance degradation (with opengl-applications) by doing so.
If the patch should not be working with future versions of the kernel, a simple edit of linuxkernel/kernel/Kconfig.hz, replacing 1000 with 3956 should do.
Randy Dunlap: Hi, What CPU architectures or platforms did you test this on? Were any other kernel changes needed?
Tested only on my Core2 duo. No other changes needed.
Valdis Kletnieks: Why 3956, and why better than 1000:
As stated the exact value 3956, fits a profile of "where the human senses register the most information".
The value may still iterate, as I am trying it on different kernels, and patches. However 3956 have been used here for a few months, without being changed.
As I am working out a few tweaks to reduce jitter, sporadic and more regular, I may also change the value.
However I think there is not so much more I can do, ATM, to reduce or change jitter behaviour. I have made a little script that changes some scheduling types, and installed a minimal linux-OS, for personal use, where I am optimizing it for my own senses, and therefore yours. :) Enjoy the fruits of this labour, if you want to be playing opengl games at it's best, (and particulary now, that the halflife series, is likely to come to linux. ! :) - Much more enjoyable than anything running under closed source OS's, that's for sure. Overcommercialism subjecting man to inferior products, and so forth.
Peace Be With You
- Uwaysi.
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] Psychovisually-optimized HZ setting (2.6.33.3)
2010-05-29 11:54 uwaysi.bin.kareem
@ 2010-06-01 6:21 ` Valdis.Kletnieks
0 siblings, 0 replies; 8+ messages in thread
From: Valdis.Kletnieks @ 2010-06-01 6:21 UTC (permalink / raw)
To: uwaysi.bin.kareem; +Cc: linux-kernel
[-- Attachment #1: Type: text/plain, Size: 560 bytes --]
On Sat, 29 May 2010 13:54:00 +0200, uwaysi.bin.kareem@paradoxuncreated.com said:
> Valdis Kletnieks: Why 3956, and why better than 1000:
>
> As stated the exact value 3956, fits a profile of "where the human senses register the most information".
More details on that profile. Where *exactly* did the number 3956 come from?
How did you distinguish between 3956 and 4000 or 4096? What numbers do you
have that show an actual *measurable* improvement over 1000?
In other words, convince us that people can actually see the difference
between 1000 and 3956.
[-- Attachment #2: Type: application/pgp-signature, Size: 227 bytes --]
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] Psychovisually-optimized HZ setting (2.6.33.3)
@ 2010-06-01 10:47 uwaysi.bin.kareem
2010-06-01 13:25 ` Valdis.Kletnieks
0 siblings, 1 reply; 8+ messages in thread
From: uwaysi.bin.kareem @ 2010-06-01 10:47 UTC (permalink / raw)
To: linux-kernel
On Tue, 01 Jun 2010 08:21:46 +0200, <Valdis.Kletnieks@vt.edu> wrote:
> On Sat, 29 May 2010 13:54:00 +0200,
> uwaysi.bin.kareem@paradoxuncreated.com said:
>
>> Valdis Kletnieks: Why 3956, and why better than 1000:
>>
>> As stated the exact value 3956, fits a profile of "where the human
>> senses register the most information".
>
> More details on that profile. Where *exactly* did the number 3956 come
> from?
> How did you distinguish between 3956 and 4000 or 4096? What numbers do
> you
> have that show an actual *measurable* improvement over 1000?
>
> In other words, convince us that people can actually see the difference
> between 1000 and 3956.
I do not really have any numbers Valdis, other than simple glxgears benchmarks.
However I have a lot of experience with jitter, and I am looking for sporadic jitter, jitter related to application-startup, jitter that is more or less constant.
Ofcourse I do not need any numbers either. If you think 1000 is better than 50, then there is a difference between 1000 and 4000 aswell.
However it gets in the the area of research, one would call psychovisuals. Small changes affecting the immersion, or experience of opengl.
Put it simply one might state "If you feel that your computer is a bit stoopid, try increasing the value, and maybe you will be more satisfied." This because the computer now, is more like the human senses.
The advanced version:
For those who posess religious knowledge, or believe in religious phenomea, lets just say that, if you don't comply to certain religious knowledge, you will be tuning psychovisuals for a spirit, and not a human, and the experience will be suboptimal.
Just like the worshipper of one spirit, say, atheist, includes his preferences in the tuning, so does, for instance the hash-smoker, and that is reflected in his tunings. What one would optimally like, is a spirit-free tuning. No personal preference, but tuned for the universal in us all.
And for those who would like to understand some of the methology behind this, again www.paradoxuncreated.com .Try the meditation-techinque, which purifies the mind from spirits.
Any answers related to this post, critisising or wasting my time, will be ignored.
God guides and deludes whomever he wills.
Peace Be with You.
Uwaysi.
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] Psychovisually-optimized HZ setting (2.6.33.3)
2010-06-01 10:47 [PATCH] Psychovisually-optimized HZ setting (2.6.33.3) uwaysi.bin.kareem
@ 2010-06-01 13:25 ` Valdis.Kletnieks
0 siblings, 0 replies; 8+ messages in thread
From: Valdis.Kletnieks @ 2010-06-01 13:25 UTC (permalink / raw)
To: uwaysi.bin.kareem; +Cc: linux-kernel
[-- Attachment #1: Type: text/plain, Size: 2988 bytes --]
On Tue, 01 Jun 2010 12:47:15 +0200, uwaysi.bin.kareem@paradoxuncreated.com said:
> I do not really have any numbers Valdis, other than simple glxgears benchmarks.
I suspect that glxgears isn't telling you what you think it's telling you.
For starters, the distinction between a glxgears wank-o-meter reading of
4,000 FPS and 8,000 FPS doesn't actually *matter* when your screen is only
actually able to do 60 or 72 or 120FPS. What it *really* tells you is that
the card that can do 8,000FPS can probably handle a more complicated scene
before the FPS drops below the refresh rate and you miss a frame, which
*will* be noticeable.
Repeat after me: Graphics cards are locked to the refresh rate, and you can't
see jitter or low frame rates unless it causes tearing, missed frames, or
other screen artifacts. And to maximize your chances of not missing a screen
update, you want a *lower* HZ value so you don't waste precious time handling
timer interrupts.
> However I have a lot of experience with jitter, and I am looking for sporadic
> jitter, jitter related to application-startup, jitter that is more or less
> constant.
"Constant jitter" - talking like that will get you mocked mercilessly by
some people.
> Ofcourse I do not need any numbers either. If you think 1000 is better than
> 50, then there is a difference between 1000 and 4000 aswell.
OK, so why not go straight to 8,00 or 10,000 instead? Did you try values in that
range?
Hate to tell you this, but around here, you *do* need numbers to justify
making changes. It used to be that HZ=100 was the only choice - 250 and
1000 were added because somebody showed that those options made noticeable
differences in the latency/overhead tradeoff (interestingly enough, HZ=1000
mattered more to audio processing than video, because most video cards are
locked to a relatively low refresh rate while audio cards will produce
a noticable transient if you miss a timeout by even 1ms). HZ=300 was added
specifically to play nice with 60-hz video processing.
But to swallow the added overhead of setting HZ=4000, you'll have to show
some remarkable benefits (especially when you're pulling out a magic number
like 3956 rather than 4000).
> Put it simply one might state "If you feel that your computer is a bit
> stoopid, try increasing the value, and maybe you will be more satisfied." This
> because the computer now, is more like the human senses.
And maybe you won't be, unless you're the type of person who buys the
special $1,000 HDMI cables and $600 wooden volume controls. Unfortunately,
we aren't building kernels for those type of people.
> And for those who would like to understand some of the methology behind this,
> again www.paradoxuncreated.com .Try the meditation-techinque, which purifies
> the mind from spirits.
Unfortunately, that's unlikely to get your changes into the kernel.
> Any answers related to this post, critisising or wasting my time, will be ignored.
Nor is this likely to help...
[-- Attachment #2: Type: application/pgp-signature, Size: 227 bytes --]
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] Psychovisually-optimized HZ setting (2.6.33.3)
@ 2010-06-01 14:12 uwaysi.bin.kareem
0 siblings, 0 replies; 8+ messages in thread
From: uwaysi.bin.kareem @ 2010-06-01 14:12 UTC (permalink / raw)
To: linux-kernel
I guess I could pick this post apart, just for the fun of it. I really hate satanical stupidity. Most of you here, can probably follow a level, where my arguments make sense, and some of you can even follow the religious argument. However a few may post completely retarded stuff like this. Now I'm going to pick this apart, so that you can rather imagine this being done, in similar future incidents, however I will just ignore. My life is better without this kind of conversation ;)
On Tue, 01 Jun 2010 15:25:46 +0200, <Valdis.Kletnieks@vt.edu> wrote:
> On Tue, 01 Jun 2010 12:47:15 +0200,
> uwaysi.bin.kareem@paradoxuncreated.com said:
>
>> I do not really have any numbers Valdis, other than simple glxgears
>> benchmarks.
>
> I suspect that glxgears isn't telling you what you think it's telling
> you.
> For starters, the distinction between a glxgears wank-o-meter reading of
> 4,000 FPS and 8,000 FPS doesn't actually *matter* when your screen is
> only
It matters to jitter measurements, where numbers in the 80000 region, is giving me the information I need. With more complex scenes, who would only render say 100fps, less information would be given. We are not talking about how complex scenes, we can render. We are talking about jitter, which is present, regardless of scene-complexity.
> actually able to do 60 or 72 or 120FPS. What it *really* tells you is
> that
> the card that can do 8,000FPS can probably handle a more complicated
> scene
> before the FPS drops below the refresh rate and you miss a frame, which
> *will* be noticeable.
>
> Repeat after me: Graphics cards are locked to the refresh rate, and you
> can't
I think very few things should be repeated after you. First the 8000fps, and now you claim vsynced behaviour. This is a contradiction.
> see jitter or low frame rates unless it causes tearing, missed frames, or
> other screen artifacts. And to maximize your chances of not missing a
> screen
> update, you want a *lower* HZ value so you don't waste precious time
No. You run 50hz, I run 3956hz. If you have this amount of garbage in your head, maybe it's in your vision aswell, and little can help you.
> handling
> timer interrupts.
>
>> However I have a lot of experience with jitter, and I am looking for
>> sporadic
>> jitter, jitter related to application-startup, jitter that is more or
>> less
>> constant.
>
> "Constant jitter" - talking like that will get you mocked mercilessly by
> some people.
Mindless people, who set a value of 4000hz instead of 3956, because they don't believe or lack the skill, to tune a value. Instead the value 4000 would reflect a guess, not tuned for the human senses, and we are back to the old stoopid computer again, tuned by people like Vladis, who would rather sit and run 50hz updates in machocistic hope of saving a cpu cycle, when reallife tests show that even values of 10000hz make little difference of performance in opengl. You do that Vladis. Live with the cheapest clothes, the most outwatered drinks, and the stalest and cheapest bread. And for us, who appreciate higher intelligence, and use the resources available to us, we will enjoy ourselves a little, away from backwardpeople like you.
>> Ofcourse I do not need any numbers either. If you think 1000 is better
>> than
>> 50, then there is a difference between 1000 and 4000 aswell.
>
> OK, so why not go straight to 8,00 or 10,000 instead? Did you try values
> in that
> range?
>
> Hate to tell you this, but around here, you *do* need numbers to justify
> making changes. It used to be that HZ=100 was the only choice - 250 and
In a menu. Lol, some of us actually looked at the source, and changed that value anyway. It's really quite simple, and if you don't posess even that basic level of skill, what are you doing on LKML. Lol, it's never been 100hz or no choice. You seem to even lack the most basic insight into what opensource is.
> 1000 were added because somebody showed that those options made
> noticeable
> differences in the latency/overhead tradeoff (interestingly enough,
> HZ=1000
> mattered more to audio processing than video, because most video cards
> are
> locked to a relatively low refresh rate while audio cards will produce
> a noticable transient if you miss a timeout by even 1ms). HZ=300 was
> added
> specifically to play nice with 60-hz video processing.
Play nice? Jitter between frames are still a problem, even though 300hz is divisible by 60.
>
> But to swallow the added overhead of setting HZ=4000, you'll have to show
> some remarkable benefits (especially when you're pulling out a magic
> number
> like 3956 rather than 4000).
You completely failed to comprehend the simple statement in my previous post "There is no performance penalty for opengl applications". How is it possible?
>> Put it simply one might state "If you feel that your computer is a bit
>> stoopid, try increasing the value, and maybe you will be more
>> satisfied." This
>> because the computer now, is more like the human senses.
>
> And maybe you won't be, unless you're the type of person who buys the
> special $1,000 HDMI cables and $600 wooden volume controls.
> Unfortunately,
> we aren't building kernels for those type of people.
We? This is opensource. I do whatever I will with the kernel. You take your cheap pirate rip-off copy of a volume control, and I WILL have the nice volume control. Resources exist to be consumed.
>> And for those who would like to understand some of the methology behind
>> this,
>> again www.paradoxuncreated.com .Try the meditation-techinque, which
>> purifies
>> the mind from spirits.
>
> Unfortunately, that's unlikely to get your changes into the kernel.
If people like you are influental in what goes into the kernel, the linux community truly suffers. Be ready for the cheapest and the lowest, just because theoretically some cpu cycles get lost. Why don't you get yourself and z80 and live in sinclair lands, it truly sounds like you want to keep being there.
>> Any answers related to this post, critisising or wasting my time, will
>> be ignored.
>
> Nor is this likely to help...
I don't think you have any idea about what helps and not helps. Go to a 1$ mental hospital, with zx sinclair computers, and run it at 0.0001hz screen update. That will surely save cpu cycles.
On the other hand it would bring our economy to a halt, and development of linux or any other OS, would be for a stagnant hardware market. What should we do with the new hardware? Pile em up, and brag, and never use em, because it saves cpu cycles?
Like a pile of trash?
Might aswell go the direct route to the trashheap then.
Peace Be With You.
Uwaysi. (in a more-than-rare-flamewars thesedays)
PS: To all the sane people here, do it. You will enjoy it. Do not be mr. 50hz sadomachochist.
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2010-06-01 14:12 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-06-01 10:47 [PATCH] Psychovisually-optimized HZ setting (2.6.33.3) uwaysi.bin.kareem
2010-06-01 13:25 ` Valdis.Kletnieks
-- strict thread matches above, loose matches on Subject: below --
2030-04-14 9:05 [PATCH V3] perf & kvm: Enhance perf to collect KVM guest os statistics from host side Zhang, Yanmin
2010-04-14 9:20 ` Avi Kivity
2030-04-15 1:04 ` Zhang, Yanmin
2010-04-15 8:05 ` Avi Kivity
2030-04-15 8:57 ` Zhang, Yanmin
2010-04-27 19:03 ` [PATCH] Psychovisually-optimized HZ setting (2.6.33.3) Uwaysi Bin Kareem
2010-04-27 19:51 ` Randy Dunlap
2010-04-27 21:50 ` Valdis.Kletnieks
2010-06-01 14:12 uwaysi.bin.kareem
2010-05-29 11:54 uwaysi.bin.kareem
2010-06-01 6:21 ` Valdis.Kletnieks
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox