Hello gerry, hello kit

I tested your fix proposal on my opteron system (before kit answered).

With this fix, the system boots,
but the lgrp framework doesn't seem to be initialized properly.
The latency stats are weird.

> lgrp_plat_node_domain::print
[
    {
        exists = 0x1
        prox_domain = 0x2
    }
    {
        exists = 0x1
        prox_domain = 0x1
    }
    {
        exists = 0
        prox_domain = 0
    }
    {
        exists = 0
        prox_domain = 0
    }
    {
        exists = 0
        prox_domain = 0
    }
    {
        exists = 0
        prox_domain = 0
    }
    {
        exists = 0
        prox_domain = 0
    }
    {
        exists = 0
        prox_domain = 0
    }
]
> lgrp_plat_cpu_node::print
[
    {
        exists = 0x1
        node = 0x1
        apicid = 0
        prox_domain = 0x1
    }
    {
        exists = 0x1
        node = 0
        apicid = 0x2
        prox_domain = 0x2
    }
    {
        exists = 0x1
        node = 0x1
        apicid = 0x1
        prox_domain = 0x1
    }
    {
        exists = 0x1
        node = 0
        apicid = 0x3
        prox_domain = 0x2
    }
    {
        exists = 0
        node = 0
        apicid = 0
        prox_domain = 0
    }
    {
        exists = 0
        node = 0
        apicid = 0
        prox_domain = 0
    }
    {
        exists = 0
        node = 0
        apicid = 0
        prox_domain = 0
    }
    {
        exists = 0
        node = 0
        apicid = 0
        prox_domain = 0
    }
    {
        exists = 0
        node = 0
        apicid = 0


> lgrp_plat_node_memory::print
[
    {
        start = 0x80000
        end = 0xfffff
        exists = 0x1
        prox_domain = 0x2
    }
    {
        start = 0
        end = 0x7ffff
        exists = 0x1
        prox_domain = 0x1
    }
    {
        start = 0
        end = 0
        exists = 0
        prox_domain = 0
    }
    {
        start = 0
        end = 0
        exists = 0
        prox_domain = 0
    }
    {
        start = 0
        end = 0
        exists = 0
        prox_domain = 0
    }
    {
        start = 0
        end = 0
        exists = 0
        prox_domain = 0
    }
    {
        start = 0
        end = 0
        exists = 0
        prox_domain = 0
    }
    {
        start = 0
        end = 0
        exists = 0
        prox_domain = 0
    }
]
> lgrp_plat_lat_stats::print
{
    latencies = [
        [ 0x2, 0x3, 0, 0, 0, 0, 0, 0 ]
        [ 0x3, 0x2, 0, 0, 0, 0, 0, 0 ]
        [ 0, 0, 0, 0, 0, 0, 0, 0 ]
        [ 0, 0, 0, 0, 0, 0, 0, 0 ]
        [ 0, 0, 0, 0, 0, 0, 0, 0 ]
        [ 0, 0, 0, 0, 0, 0, 0, 0 ]
        [ 0, 0, 0, 0, 0, 0, 0, 0 ]
        [ 0, 0, 0, 0, 0, 0, 0, 0 ]
    ]
    latency_max = 0x3
    latency_min = 0x2
}


bash-3.2# lgrpinfo -Ta
$0
|-- 1
|   CPUs: 0 2
|   Memory: installed 2.0G, allocated 196M, free 1.8G
|   Load: 4.58e-05
|   Latency: 2
`-- 2
    CPUs: 1 3
    Memory: installed 1.8G, allocated 519M, free 1.3G
    Load: 0.603
    Latency: 2

Lgroup latencies:

---------
  | 0 1 2
---------
0 | 3 3 3
1 | 3 2 3
2 | 3 3 2
---------
bash-3.2# lgrpinfo    
lgroup 0 (root):
        Children: 1 2
        CPUs: 0-3
        Memory: installed 3.8G, allocated 715M, free 3.1G
        Lgroup resources: 1 2 (CPU); 1 2 (memory)
        Latency: 3
lgroup 1 (leaf):
        Children: none, Parent: 0
        CPUs: 0 2
        Memory: installed 2.0G, allocated 198M, free 1.8G
        Lgroup resources: 1 (CPU); 1 (memory)
        Load: 0.503
        Latency: 2
lgroup 2 (leaf):
        Children: none, Parent: 0
        CPUs: 1 3
        Memory: installed 1.8G, allocated 517M, free 1.3G
        Lgroup resources: 2 (CPU); 2 (memory)
        Load: 0.13
        Latency: 2








The result is very different from what we get when srat is disabled (with my 
patch proposal) :

bash-3.2# lgrpinfo
lgroup 0 (root):
        Children: 1 2
        CPUs: 0-3
        Memory: installed 3.8G, allocated 1.1G, free 2.7G
        Lgroup resources: 1 2 (CPU); 1 2 (memory)
        Latency: 139
lgroup 1 (leaf):
        Children: none, Parent: 0
        CPUs: 0 2
        Memory: installed 2.0G, allocated 411M, free 1.6G
        Lgroup resources: 1 (CPU); 1 (memory)
        Load: 0.497
        Latency: 105
lgroup 2 (leaf):
        Children: none, Parent: 0
        CPUs: 1 3
        Memory: installed 1.8G, allocated 722M, free 1.1G
        Lgroup resources: 2 (CPU); 2 (memory)
        Load: 0.0722
        Latency: 105

bash-3.2# lgrpinfo -Ta
0
|-- 1
|   CPUs: 0 2
|   Memory: installed 2.0G, allocated 409M, free 1.6G
|   Load: 0.0392
|   Latency: 105
`-- 2
    CPUs: 1 3
    Memory: installed 1.8G, allocated 724M, free 1.1G
    Load: 0.54
    Latency: 105

Lgroup latencies:

---------------
  |   0   1   2
---------------
0 | 139 139 139
1 | 139 105 139
2 | 139 139 105
--------------- 


Thank you
Guy
-- 
This message posted from opensolaris.org
_______________________________________________
opensolaris-code mailing list
opensolaris-code@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/opensolaris-code

Reply via email to