All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ingo Molnar <mingo@kernel.org>
To: Arnaldo Carvalho de Melo <acme@infradead.org>
Cc: Borislav Petkov <bp@alien8.de>, Jiri Olsa <jolsa@redhat.com>,
	Peter Zijlstra <a.p.zijlstra@chello.nl>,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH] perf/tui: Change default selection background color to yellow
Date: Thu, 5 Mar 2015 20:18:12 +0100	[thread overview]
Message-ID: <20150305191812.GA13280@gmail.com> (raw)
In-Reply-To: <20150305141929.GS5187@kernel.org>


* 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

  reply	other threads:[~2015-03-05 19:18 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-03-05 10:32 [PATCH] perf/tui: Change default selection background color to yellow Ingo Molnar
2015-03-05 10:47 ` Borislav Petkov
2015-03-05 14:19 ` Arnaldo Carvalho de Melo
2015-03-05 19:18   ` Ingo Molnar [this message]
2015-12-10  8:15 ` [tip:perf/core] perf tui: " tip-bot for Ingo Molnar
  -- strict thread matches above, loose matches on Subject: below --
2015-12-09  9:55 [PATCH] perf/tui: " Borislav Petkov
2015-12-09 13:45 ` Arnaldo Carvalho de Melo

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20150305191812.GA13280@gmail.com \
    --to=mingo@kernel.org \
    --cc=a.p.zijlstra@chello.nl \
    --cc=acme@infradead.org \
    --cc=bp@alien8.de \
    --cc=jolsa@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.