Open MPI logo

Hardware Locality Users' Mailing List Archives

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

Subject: Re: [hwloc-users] [windows] build from source using visual studio
From: Eloi Gaudry (Eloi.Gaudry_at_[hidden])
Date: 2014-01-08 06:02:30


Hi Brice,

Yes, I was making the wrong assumption on the value returned by hwloc.
Actually, I wasn't aware of the fact that this OS would not support counting socket and I wasn't checking for the returned value neither (I'm not too proud of that).
I corrected my code, thanks for your support, I appreciate.

Back to the main topic, would you consider delivering vcxproj again ?

Thanks,
Eloi

From: hwloc-users [mailto:hwloc-users-bounces_at_[hidden]] On Behalf Of Brice Goglin
Sent: mercredi 8 janvier 2014 11:49
To: hwloc-users_at_[hidden]
Subject: Re: [hwloc-users] [windows] build from source using visual studio

Hello,

Having 0 socket isn't an issue. There are normal cases where we find 0 socket: when there is no OS support for counting sockets. I agree that the windows code is supposed to find the number of sockets, but I want to make sure you are not making wrong assumptions on the hwloc output.

Brice

Le 07/01/2014 15:40, Eloi Gaudry a écrit :
Hi Brice,

The issue is related to detecting the number of sockets on the node running Windows x64 (Windows XP 64-bit).
The return value from hwloc_get_nbobjs_by_type( htop, HWLOC_OBJ_SOCKET ) is 0 (on a single socket node, where htop is the successfully loaded topology, with a right number of cores detected).

Regards,
Eloi

From: hwloc-users [mailto:hwloc-users-bounces_at_[hidden]] On Behalf Of Eloi Gaudry
Sent: mardi 7 janvier 2014 09:50
To: Hardware locality user list
Subject: Re: [hwloc-users] [windows] build from source using visual studio

Hi Brice,
Sorry, I shouldn't speak of missing symbols here.
You'll find below the cause of the issue (division by zero in libhwloc-5.dll).
Regards,
Eloi

00:00:00.609: GetProcAddress(0x0000000078D40000 [c:\windows\system32\KERNEL32.DLL], "GetLogicalProcessorInformation") called from "XXX\bin\LIBHWLOC-5.DLL" at address 0x0000000069E9348D and returned 0x0000000078DBA120 by thread 1.
00:00:00.609: GetProcAddress(0x0000000078D40000 [c:\windows\system32\KERNEL32.DLL], "GetNumaAvailableMemoryNode") called from " XXX \bin\LIBHWLOC-5.DLL" at address 0x0000000069E9349C and returned 0x0000000078DB4B00 by thread 1.
00:00:00.609: GetProcAddress(0x0000000078D40000 [c:\windows\system32\KERNEL32.DLL], "GetNumaAvailableMemoryNodeEx") called from " XXX \bin\LIBHWLOC-5.DLL" at address 0x0000000069E934AD and returned NULL by thread 1. Error: The specified procedure could not be found (127).
00:00:00.625: GetProcAddress(0x0000000078D40000 [c:\windows\system32\KERNEL32.DLL], "GetLogicalProcessorInformationEx") called from " XXX \bin\LIBHWLOC-5.DLL" at address 0x0000000069E934BE and returned NULL by thread 1. Error: The specified procedure could not be found (127).
00:00:00.625: LoadLibraryA("kernel32.dll") called from " XXX \bin\LIBHWLOC-5.DLL" at address 0x0000000069E940CD by thread 1.
00:00:00.625: LoadLibraryA("kernel32.dll") returned 0x0000000078D40000 by thread 1.
00:00:00.625: GetProcAddress(0x0000000078D40000 [c:\windows\system32\KERNEL32.DLL], "VirtualAllocExNuma") called from " XXX\bin\LIBHWLOC-5.DLL" at address 0x0000000069E940ED and returned NULL by thread 1. Error: The specified procedure could not be found (127).
00:00:00.625: GetProcAddress(0x0000000078D40000 [c:\windows\system32\KERNEL32.DLL], "VirtualFreeEx") called from " XXX \bin\LIBHWLOC-5.DLL" at address 0x0000000069E940FD and returned 0x0000000078D92CB0 by thread 1.
00:00:00.625: LoadLibraryA("kernel32.dll") called from " XXX\bin\LIBHWLOC-5.DLL" at address 0x0000000069E94130 by thread 1.
00:00:00.625: LoadLibraryA("kernel32.dll") returned 0x0000000078D40000 by thread 1.
00:00:00.625: GetProcAddress(0x0000000078D40000 [c:\windows\system32\KERNEL32.DLL], "K32QueryWorkingSetEx") called from " XXX\bin\LIBHWLOC-5.DLL" at address 0x0000000069E94145 and returned NULL by thread 1. Error: The specified procedure could not be found (127).
00:00:00.625: LoadLibraryA("psapi.dll") called from " XXX\bin\LIBHWLOC-5.DLL" at address 0x0000000069E94189 by thread 1.
00:00:00.625: LoadLibraryA("psapi.dll") returned 0x000007FF7E1B0000 by thread 1.
00:00:00.625: GetProcAddress(0x000007FF7E1B0000 [c:\windows\system32\PSAPI.DLL], "QueryWorkingSetEx") called from " XXX\bin\LIBHWLOC-5.DLL" at address 0x0000000069E9419E and returned 0x000007FF7E1B2E60 by thread 1.
00:00:00.625: First chance exception 0xC0000094 (Integer Divide by Zero) occurred in " XXX\bin\XXX.EXE" at address 0x0000000141CBF18D by thread 1.
00:00:00.640: Second chance exception 0xC0000094 (Integer Divide by Zero) occurred in " XXX\bin\XXX.EXE" at address 0x0000000141CBF18D by thread 1.
00:00:00.640: Exited " XXX\bin\XXX.EXE" (process 0x404) with code 128 (0x80) by thread 1.

From: hwloc-users [mailto:hwloc-users-bounces_at_[hidden]] On Behalf Of Brice Goglin
Sent: lundi 6 janvier 2014 21:10
To: Hardware locality user list
Subject: Re: [hwloc-users] [windows] build from source using visual studio

I've been working on adding msvc/cmake support last year (pushed some msvc-related fixes that are at least in v1.7 and later) but I stopped at some point because there was not much interest for it, and because it's not easy to do some automatic testing.

I am not sure what you mean with windows 6.x and x64, but last time I checked things seemed to work fine on Windows 7 64bits at least. What symbols are we using that are not not available anymore? When did they disappear?

Brice

Le 06/01/2014 20:59, Eloi Gaudry a écrit :
Hi,

I was wondering if you could add Visual Studio support to build hwloc from source.
Some open source projects (libpng for instance) for instance distribute a "contrib" folder in the sources where every exotic platforms get their makefiles-like available.
I begun to write vcxproj (for Visual Studio 2010 and 2012) a file ago, but I failed at creating the right autogenerated file used for configure.

I'm very much interested in building hwloc from source to tune what hwloc relies on to work. For instance, version-1.7.2 has a strong dependency on some symbols available on Windows 6.x only. This means that Windows x64 is not supported.

Regards,
Eloi

_______________________________________________

hwloc-users mailing list

hwloc-users_at_[hidden]<mailto:hwloc-users_at_[hidden]>

http://www.open-mpi.org/mailman/listinfo.cgi/hwloc-users

_______________________________________________

hwloc-users mailing list

hwloc-users_at_[hidden]<mailto:hwloc-users_at_[hidden]>

http://www.open-mpi.org/mailman/listinfo.cgi/hwloc-users