[Kimchi-devel] [PATCH] [Ginger-Base 0/1] Issue 728 - Processor Info in s390 architecture

Suresh Babu Angadi sureshab at linux.vnet.ibm.com
Wed Nov 25 03:47:39 UTC 2015



On 11/24/2015 11:12 PM, Aline Manera wrote:
>
>
> On 24/11/2015 06:26, Suresh Babu Angadi wrote:
>>
>>
>> On 11/24/2015 12:25 AM, Aline Manera wrote:
>>>
>>> Hi Suresh,
>>>
>>> We should keep the API consistent across platforms, that means if 
>>> the 'memory' parameter is a 'string' in one platform we should be a 
>>> string across all them.
>>>
>>> With this patch, we will have different results depend on arch, 
>>> which make hard on how to expect from the output.
>>>
>>> For x86, we will have: 'cpus' as a dict and 'memory' as a number
>>> {
>>> "cpus":{
>>> "offline":0,
>>> "online":4
>>> },
>>> "memory":7933902848
>>> }
>>>
>>> For s390x, we will have 'cpus' as 'memory' as a dict.
>>>
>>> {
>>> "cpus":{
>>> "shared":2,
>>> "offline":2,
>>> "dedicated":0,
>>> "online":2
>>> },
>>> "memory":{
>>> "offline":2147483648,
>>> "online":2147483648
>>> },
>>> "virtualization":{
>>> "lpar_name":"CSTLIN1",
>>> "hypervisor":"PR/SM",
>>> "lpar_number":55,
>>> "hypervisor_vendor":"IBM"
>>> }
>>> }
>>>
>>> And for ppc, we will have 'cpus' and 'memory' as a number.
>>> {
>>>   "cpus":<cpu count>,
>>> "memory":<memory>
>>> }
>>>
>>> My suggestion is to user dict for 'memory' and 'cpus' for all both 
>>> platforms.
>>>
>>> *For 'memory':*
>>>
>>> memory: {online: ..., offline:...}
>>>
>>> By 'online' memory, do you mean the memory current in the host? If 
>>> so, we can use those 2 values for all the platforms and assume to 
>>> total memory as online and 0 (zero) for offline memory for x86 and ppc.
>> Hi Aline,
>> Yes, I agree with your suggestion. Only s390x will have online and 
>> offline memory, for x86 and ppc - it is total memory in host, will 
>> keep offline memory as zero for x86 and ppc.
>>>
>>> *For 'cpus':*
>>>
>>> cpus: {online: ..., offline: ..., shared:..., dedicated:...}
>>>
>>> shared and dedicated only make sense for s390x, but online and 
>>> offline make sense for all the platforms so we can use them overall.
>>>
>>> What do you think about it?
>> Agreed. I am currently using lscpu o/p to fetch total cpus and 
>> difference of total cpus and online cpus(fetched using psutil) will 
>> be taken as offline cpus.
>> I searched in google for sample lscpu o/p in ppc, it has CPU(s) field 
>> in lscpu which is the total cpu count. Please let me know if it 
>> doesn't provide this information in lscpu, otherwise we are good here.
>
> I've just confirmed and lscpu also returns the CPU(s) on PPC.
Thanks Aline for the confirmation. I have sent V2 patch.
>
>> ===sample lscpu o/p of linux on ppc====
>> CPU(s):                16
>> On-line CPU(s) list:   0-15
>> Thread(s) per core:    4
>> Core(s) per socket:    1
>> Socket(s):             4
>> NUMA node(s):          1
>> Model:                 IBM,8233-E8B
>> L1d cache:             32K
>> L1i cache:             32K
>> NUMA node0 CPU(s):     0-15
>> ........
>> .......
>>>
>>> Regards,
>>> Aline Manera
>>>
>>> On 23/11/2015 10:03, sureshab at linux.vnet.ibm.com wrote:
>>>> From: Suresh Babu Angadi<sureshab at in.ibm.com>
>>>>
>>>> As per RFC mail thread -
>>>>       [Kimchi-devel] RFC - #728 - Processor Info in s390 architecture
>>>> this patch set adds functionality in back-end to add
>>>> architecture, and host name(for all architecture),
>>>> split CPUs to online and offline(x86, s390x),
>>>> additional virtualization details(for s390x)
>>>>
>>>> Note: Subsequent patch set for UI changes will follow
>>>>        to accommodate these changes
>>>>
>>>> Test Cases Executed:
>>>> ====================
>>>> 1) On x86 machine:
>>>> curl -k -u suresh -H "Content-Type: application/json" -H "Accept: application/json" -X GET 'https://127.0.0.1:8001/plugins/gingerbase/host'
>>>> {
>>>>    "os_distro":"Fedora",
>>>>    "cpus":{
>>>>      "offline":0,
>>>>      "online":4
>>>>    },
>>>>    "cpu_model":"Intel(R) Core(TM) i5-3320M CPU @ 2.60GHz",
>>>>    "os_version":"21",
>>>>    "host":"localhost.localdomain",
>>>>    "os_codename":"Twenty One",
>>>>    "architecture":"x86_64",
>>>>    "memory":7933902848
>>>> }
>>>>
>>>> 2) On s390x machine:
>>>> curl -k -u root -H "Content-Type: application/json" -H "Accept: application/json" -X GET 'https://127.0.0.1:8001/plugins/gingerbase/host'
>>>> {
>>>>    "os_distro":"KVM for IBM z Systems",
>>>>    "cpus":{
>>>>      "shared":2,
>>>>      "offline":2,
>>>>      "dedicated":0,
>>>>      "online":2
>>>>    },
>>>>    "cpu_model":"IBM/2827/743 H43",
>>>>    "os_version":"1.1.1",
>>>>    "host":"zfwcec103",
>>>>    "os_codename":"Z",
>>>>    "architecture":"s390x",
>>>>    "memory":{
>>>>      "offline":2147483648,
>>>>      "online":2147483648
>>>>    },
>>>>    "virtualization":{
>>>>      "lpar_name":"CSTLIN1",
>>>>      "hypervisor":"PR/SM",
>>>>      "lpar_number":55,
>>>>      "hypervisor_vendor":"IBM"
>>>>    }
>>>> }
>>>>
>>>> 3) For Power(Expected Output):
>>>> {
>>>>    "os_distro":<os distro>,
>>>>    "cpus":<cpu count>,
>>>>    "cpu_model":<cpu model>,
>>>>    "os_version":<os version>,
>>>>    "host":<host name>,
>>>>    "os_codename":<os codename>,
>>>>    "architecture":"ppc",
>>>>    "memory":<memory>
>>>> }
>>>>
>>>>
>>>> Suresh Babu Angadi (1):
>>>>    Fix for issue 728: processor info displays blank for system z     this
>>>>      patch set also adds additional capability:     retrieving
>>>>      architecture and host name (for all architecture)     split CPUs to
>>>>      show online and offline cpus(for x86 and s390x)     split memory to
>>>>      show online and offline memory(for s390x)     additional
>>>>      virtualization details(for s390x):         virtualization will have
>>>>      hypervisor details and lpar details
>>>>
>>>>   src/wok/plugins/gingerbase/docs/API.md        |  22 ++-
>>>>   src/wok/plugins/gingerbase/i18n.py            |   1 +
>>>>   src/wok/plugins/gingerbase/lscpu.py           |  59 ++++++
>>>>   src/wok/plugins/gingerbase/model/host.py      | 256 +++++++++++++++++++++++---
>>>>   src/wok/plugins/gingerbase/tests/test_host.py |  12 +-
>>>>   5 files changed, 320 insertions(+), 30 deletions(-)
>>>>
>>>
>>
>> -- 
>> Regards,
>> Suresh Babu Angadi
>

-- 
Regards,
Suresh Babu Angadi

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ovirt.org/pipermail/kimchi-devel/attachments/20151125/9ddeabdf/attachment.html>


More information about the Kimchi-devel mailing list