lgrpinfo - the tool for displaying system lgroup topology Alexander Kolbasov (Alexander.Kolbasov@sun.com) 1. Summary The PSARC cases 2003/034 (Lgroup APIs), 2004/777 (lgrp_latency Extension) and 2004/836 (Lgroup Resource Interface) introduce a number of library calls as well as constants. These library calls provide the caller with extensive information about NUMA topology of the system. In order to make access to the contents possible from a user shell or from a script, this case proposes the creation of an utility that will provide such information from the command line. 2. Discussion. At present, the only way to access the information about the system topology is through the C API provided by liblgrp. This requires both a C compiler and a knowledge of C. This fast track is intended to provide a command line interface to the underlying liblgrp(3LIB) API. The interface is designed to provide a customizable view of the system topology from the NUMA standpoint to system administrators and users. 3. Interface The interface is described in the attached manual pages. The stability level is Unstable. Requested release binding is Patch/Micro (since we should be able to provide this utility in updates back as far as Solaris 9 Update 5). 4. Compatibility. Currently, there are two versions of the liblgrp library available on different versions of Solaris. Solaris 9 Update 5 and above and Solaris 10 support version 1 of the liblgrp API as described in PSARC cases 2003/034 (Lgroup APIs). Solaris 10 Update 1 and above and Solaris 11 support both version 1 and version 2 which includes additional functions and constants defined in PSARC cases 2004/836 (Lgroup Resource Interface) and 2004/777 (lgrp_latency Extension). The following functions are only present in version 2 of the liblgrp: lgrp_resources(3LGRP) lgrp_latency_cookie(3LGRP) As a result, the "-r" ("show resources") is only supported on systems which use version 2 of the API. On systems which use version 1 of the API, the "-r" option is ignored and the following message is printed to the standard error: "sorry, your system does not support lgrp_resources(3LGRP)" If option "-r" is not explicitly present, no error messages are printed and no resources information is displayed on such systems. 5. References. PSARC 2003/034 lgroup APIs PSARC 2004/777 lgrp_latency Extension PSARC 2004/836 Lgroup Resource Interface Project Web Page, including online documentation http://www.opensolaris.org/os/community/performance/numa/observability/tools/lgrpinfo/ 6. New manual pages lgrpinfo(1) See lgrpinfo.txt