Boost logo

Boost Interest :

Subject: Re: [Boost-cmake] ctest system information on mac
From: Michael Jackson (mike.jackson_at_[hidden])
Date: 2009-05-19 11:22:15


On May 19, 2009, at 11:00 AM, Julien Jomier wrote:

> Bill Hoffman wrote:
>>>>> Bill,
>>>>> I am tearing apart the ParseSysCtl() method at the moment. CMake
>>>>> does not have to Fork a process to get the sysctl values, you
>>>>> can call
>>>>> them directly using sysctlbyname(..) method. I am currently
>>>>> doing this
>>>>> for all the values. I have a few G4 boxes, a Core 2 Duo MacBook
>>>>> Pro
>>>>> and a new Xeon to test with. I am going to try and find a G5 to
>>>>> get
>>>>> some sysctl logs from so I can try an tell the difference
>>>>> between the
>>>>> G4 boxes and the G5 boxes.
>>>>>
>>>>> I just made any value having to do with memory a long long
>>>>> unsigned
>>>> I don't see why. In GB we are not going to have long long worth
>>>> of them,
>>>> and it won't work on a 32 bit machine will it?
>>>
>>> On my OS X 10.5.7 32 bit version I can ask for the total amount of
>>> ram
>>> and get back a 64 bit number just fine. Same deal on my Xeon box at
>>> work. As long as the pointer that is being passed to sysctlbyname is
>>> the address to a 64 bit value it seems to work just fine. Of
>>> course I
>>> am only thinking of OS X and forgetting about the rest of the world
>>> ;-). I'll change the values back to longs and do the math to report
>>> the memory results in GB which, as you mentioned, negates the need
>>> for
>>> the long long variables.
>>>
>>> Also what exactly is meant by the following:
>>>
>>> GetLogicalProcessorsPerPhysical
>>> GetNumberOfLogicalCPU
>>> GetNumberOfPhysicalCPU
>>>
>>> Could you tell me what the results of those would be for the
>>> following
>>> conditions:
>>>
>> I think it means this:
>>> Quad Core, NON Hyperthreaded CPU.
>> GetLogicalProcessorsPerPhysical = 1
>> GetNumberOfLogicalCPU = 4
>> GetNumberOfPhysicalCPU = 4
>>> Quad Core, HyperThreaded CPU.
>> GetLogicalProcessorsPerPhysical = 2
>> GetNumberOfLogicalCPU = 8
>> GetNumberOfPhysicalCPU = 4
>>>
>>> On OS X I can get the 'number of packages" and cores_per_package,
>>> and
>>> some other stuff but I am not sure those fit correctly into the
>>> values
>>> from above.
>> Take a guess...
>> Julien, you did the original process information stuff, do you have
>> anything to add to this?
>
> Yes, that's exactly it. I think we need to modify the wording and
> change CDash to report these numbers in a better way. Something
> like: 'total number of cores' and 'total number of logical CPUs'. We
> don't really need to display the ratio.
>
> There is a bug report on the CDash bug tracker related to MacOS
> system information. I'll see what I can do when we rework this part
> of CTest/CDash.
>
> Julien

Ok. Some hacking around and this is the output that I am getting on my
Xeon Workstation now. And also there is still some discussion on what
exactly is meant by "Is64Bits". Julien, can you comment on that?

GetOSName: Darwin
GetHostname: Ferb.local
GetOSRelease: 9.7.0
GetOSVersion: Darwin Kernel Version 9.7.0: Tue Mar 31 22:52:17 PDT
2009; root:xnu-1228.12.14~1/RELEASE_I386
GetOSPlatform: i386
GetVendorString: GenuineIntel
GetVendorID: Intel Corporation
GetTypeID: 0
GetFamilyID: 6
GetModelID: 26
GetExtendedProcessorName: Intel(R) Xeon(R) CPU X5550 @
2.67GHz
GetProcessorSerialNumber:
GetProcessorCacheSize: 32768 KB
GetLogicalProcessorsPerPhysical: 8
GetProcessorClockFrequency: 2659 MHz
Is64Bits: 0
GetNumberOfLogicalCPU: 16
GetNumberOfPhysicalCPU: 8
DoesCPUSupportCPUID: 0
GetProcessorAPICID: 0
GetTotalVirtualMemory: 268 MB
GetAvailableVirtualMemory: 83 MB
GetTotalPhysicalMemory: 6442 MB
GetAvailablePhysicalMemory: 4617 MB

Here is from an ancient 533MHz PPC G4 machine:
GetOSName: Darwin
GetHostname: Echo1.local
GetOSRelease: 8.11.0
GetOSVersion: Darwin Kernel Version 8.11.0: Wed Oct 10 18:26:00 PDT
2007; root:xnu-792.24.17~1/RELEASE_PPC
GetOSPlatform: Power Macintosh
GetVendorString: IBM
GetVendorID: IBM
GetTypeID: 0
GetFamilyID: 18
GetModelID: 10
GetExtendedProcessorName:
GetProcessorSerialNumber:
GetProcessorCacheSize: 32768 KB
GetLogicalProcessorsPerPhysical: 1
GetProcessorClockFrequency: 533 MHz
Is64Bits: 0
GetNumberOfLogicalCPU: 1
GetNumberOfPhysicalCPU: 1
DoesCPUSupportCPUID: 0
GetProcessorAPICID: 0
GetTotalVirtualMemory: 67 MB
GetAvailableVirtualMemory: 56 MB
GetTotalPhysicalMemory: 1207 MB
GetAvailablePhysicalMemory: 653 MB

I would like to find someone with a G5 to test this on..

Here is a MacBook Pro (Mid 2008 Release):
GetOSName: Darwin
GetHostname: Shepard.local
GetOSRelease: 9.6.0
GetOSVersion: Darwin Kernel Version 9.6.0: Mon Nov 24 17:37:00 PST
2008; root:xnu-1228.9.59~1/RELEASE_I386
GetOSPlatform: i386
GetVendorString: GenuineIntel
GetVendorID: Intel Corporation
GetTypeID: 0
GetFamilyID: 6
GetModelID: 23
GetExtendedProcessorName: Intel(R) Core(TM)2 Duo CPU T9500 @
2.60GHz
GetProcessorSerialNumber:
GetProcessorCacheSize: 32768 KB
GetLogicalProcessorsPerPhysical: 2
GetProcessorClockFrequency: 2600 MHz
Is64Bits: 0
GetNumberOfLogicalCPU: 2
GetNumberOfPhysicalCPU: 2
DoesCPUSupportCPUID: 0
GetProcessorAPICID: 0
GetTotalVirtualMemory: 536 MB
GetAvailableVirtualMemory: 100 MB
GetTotalPhysicalMemory: 2147 MB
GetAvailablePhysicalMemory: 1391 MB

Mike Jackson


Boost-cmake list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk