>One question to consider is do we want to also
> support something similar to Linux's
> "/proc/cpuinfo"?

"something similar" might be up for discussion, but it's been
said before that unlike Linux, /proc on Solaris is _not_ a dumping
ground for every random piece of system info (worse yet, presented
in text format, which may be human readable, but may not always be
easy to parse correctly).  However, other pseudo filesystems, separate
from /proc, have appeared for various purposes.  I think even Linux
has started to create separate filesystems for some of these things,
recognizing that their /proc was seriously overloaded with too many
different bits of functionality.

I imagine a number of things to consider before a detailed proposal could
be made.  Consider first the hierarchy of a NUMA system; add to that
possibly multiple CPU chips local to one another, multiple cores per chip,
multiple threads per core, sub-core thread groups,
different breakdowns of components that could be in use simultaneously
on a multi-thread core (affects scheduling for best throughput), various
cache arrangements (I don't even know enough to describe this, but I'm
sure there are a _lot_ of possible variations), software or hardware-supported
(para)virtualization, etc.  Not to mention differences in which instructions
are actually implemented in hardware (POPC is in software on a lot of chips,
I think), optional instructions or instruction sets, differences in instruction
timing (if you want to go down to that level); and of course the obvious
(and often over-valued) clock frequency (as modified by power management,
etc).  And who knows what else that I forgot...

I don't know whether a filesystem-like presentation would be flexible
enough to handle all that.  Perhaps some well-designed data structures and
functions to access them in different ways are what's really needed?

But before going crazy, there's also the question not only what is there
that _could_ be described now or in the forseeable future, but how much
of that would it be _useful_ to describe?  Aside from simply documenting
hardware configuration, how much might some program running on a system
need to know to make best use of the system, or alternatively to balance
its needs with a desire to be a good citizen and not take unreasonable
advantage?
 
 
--
This messages posted from opensolaris.org
_______________________________________________
observability-discuss mailing list
[EMAIL PROTECTED]

_______________________________________________
perf-discuss mailing list
perf-discuss@opensolaris.org

Reply via email to