summaryrefslogtreecommitdiff
path: root/parallel/hwloc
AgeCommit message (Collapse)AuthorFilesLines
2020-11-05*: Recursive revbump from textproc/icu-68.1ryoon2-4/+4
2020-06-02Revbump for icuadam2-2/+4
2019-09-11hwloc: updated to 1.11.3adam2-7/+7
hwloc (Hardware Locality) 1.11.13 The most important change is support for upcoming Intel processors with multiple Dies per CPU. hwloc release 2.1 will add a new "Die" object. In the meantime 1.11.13 and 2.0.4 represent those Dies as "Die" groups. Summary of the changes since 1.11.12: * Add support for Linux 5.3 new sysfs cpu topology files with Die information. * Add support for Intel v2 Extended Topology Enumeration in the x86 backend. * Tiles, Modules and Dies are exposed as Groups for now. + HWLOC_DONT_MERGE_DIE_GROUPS=1 may be set in the environment to prevent Die groups from being automatically merged with identical parent or children. * Ignore NUMA node information from AMD topoext in the x86 backend, unless HWLOC_X86_TOPOEXT_NUMANODES=1 is set in the environment. * Group objects have a new "dont_merge" attribute to prevent them from being automatically merged with identical parent or children.
2019-07-08Follow some http->https redirects.nia1-2/+2
2018-12-13hwloc: updated to 1.11.12adam2-11/+9
Version 1.11.12 * Fix a corner case of hwloc_topology_restrict() where children would become out-of-order. * Fix the return length of export_xmlbuffer() functions to always include the ending \0. Version 1.11.11 * Add support for Hygon Dhyana processors in the x86 backend, thanks to Pu Wen for the patch. * Fix symbol renaming to also rename internal components, thanks to Evan Ramos for the patch. * Fix build on HP-UX, thanks to Richard Lloyd for reporting the issues. * Detect PCI link speed without being root on Linux >= 4.13.
2018-09-30Handle packing on DragonFlysevan1-0/+2
2018-08-16hwloc: fix buildlink3 on Darwinadam1-1/+5
2018-08-16hwloc: fix building on Darwinadam1-1/+6
2018-08-09hwloc: missed buildlink3.mk update for libpciaccess.prlw11-1/+2
2018-08-09Update hwloc to 1.11.10prlw13-8/+10
Version 1.11.10 (also included in 2.0.1) --------------- * Fix detection of cores and hyperthreads on Mac OS X. * Serialize pciaccess discovery to fix concurrent topology loads in multiple threads. * Fix first touch area memory binding on Linux when thread memory binding is different. * Some minor fixes to memory binding. * Fix hwloc-dump-hwdata to only process SMBIOS information that correspond to the KNL and KNM configuration. * Add a heuristic for guessing KNL/KNM memory and cluster modes when hwloc-dump-hwdata could not run as root earlier. * Fix discovery of NVMe OS devices on Linux >= 4.0. * Add get_area_memlocation() on Windows. * Add CPUVendor, Model, ... attributes on Mac OS X. Version 1.11.9 -------------- * Add support for Zhaoxin ZX-C and ZX-D processors in the x86 backend, thanks to Jeff Zhao for the patch. * Fix AMD Epyc 24-core L3 cache locality in the x86 backend. * Don't crash in the x86 backend when the CPUID vendor string is unknown. * Fix the missing pu discovery support bit on some OS. * Fix the management of the lstopoStyle info attribute for custom colors. * Add verbose warnings when failing to load hwloc v2.0+ XMLs. Version 1.11.8 -------------- * Multiple Solaris improvements, thanks to Maureen Chew for the help: + Detect caches on Sparc. + Properly detect allowed/disallowed PUs and NUMA nodes with processor sets. + Add hwloc_get_last_cpu_location() support for the current thread. * Add support for CUDA compute capability 7.0 and fix support for 6.[12]. * Tools improvements + Fix search for objects by physical index in command-line tools. + Add missing "cpubind:get_thisthread_last_cpu_location" in the output of hwloc-info --support. + Add --pid and --name to specify target processes in hwloc-ps. + Display thread names in lstopo and hwloc-ps on Linux. * Doc improvements + Add a FAQ entry about building on Windows. + Install missing sub-manpage for hwloc_obj_add_info() and hwloc_obj_get_info_by_name().
2017-04-28Version 1.11.7adam3-9/+10
-------------- * Fix hwloc-bind --membind for CPU-less NUMA nodes (again). Thanks to Gilles Gouaillardet for reporting the issue. * Fix a memory leak on IBM S/390 platforms running Linux. * Fix a memory leak when forcing the x86 backend first on amd64/topoext platforms running Linux. * Command-line tools now support "hbm" instead "numanode" for filtering only high-bandwidth memory nodes when selecting locations. + hwloc-bind also support --hbm and --no-hbm for filtering only or no HBM nodes. * Add --children and --descendants to hwloc-info for listing object children or object descendants of a specific type. * Add --no-index, --index, --no-attrs, --attrs to disable/enable display of index numbers or attributes in the graphical lstopo output. * Try to gather hwloc-dump-hwdata output from all possible locations in hwloc-gather-topology. * Updates to the documentation of locations in hwloc(7) and command-line tools manpages.
2017-02-06fix linux build and PLISTmarkd2-3/+6
2016-10-21Update to hwloc 1.11.4.asau3-9/+10
Version 1.11.4 -------------- * Add MemoryMode and ClusterMode attributes in the Machine object on KNL. Add doc/examples/get-knl-modes.c for an example of retrieving them. Thanks to Grzegorz Andrejczuk. * Fix Linux build with -m32 with respect to libudev. Thanks to Paul Hargrove for reporting the issue. * Fix build with Visual Studio 2015, thanks to Eloi Gaudry for reporting the issue and providing the patch. * Don't forget to display OS device children in the graphical lstopo. * Fix a memory leak on Solaris, thanks to Bryon Gloden for the patch. * Properly handle realloc() failures, thanks to Bryon Gloden for reporting the issue. * Fix lstopo crash in ascii/fig/windows outputs when some objects have a lstopoStyle info attribute. Version 1.11.3 -------------- * Bug fixes + Fix a memory leak on Linux S/390 hosts with books. + Fix /proc/mounts parsing on Linux by using mntent.h. Thanks to Nathan Hjelm for reporting the issue. + Fix a x86 infinite loop on VMware due to the x2APIC feature being advertised without actually being fully supported. Thanks to Jianjun Wen for reporting the problem and testing the patch. + Fix the return value of hwloc_alloc() on mmap() failure. Thanks to Hugo Brunie for reporting the issue. + Fix the return value of command-line tools in some error cases. + Do not break individual thread bindings during x86 backend discovery in a multithreaded process. Thanks to Farouk Mansouri for the report. + Fix hwloc-bind --membind for CPU-less NUMA nodes. + Fix some corner cases in the XML export/import of application userdata. * API Improvements + Add HWLOC_MEMBIND_BYNODESET flag so that membind() functions accept either cpusets or nodesets. + Add hwloc_get_area_memlocation() to check where pages are actually allocated. Only implemented on Linux for now. - There's no _nodeset() variant, but the new flag HWLOC_MEMBIND_BYNODESET is supported. + Make hwloc_obj_type_sscanf() parse back everything that may be outputted by hwloc_obj_type_snprintf(). * Detection Improvements + Allow the x86 backend to add missing cache levels, so that it completes what the Solaris backend lacks. Thanks to Ryan Zezeski for reporting the issue. + Do not filter-out FibreChannel PCI adapters by default anymore. Thanks to Matt Muggeridge for the report. + Add support for CUDA compute capability 6.x. * Tools + Add --support to hwloc-info to list supported features, just like with hwloc_topology_get_support(). - Also add --objects and --topology to explicitly switch between the default modes. + Add --tid to let hwloc-bind operate on individual threads on Linux. + Add --nodeset to let hwloc-bind report memory binding as NUMA node sets. + hwloc-annotate and lstopo don't drop application userdata from XMLs anymore. - Add --cu to hwloc-annotate to drop these application userdata. + Make the hwloc-dump-hwdata dump directory configurable through configure options such as --runstatedir or --localstatedir. * Misc Improvements + Add systemd service template contrib/systemd/hwloc-dump-hwdata.service for launching hwloc-dump-hwdata at boot on Linux. Thanks to Grzegorz Andrejczuk. + Add HWLOC_PLUGINS_BLACKLIST environment variable to prevent some plugins from being loaded. Thanks to Alexandre Denis for the suggestion. + Small improvements for various Windows build systems, thanks to Jonathan L Peyton and Marco Atzeri. Version 1.11.2 -------------- * Improve support for Intel Knights Landing Xeon Phi on Linux: + Group local NUMA nodes of normal memory (DDR) and high-bandwidth memory (MCDRAM) together through "Cluster" groups so that the local MCDRAM is easy to find. - See "How do I find the local MCDRAM NUMA node on Intel Knights Landing Xeon Phi?" in the documentation. - For uniformity across all KNL configurations, always have a NUMA node object even if the host is UMA. + Fix the detection of the memory-side cache: - Add the hwloc-dump-hwdata superuser utility to dump SMBIOS information into /var/run/hwloc/ as root during boot, and load this dumped information from the hwloc library at runtime. - See "Why do I need hwloc-dump-hwdata for caches on Intel Knights Landing Xeon Phi?" in the documentation. Thanks to Grzegorz Andrejczuk for the patches and for the help. * The x86 and linux backends may now be combined for discovering CPUs through x86 CPUID and memory from the Linux kernel. This is useful for working around buggy CPU information reported by Linux (for instance the AMD Bulldozer/Piledriver bug below). Combination is enabled by passing HWLOC_COMPONENTS=x86 in the environment. * Fix L3 cache sharing on AMD Opteron 63xx (Piledriver) and 62xx (Bulldozer) in the x86 backend. Thanks to many users who helped. * Fix the overzealous L3 cache sharing fix added to the x86 backend in 1.11.1 for AMD Opteron 61xx (Magny-Cours) processors. * The x86 backend may now add the info attribute Inclusive=0 or 1 to caches it discovers, or to caches discovered by other backends earlier. Thanks to Guillaume Beauchamp for the patch. * Fix the management on alloc_membind() allocation failures on AIX, HP-UX and OSF/Tru64. * Fix spurious failures to load with ENOMEM on AIX in case of Misc objects below PUs. * lstopo improvements in X11 and Windows graphical mode: + Add + - f 1 shortcuts to manually zoom-in, zoom-out, reset the scale, or fit the entire window. + Display all keyboard shortcuts in the console. * Debug messages may be disabled at runtime by passing HWLOC_DEBUG_VERBOSE=0 in the environment when --enable-debug was passed to configure. * Add a FAQ entry "What are these Group objects in my topology?".
2015-11-14Update hwloc to 1.11.1asau2-12/+8
pkgsrc changes: stop regenerating build system and drop build-time dependency on autotools. Version 1.11.1 -------------- * Detection fixes + Hardwire the topology of Fujitsu K-computer, FX10, FX100 servers to workaround buggy Linux kernels. Thanks to Takahiro Kawashima and Gilles Gouaillardet. + Fix L3 cache information on AMD Opteron 61xx Magny-Cours processors in the x86 backend. Thanks to Guillaume Beauchamp for the patch. + Detect block devices directly attached to PCI without a controller, for instance NVMe disks. Thanks to Barry M. Tannenbaum. + Add the PCISlot attribute to all PCI functions instead of only the first one. * Miscellaneous internal fixes + Ignore PCI bridges that could fail assertions by reporting buggy secondary-subordinate bus numbers Thanks to George Bosilca for reporting the issue. + Fix an overzealous assertion when inserting an intermediate Group object while Groups are totally ignored. + Fix a memory leak on Linux on AMD processors with dual-core compute units. Thanks to Bob Benner. + Fix a memory leak on failure to load a xml diff file. + Fix some segfaults when inputting an invalid synthetic description. + Fix a segfault when plugins fail to find core symbols. Thanks to Guy Streeter. * Many fixes and improvements in the Windows backend: + Fix the discovery of more than 32 processors and multiple processor groups. Thanks to Barry M. Tannenbaum for the help. + Add thread binding set support in case of multiple process groups. + Add thread binding get support. + Add get_last_cpu_location() support for the current thread. + Disable the unsupported process binding in case of multiple processor groups. + Fix/update the Visual Studio support under contrib/windows. Thanks to Eloi Gaudry for the help. * Tools fixes + Fix a segfault when displaying logical indexes in the graphical lstopo. Thanks to Guillaume Mercier for reporting the issue. + Fix lstopo linking with X11 libraries, for instance on Mac OS X. Thanks to Scott Atchley and Pierre Ramet for reporting the issue. + hwloc-annotate, hwloc-diff and hwloc-patch do not drop unavailable resources from the output anymore and those may be annotated as well. + Command-line tools may now import XML from the standard input with -i -.xml + Add missing documentation for the hwloc-info --no-icaches option.
2015-11-02Add SHA512 digests for distfiles for parallel categoryagc1-1/+2
Existing SHA1 digests verified, all found to be the same on the machine holding the existing distfiles (morden). Existing SHA1 digests retained for now as an audit trail.
2015-08-18Bump all packages that depend on curses.bui* or terminfo.bui* since theywiz1-1/+2
might incur ncurses dependencies on some platforms, and ncurses just bumped its shlib. Some packages were bumped twice now, sorry for that.
2015-08-15Update to hwloc 1.11.1asau3-31/+56
From Benedek Gergely on pkgsrc-users. Version 1.11.1 -------------- * hwloc-annotate does not drop unavailable resources from the output anymore and those may be annotated as well. * Fix an overzealous assertion when intermediate Group object while Groups are totally ignored. * Fix a memory leak on failure to load a xml diff file. * Fix some segfaults when inputting an invalid synthetic description. Version 1.11.0 -------------- * API + Socket objects are renamed into Package to align with the terminology used by processor vendors. The old HWLOC_OBJ_SOCKET type and "Socket" name are still supported for backward compatibility. + HWLOC_OBJ_NODE is replaced with HWLOC_OBJ_NUMANODE for clarification. HWLOC_OBJ_NODE is still supported for backward compatibility. "Node" and "NUMANode" strings are supported as in earlier releases. * Detection improvements + Add support for Intel Knights Landing Xeon Phi. Thanks to Grzegorz Andrejczuk and Lukasz Anaczkowski. + Add Vendor, Model, Revision, SerialNumber, Type and LinuxDeviceID info attributes to Block OS devices on Linux. Thanks to Vineet Pedaballe for the help. - Add --disable-libudev to avoid dependency on the libudev library. + Add "MemoryDevice" Misc objects with information about DIMMs, on Linux when privileged and when I/O is enabled. Thanks to Vineet Pedaballe for the help. + Add a PCISlot attribute to PCI devices on Linux when supported to identify the physical PCI slot where the board is plugged. + Add CPUStepping info attribute on x86 processors, thanks to Thomas Röhl for the suggestion. + Ignore the device-tree on non-Power architectures to avoid buggy detection on ARM. Thanks to Orion Poplawski for reporting the issue. + Work-around buggy Xeon E5v3 BIOS reporting invalid PCI-NUMA affinity for the PCI links on the second processor. + Add support for CUDA compute capability 5.x, thanks Benjamin Worpitz. + Many fixes to the x86 backend - Add L1i and fix L2/L3 type on old AMD processors without topoext support. - Fix Intel CPU family and model numbers when basic family isn't 6 or 15. - Fix package IDs on recent AMD processors. - Fix misc issues due to incomplete APIC IDs on x2APIC processors. - Avoid buggy discovery on old SGI Altix UVs with non-unique APIC IDs. + Gather total machine memory on NetBSD. * Tools + lstopo - Collapse identical PCI devices unless --no-collapse is given. This avoids gigantic outputs when a PCI device contains dozens of identical virtual functions. - The ASCII art output is now called "ascii", for instance in "lstopo -.ascii". The former "txt" extension is retained for backward compatibility. - Automatically scales graphical box width to the inner text in Cairo, ASCII and Windows outputs. - Add --rect to lstopo to force rectangular layout even for NUMA nodes. - Add --restrict-flags to configure the behavior of --restrict. - Objects may have a "Type" info attribute to specify a better type name and display it in lstopo. - Really export all verbose information to the given output file. + hwloc-annotate - May now operate on all types of objects, including I/O. - May now insert Misc objects in the topology. - Do not drop instruction caches and I/O devices from the output anymore. + Fix lstopo path in hwloc-gather-topology after install. * Misc + Fix hwloc/cudart.h for machines with multiple PCI domains, thanks to Imre Kerr for reporting the problem. + Fix PCI Bridge-specific depth attribute. + Fix hwloc_bitmap_intersect() for two infinite bitmaps. + Fix some corner cases in the building of levels on large NUMA machines with non-uniform NUMA groups and I/Os. + Improve the performance of object insertion by cpuset for large topologies. + Prefix verbose XML import errors with the source name. + Improve pkg-config checks and error messages. + Fix excluding after a component with an argument in the HWLOC_COMPONENTS environment variable. * Documentation + Fix the recommended way in documentation and examples to allocate memory on some node, it should use HWLOC_MEMBIND_BIND. Thanks to Nicolas Bouzat for reporting the issue. + Add a "Miscellaneous objects" section in the documentation. + Add a FAQ entry "What happens to my topology if I disable symmetric multithreading, hyper-threading, etc. ?" to the documentation. Version 1.10.1 -------------- * Actually remove disallowed NUMA nodes from nodesets when the whole-system flag isn't enabled. * Fix the gathering of PCI domains. Thanks to James Custer for reporting the issue and providing a patch. * Fix the merging of identical parent and child in presence of Misc objects. Thanks to Dave Love for reporting the issue. * Fix some misordering of children when merging with ignore_keep_structure() in partially allowed topologies. * Fix an overzealous assertion in the debug code when running on a single-PU host with I/O. Thanks to Thomas Van Doren for reporting the issue. * Don't forget to setup NUMA node object nodesets in x86 backend (for BSDs) and OSF/Tru64 backend. * Fix cpuid-x86 build error with gcc -O3 on x86-32. Thanks to Thomas Van Doren for reporting the issue. * Fix support for future very large caches in the x86 backend. * Fix vendor/device names for SR-IOV PCI devices on Linux. * Fix an unlikely crash in case of buggy hierarchical distance matrix. * Fix PU os_index on some AIX releases. Thanks to Hendryk Bockelmann and Erik Schnetter for helping debugging. * Fix hwloc_bitmap_isincluded() in case of infinite sets. * Change hwloc-ls.desktop into a lstopo.desktop and only install it if lstopo is built with Cairo/X11 support. It cannot work with a non-graphical lstopo or hwloc-ls. * Add support for the renaming of Socket into Package in future releases. * Add support for the replacement of HWLOC_OBJ_NODE with HWLOC_OBJ_NUMANODE in future releases. * Clarify the documentation of distance matrices in hwloc.h and in the manpage of the hwloc-distances. Thanks to Dave Love for the suggestion. * Improve some error messages by displaying more information about the hwloc library in use. * Document how to deal with the ABI break when upgrading to the upcoming 2.0 See "How do I handle ABI breaks and API upgrades ?" in the FAQ. Version 1.10.0 -------------- * API + Add hwloc_topology_export_synthetic() to export a topology to a synthetic string without using lstopo. See the Synthetic topologies section in the documentation. + Add hwloc_topology_set/get_userdata() to let the application save a private pointer in the topology whenever it needs a way to find its own object corresponding to a topology. + Add hwloc_get_numanode_obj_by_os_index() and document that this function as well as hwloc_get_pu_obj_by_os_index() are good at converting nodesets and cpusets into objects. + hwloc_distrib() does not ignore any objects anymore when there are too many of them. They get merged with others instead. Thanks to Tim Creech for reporting the issue. * Tools + hwloc-bind --get <command-line> now executes the command after displaying the binding instead of ignoring the command entirely. Thanks to John Donners for the suggestion. + Clarify that memory sizes shown in lstopo are local by default unless specified (total memory added in the root object). * Synthetic topologies + Synthetic topology descriptions may now specify attributes such as memory sizes and OS indexes. See the Synthetic topologies section in the documentation. + lstopo now exports in this fully-detailed format by default. The new option --export-synthetic-flags may be used to revert back the old format. * Documentation + Add the doc/examples/ subdirectory with several real-life examples, including the already existing hwloc-hello.C for basics. Thanks to Rob Aulwes for the suggestion. + Improve the documentation of CPU and memory binding in the API. + Add a FAQ entry about operating system errors, especially on AMD platforms with buggy cache information. + Add a FAQ entry about loading many topologies in a single program. * Misc + Work around buggy Linux kernels reporting 2 sockets instead 1 socket with 2 NUMA nodes for each Xeon E5 v3 (Haswell) processor. + pciutils/libpci support is now removed since libpciaccess works well and there's also a Linux-specific PCI backend. For the record, pciutils was GPL and therefore disabled by default since v1.6.2. + Add --disable-cpuid configure flag to work around buggy processor simulators reporting invalid CPUID information. Thanks for Andrew Friedley for reporting the issue. + Fix a racy use of libltdl when manipulating multiple topologies in different threads. Thanks to Andra Hugo for reporting the issue and testing patches. + Fix some build failures in private/misc.h. Thanks to Pavan Balaji and Ralph Castain for the reports. + Fix failures to detect X11/Xutil.h on some Solaris platforms. Thanks to Siegmar Gross for reporting the failure. + The plugin ABI has changed, this release will not load plugins built against previous hwloc releases. Version 1.9.1 ------------- * Fix a crash when the PCI locality is invalid. Attach to the root object instead. Thanks to Nicolas Denoyelle for reporting the issue. * Fix -f in lstopo manpage. Thanks to Jirka Hladky for reporting the issue. * Fix hwloc_obj_type_sscanf() and others when strncasecmp() is not properly available. Thanks to Nick Papior Andersen for reporting the problem. * Mark Linux file descriptors as close-on-exec to avoid leaks on exec. * Fix some minor memory leaks. Version 1.9.0 ------------- * API + Add hwloc_obj_type_sscanf() to extend hwloc_obj_type_of_string() with type-specific attributes such as Cache/Group depth and Cache type. hwloc_obj_type_of_string() is moved to hwloc/deprecated.h. + Add hwloc_linux_get_tid_last_cpu_location() for retrieving the last CPU where a Linux thread given by TID ran. + Add hwloc_distrib() to extend the old hwloc_distribute[v]() functions. hwloc_distribute[v]() is moved to hwloc/deprecated.h. + Don't mix total and local memory when displaying verbose object attributes with hwloc_obj_attr_snprintf() or in lstopo. * Backends + Add CPUVendor, CPUModelNumber and CPUFamilyNumber info attributes for x86, ia64 and Xeon Phi sockets on Linux, to extend the x86-specific support added in v1.8.1. Requested by Ralph Castain. + Add many CPU- and Platform-related info attributes on ARM and POWER platforms, in the Machine and Socket objects. + Add CUDA info attributes describing the number of multiprocessors and cores and the size of the global, shared and L2 cache memories in CUDA OS devices. + Add OpenCL info attributes describing the number of compute units and the global memory size in OpenCL OS devices. + The synthetic backend now accepts extended types such as L2Cache, L1i or Group3. lstopo also exports synthetic strings using these extended types. * Tools + lstopo - Do not overwrite output files by default anymore. Pass -f or --force to enforce it. - Display OpenCL, CUDA and Xeon Phi numbers of cores and memory sizes in the graphical output. - Fix export to stdout when specifying a Cairo-based output type with --of. + hwloc-ps - Add -e or --get-last-cpu-location to report where processes/threads run instead of where they are bound. - Report locations as likely-more-useful objects such as Cores or Sockets instead of Caches when possible. + hwloc-bind - Fix failure on Windows when not using --pid. - Add -e as a synonym to --get-last-cpu-location. + hwloc-distrib - Add --reverse to distribute using last objects first and singlify into last bits first. Thanks to Jirka Hladky for the suggestion. + hwloc-info - Report unified caches when looking for data or instruction cache ancestor objects. * Misc + Add experimental Visual Studio support under contrib/windows. Thanks to Eloi Gaudry for his help and for providing the first draft. + Fix some overzealous assertions and warnings about the ordering of objects on a level with respect to cpusets. The ordering is only guaranteed for complete cpusets (based on the first bit in sets). + Fix some memory leaks when importing xml diffs and when exporting a "too complex" entry. Version 1.8.1 ------------- * Fix the cpuid code on Windows 64bits so that the x86 backend gets enabled as expected and can populate CPU information. Thanks to Robin Scher for reporting the problem. * Add CPUVendor/CPUModelNumber/CPUFamilyNumber attributes when running on x86 architecture. Thanks to Ralph Castain for the suggestion. * Work around buggy BIOS reporting duplicate NUMA nodes on Linux. Thanks to Jeff Becker for reporting the problem and testing the patch. * Add a name to the lstopo graphical window. Thanks to Michael Prokop for reporting the issue. Version 1.8.0 ------------- * New components + Add the "linuxpci" component that always works on Linux even when libpciaccess and libpci aren't available (and even with a modified file-system root). By default the old "pci" component runs first because "linuxpci" lacks device names (obj->name is always NULL). * API + Add the topology difference API in hwloc/diff.h for manipulating many similar topologies. + Add hwloc_topology_dup() for duplicating an entire topology. + hwloc.h and hwloc/helper.h have been reorganized to clarify the documentation sections. The actual inline code has moved out of hwloc.h into the new hwloc/inlines.h. + Deprecated functions are now in hwloc/deprecated.h, and not in the official documentation anymore. * Tools + Add hwloc-diff and hwloc-patch tools together with the new diff API. + Add hwloc-compress-dir to (de)compress an entire directory of XML files using hwloc-diff and hwloc-patch. + Object colors in the graphical output of lstopo may be changed by adding a "lstopoStyle" info attribute. See CUSTOM COLORS in the lstopo(1) manpage for details. Thanks to Jirka Hladky for discussing the idea. + hwloc-gather-topology may now gather I/O-related files on Linux when --io is given. Only the linuxpci component supports discovering I/O objects from these extended tarballs. + hwloc-annotate now supports --ri to remove/replace info attributes with a given name. + hwloc-info supports "root" and "all" special locations for dumping information about the root object. + lstopo now supports --append-legend to append custom lines of text to the legend in the graphical output. Thanks to Jirka Hladky for discussing the idea. + hwloc-calc and friends have a more robust parsing of locations given on the command-line and they report useful error messages about it. + Add --whole-system to hwloc-bind, hwloc-calc, hwloc-distances and hwloc-distrib, and add --restrict to hwloc-bind for uniformity among tools. * Misc + Calling hwloc_topology_load() or hwloc_topology_set_*() on an already loaded topology now returns an error (deprecated since release 1.6.1). + Fix the initialisation of cpusets and nodesets in Group objects added when inserting PCI hostbridges. + Never merge Group objects that were added explicitly by the user with hwloc_custom_insert_group_object_by_parent(). + Add a sanity check during dynamic plugin loading to prevent some crashes when hwloc is dynamically loaded by another plugin mechanisms. + Add --with-hwloc-plugins-path to specify the install/load directories of plugins. + Add the MICSerialNumber info attribute to the root object when running hwloc inside a Xeon Phi to match the same attribute in the MIC OS device when running in the host. Version 1.7.2 ------------- * Do not create invalid block OS devices on very old Linux kernel such as RHEL4 2.6.9. * Fix PCI subvendor/device IDs. * Fix the management of Misc objects inserted by parent. Thanks to Jirka Hladky for reporting the problem. * Add a Port<n>State into attribute to OpenFabrics OS devices. * Add a MICSerialNumber info attribute to Xeon PHI/MIC OS devices. * Improve verbose error messages when failing to load from XML.
2014-05-05Recursive revbump from x11/pixmanryoon1-1/+2
Fix PR pkg/48777
2013-07-16Update to hwloc-1.7.1manu2-8/+8
Changes since 1.7 from NEWS file: Version 1.7.1 ------------- * Fix a failed assertion in the distance grouping code when loading a XML file that already contains some groups. Thanks to Laercio Lima Pilla for reporting the problem. * Remove unexpected Group objects when loading XML topologies with I/O objects and NUMA distances. Thanks to Elena Elkina for reporting the problem and testing patches. * Fix PCI link speed discovery when using libpciaccess. * Fix invalid libpciaccess virtual function device/vendor IDs when using SR-IOV PCI devices on Linux. * Fix GL component build with old NVCtrl releases. Thanks to Jirka Hladky for reporting the problem. * Fix embedding breakage caused by libltdl. Thanks to Pavan Balaji for reporting the problem. * Always use the system-wide libltdl instead of shipping one inside hwloc. * Document issues when enabling plugins while embedding hwloc in another project, in the documentation section Embedding hwloc in Other Software. * Add a FAQ entry "How to get useful topology information on NetBSD?" in the documentation. * Somes fixes in the renaming code for embedding. * Miscellaneous minor build fixes.
2013-06-04Try to fix the fallout caused by the fix for PR pkg/47882. Part 3:tron1-2/+2
Recursively bump package revisions again after the "freetype2" and "fontconfig" handling was fixed.
2013-06-03Bump freetype2 and fontconfig dependencies to current pkgsrc versions,wiz1-1/+2
to address issues with NetBSD-6(and earlier)'s fontconfig not being new enough for pango. While doing that, also bump freetype2 dependency to current pkgsrc version. Suggested by tron in PR 47882
2013-04-15Version 1.7.0adam9-267/+51
------------- * New operating system backends + Add BlueGene/Q compute node kernel (CNK) support. See the FAQ in the documentation for details. Thanks to Jeff Hammond, Christopher Samuel and Erik Schnetter for their help. + Add NetBSD support, thanks to Aleksej Saushev. * New I/O device discovery + Add co-processor OS devices such as "mic0" for Intel Xeon Phi (MIC) on Linux. Thanks to Jerome Vienne for helping. + Add co-processor OS devices such as "cuda0" for NVIDIA CUDA-capable GPUs. + Add co-processor OS devices such as "opencl0d0" for OpenCL GPU devices on the AMD OpenCL implementation. + Add GPU OS devices such as ":0.0" for NVIDIA X11 displays. + Add GPU OS devices such as "nvml0" for NVIDIA GPUs. Thanks to Marwan Abdellah and Stefan Eilemann for helping. These new OS devices have some string info attributes such as CoProcType, GPUModel, etc. to better identify them. See the I/O Devices and Attributes documentation sections for details. * New components + Add the "opencl", "cuda", "nvml" and "gl" components for I/O device discovery. + "nvml" also improves the discovery of NVIDIA GPU PCIe link speed. All of these new components may be built as plugins. They may also be disabled entirely by passing --disable-opencl/cuda/nvml/gl to configure. See the I/O Devices, Components and Plugins, and FAQ documentation sections for details. * API + Add hwloc_topology_get_flags(). + Add hwloc/plugins.h for building external plugins. See the Adding new discovery components and plugins section. * Interoperability + Add hwloc/opencl.h, hwloc/nvml.h, hwloc/gl.h and hwloc/intel-mic.h to retrieve the locality of OS devices that correspond to AMD OpenCL GPU devices or indexes, to NVML devices or indexes, to NVIDIA X11 displays, or to Intel Xeon Phi (MIC) device indexes. + Add new helpers in hwloc/cuda.h and hwloc/cudart.h to convert between CUDA devices or indexes and hwloc OS devices. + Add hwloc_ibv_get_device_osdev() and clarify the requirements of the OpenFabrics Verbs helpers in hwloc/openfabrics-verbs.h. * Tools + hwloc-info is not only a synonym of lstopo -s anymore, it also dumps information about objects given on the command-line. * Documentation + Add a section "Existing components and plugins". + Add a list of common OS devices in section "Software devices". + Add a new FAQ entry "Why is lstopo slow?" about lstopo slowness issues because of GPUs. + Clarify the documentation of inline helpers in hwloc/myriexpress.h and hwloc/openfabrics-verbs.h. * Misc + Improve cache detection on AIX. + The HWLOC_COMPONENTS variable now excludes the components whose names are prefixed with '-'. + lstopo --ignore PU now works when displaying the topology in graphical and textual mode (not when exporting to XML). + The `libpci' component is now called `pci' but the old name is still accepted in the HWLOC_COMPONENTS variable for backward compatibility.
2013-03-20Register Solaris-specific file. Caught by bulk build at Joyent.asau1-0/+2
2013-03-19Add PLIST.Linux.sbd2-2/+8
Bump PKGREVISION
2013-02-16Recursive bump for png-1.6.wiz1-1/+2
2012-10-26Avoid conflicting implicit prototype.joerg2-5/+6
2012-10-24Reexport libxml2 from hwloc.asau1-1/+2
Reexport hwloc from openmpi. This should fix builds with MPI_TYPE=openmpi.
2012-10-17Cleanup while here.asau1-2/+2
2012-10-17Update to hwloc 1.5asau3-17/+26
v1.5 is a major new release series. It includes many new features and changes over the v1.4.x series. The most noticeable changes are the addition of the lstopo-no-graphics program (which does require any heavy external library such as Cairo) and the discovery of instruction caches. There are also many small improvements to all backends, and some deprecated features have been removed. Version 1.5.0 ------------- * Backends + Do not limit the number of processors to 1024 on Solaris anymore. + Gather total machine memory on FreeBSD. + XML topology files do not depend on the locale anymore. Float numbers such as NUMA distances or PCI link speeds now always use a dot as a decimal separator. + Add instruction caches detection on Linux, AIX, Windows and Darwin. + Add get_last_cpu_location() support for the current thread on AIX. + Support binding on AIX when threads or processes were bound with bindprocessor(). Thanks to Hendryk Bockelmann for reporting the issue and testing patches, and to Farid Parpia for explaining the binding interfaces. + Improve AMD topology detection in the x86 backend (for FreeBSD) using the topoext feature. * API + Increase HWLOC_API_VERSION to 0x00010500 so that API changes may be detected at build-time. + Add a cache type attribute describind Data, Instruction and Unified caches. Caches with different types but same depth (for instance L1d and L1i) are placed on different levels. + Add hwloc_get_cache_type_depth() to retrieve the hwloc level depth of of the given cache depth and type, for instance L1i or L2. It helps disambiguating the case where hwloc_get_type_depth() returns HWLOC_TYPE_DEPTH_MULTIPLE. + Instruction caches are ignored unless HWLOC_TOPOLOGY_FLAG_ICACHES is passed to hwloc_topology_set_flags() before load. + Add hwloc_ibv_get_device_osdev_by_name() OpenFabrics helper in openfabrics-verbs.h to find the hwloc OS device object corresponding to an OpenFabrics device. * Tools + Add lstopo-no-graphics, a lstopo built without graphical support to avoid dependencies on external libraries such as Cairo and X11. When supported, graphical outputs are only available in the original lstopo program. - Packagers splitting lstopo and lstopo-no-graphics into different packages are advised to use the alternatives system so that lstopo points to the best available binary. + Instruction caches are enabled in lstopo by default. User --no-icaches to disable them. + Add -t/--threads to show threads in hwloc-ps. * Removal of obsolete components + Remove the old cpuset interface (hwloc/cpuset.h) which is deprecated and superseded by the bitmap API (hwloc/bitmap.h) since v1.1. hwloc_cpuset and nodeset types are still defined, but all hwloc_cpuset_* compatibility wrappers are now gone. + Remove Linux libnuma conversion helpers for the deprecated and broken nodemask_t interface. + Remove support for "Proc" type name, it was superseded by "PU" in v1.0. + Remove hwloc-mask symlinks, it was replaced by hwloc-calc in v1.0. * Misc + Fix PCIe 3.0 link speed computation. + Non-printable characters are dropped from strings during XML export. + Fix importing of escaped characters with the minimalistic XML backend. + Assert hwloc_is_thissystem() in several I/O related helpers. + Fix some memory leaks in the x86 backend for FreeBSD. + Minor fixes to ease native builds on Windows. + Limit the number of retries when operating on all threads within a process on Linux if the list of threads is heavily getting modified.
2012-10-02Mass recursive bump after the dependence fix of the "cairo" packagetron1-2/+2
requested by Thomas Klausner.
2012-09-11"user-destdir" is default these daysasau1-3/+1
2012-09-07Revbump after updating graphics/cairoadam1-2/+2
2012-06-14Recursive PKGREVISION bump for libxml2 buildlink addition.sbd1-1/+2
2012-05-10pkglint cleanup while here.wiz1-4/+4
2012-05-10Fix build with automake-1.12.wiz2-1/+16
2012-03-21Import Portable Hardware Locality (hwloc) version 1.4 as parallel/hwloc.asau10-0/+648
The Portable Hardware Locality (hwloc) software package provides a portable abstraction (across OS, versions, architectures, ...) of the hierarchical topology of modern architectures, including NUMA memory nodes, sockets, shared caches, cores and simultaneous multithreading. It also gathers various system attributes such as cache and memory information as well as the locality of I/O devices such as network interfaces, InfiniBand HCAs or GPUs. It primarily aims at helping applications with gathering information about modern computing hardware so as to exploit it accordingly and efficiently.