Messages in this thread | | | Date | Thu, 5 Mar 2015 20:18:12 +0100 | From | Ingo Molnar <> | Subject | Re: [PATCH] perf/tui: Change default selection background color to yellow |
| |
* Arnaldo Carvalho de Melo <acme@infradead.org> wrote:
> Em Thu, Mar 05, 2015 at 11:32:13AM +0100, Ingo Molnar escreveu: > > Boris reported that 'perf top' is unusable on his default 'black on > > white' terminal, which uses (eye friendly) light-grey as a background > > color. > > > > The reason is that the TUI cursor for the current selection line uses > > HE_COLORSET_SELECTED, and that has a default background color of > > 'lightgrey' - which is a common terminal background choice and thus > > the colors conflict. > > > > Use yellow as the background color instead: that should be an uncommon > > terminal background, yet it's still ergonomic on both black and > > white/grey terminals. > > > > [ It would be a better solution to straight out detect color > > collisions and resolve them reasonably by converting them to RGB and > > calculating color space distances, but I was unable to find > > proper documentation for SLtt_get_color_object() to recover the > > current color scheme so I gave up ... Yellow works well enough. ] > > Thanks, applying. > > BTW, I started with newt, thinking it would give me good widgets, > only to, after having reached its limitations write my own, this > time just on, like newt, top of slang's tui libraries, eventually I > think I'll move to ncurses or even just use the kernel tty interface > directly ;-)
LOL! :-)
Btw., a related problem: X terminals are pretty high overhead unfortunately, I cringe every time I run 'perf top' on a very fast system:
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 4240 mingo 20 0 1031088 176112 106648 S 5.9 0.3 101:54.30 konsole 1985 root 20 0 649412 194760 157464 S 3.0 0.3 41:49.94 Xorg 2395 mingo 20 0 2283956 526044 127108 S 2.0 0.8 34:40.23 compiz 13258 mingo 20 0 207588 70916 12112 S 1.3 0.1 0:03.01 perf
10%+ of GUI CPU overhead with a refresh every 2 seconds (i.e. only 0.5 fps) - ridiculous!
So to fix this I think we eventually want a raw OpenGL client for local system 'perf top' use and such: that would be (by far) the lowest overhead UI interface to run profiling from without disturbing the system, with UI overhead in the ~1% range at most.
Raw (no toolkits) OpenGL would also allow us to do a lot of other UI and performance tricks.
Would you have any fundamental objections against OpenGL UI clients?
Thanks,
Ingo
| |