Open MPI logo

Hardware Locality Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Hardware Locality Development mailing list

Subject: Re: [hwloc-devel] Compiling hwloc 1.7 with NV support
From: Brice Goglin (Brice.Goglin_at_[hidden])
Date: 2013-04-19 19:35:11


Le 20/04/2013 01:11, Brice Goglin a écrit :
> Le 20/04/2013 00:56, Jiri Hladky a écrit :
>> topology-gl.c: In function 'hwloc_gl_query_devices':
>> topology-gl.c:91:41: error: 'NV_CTRL_PCI_DOMAIN' undeclared (first use
>> in this function)
>> topology-gl.c:91:41: note: each undeclared identifier is reported only
>> once for each function it appears in
>> make[2]: *** [topology-gl.lo] Error 1
>> make[2]: Leaving directory `/tmp/hwloc-1.7/src'
>> make[1]: *** [all-recursive] Error 1
>> make[1]: Leaving directory `/tmp/hwloc-1.7/src'
>> make: *** [all-recursive] Error 1
>>
>> Indeed, there is no NV_CTRL_PCI_DOMAIN MACRO defined in NVCtrl header
>> files:
> Old CUDA versions didn't have a similar domain macro either, maybe
> NVIDIA did the same mistake with old nvml.

I meant nvctrl, not nvml.

Indeed, it was added in release 190.18.5
This patch should help.
Brice

Index: src/topology-gl.c
===================================================================
--- src/topology-gl.c (révision 5551)
+++ src/topology-gl.c (copie de travail)
@@ -85,12 +85,16 @@
       gpu_number = ptr_binary_data[1];
       free(ptr_binary_data);
 
+#ifdef NV_CTRL_PCI_DOMAIN
       /* Gets the ID's of the GPU defined by gpu_number
        * For further details, see the <NVCtrl/NVCtrlLib.h> */
       err = XNVCTRLQueryTargetAttribute(display, NV_CTRL_TARGET_TYPE_GPU, gpu_number, 0,
                                         NV_CTRL_PCI_DOMAIN, &nv_ctrl_pci_domain);
       if (!err)
         continue;
+#else
+ nv_ctrl_pci_domain = 0;
+#endif
 
       err = XNVCTRLQueryTargetAttribute(display, NV_CTRL_TARGET_TYPE_GPU, gpu_number, 0,
                                         NV_CTRL_PCI_BUS, &nv_ctrl_pci_bus);