Matthew Wilcox [off-list ref] writes:
On Mon, Dec 18, 2017 at 01:35:47PM -0700, Ross Zwisler wrote:
quoted
What I'm hoping to do with this series is to just provide a sysfs
representation of the HMAT so that applications can know which NUMA nodes to
select with existing utilities like numactl. This series does not currently
alter any kernel behavior, it only provides a sysfs interface.
Say for example you had a system with some high bandwidth memory (HBM), and
you wanted to use it for a specific application. You could use the sysfs
representation of the HMAT to figure out which memory target held your HBM.
You could do this by looking at the local bandwidth values for the various
memory targets, so:
# grep . /sys/devices/system/hmat/mem_tgt*/local_init/write_bw_MBps
/sys/devices/system/hmat/mem_tgt2/local_init/write_bw_MBps:81920
/sys/devices/system/hmat/mem_tgt3/local_init/write_bw_MBps:40960
/sys/devices/system/hmat/mem_tgt4/local_init/write_bw_MBps:40960
/sys/devices/system/hmat/mem_tgt5/local_init/write_bw_MBps:40960
and look for the one that corresponds to your HBM speed. (These numbers are
made up, but you get the idea.)
Presumably ACPI-based platforms will not be the only ones who have the
ability to expose different bandwidth memories in the future. I think
we need a platform-agnostic way ... right, PowerPC people?
Yes!
I don't have any detail at hand but will try and rustle something up.
cheers