On Wed, Dec 12, 2018 at 10:23:24AM +0530, Aneesh Kumar K.V wrote: > On 12/11/18 6:33 AM, Keith Busch wrote: > > +When multiple memory initiators exist, they may not all have the same > > +performance when accessing a given memory target. The highest performing > > +initiator to a given target is considered to be one of that target's > > +local initiators. Any given target may have one or more local initiators, > > +and any given initiator may have multiple local memory targets. > > + > > Can you also add summary here suggesting node X is compute and Node y is > memory target Sure thing. > > +To aid applications matching memory targets with their initiators, > > +the kernel provide symlinks to each other like the following example:: > > + > > + # ls -l /sys/devices/system/node/nodeX/local_target* > > + /sys/devices/system/node/nodeX/local_targetY -> ../nodeY > > + > > + # ls -l /sys/devices/system/node/nodeY/local_initiator* > > + /sys/devices/system/node/nodeY/local_initiatorX -> ../nodeX > > + > > the patch series had primary_target and primary_initiator Yeah, I noticed that mistake too. I went through several iterations of naming this, and I think it will yet be named something else in the final revision to accomodate different access levels since it sounds like some people may wish to show more than just the best. > > +When the kernel first registers a memory cache with a node, the kernel > > +will create the following directory:: > > + > > + /sys/devices/system/node/nodeX/side_cache/ > > + > > This is something even the patch commit message didn't explain we create > side_cache directory in memory target nodes or initiator nodes? I assume it > is part of memory target nodes. If so to be consistent can you use nodeY? Right, only memory targets may have memory side caches. Will use more consistent symbols.