DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev]  [PATCH] cpu_layout.py: adjust output format to align
@ 2014-05-27  9:41 Shannon Zhao
  2014-05-27 10:30 ` Thomas Monjalon
  0 siblings, 1 reply; 4+ messages in thread
From: Shannon Zhao @ 2014-05-27  9:41 UTC (permalink / raw)
  To: dev

Bug: when "core id" is greater than 9, the cpu_layout.py output doesn't align.

        Socket 0        Socket 1
        ---------       ---------
Core 9  [4, 16]         [10, 22]

Core 10         [5, 17]         [11, 23]

Solution: adjust output format to align

        Socket 0        Socket 1
        ---------       ---------
Core 9  [4, 16]         [10, 22]

Core 10 [5, 17]         [11, 23]

Signed-off-by: Shannon Zhao <zhaoshenglong@huawei.com>
---
 tools/cpu_layout.py |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/tools/cpu_layout.py b/tools/cpu_layout.py
index 9eff9d7..4768551 100755
--- a/tools/cpu_layout.py
+++ b/tools/cpu_layout.py
@@ -83,7 +83,7 @@ for s in sockets:
 print ""

 for c in cores:
-       print "Core %s" % c,
+       print "Core %s" % str(c).ljust(2),
        for s in sockets:
-               print "\t", core_map[(s,c)],
+               print core_map[(s,c)],"\t",
        print "\n"
--
1.7.1

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [dpdk-dev] [PATCH] cpu_layout.py: adjust output format to align
  2014-05-27  9:41 [dpdk-dev] [PATCH] cpu_layout.py: adjust output format to align Shannon Zhao
@ 2014-05-27 10:30 ` Thomas Monjalon
  2014-05-28  3:02   ` Shannon Zhao
  0 siblings, 1 reply; 4+ messages in thread
From: Thomas Monjalon @ 2014-05-27 10:30 UTC (permalink / raw)
  To: Shannon Zhao; +Cc: dev

Hi,

Your patch doesn't apply correctly.
Could you check it, please?

I have also a comment inlined:

2014-05-27 17:41, Shannon Zhao:
> -               print "\t", core_map[(s,c)],
> +               print core_map[(s,c)],"\t",

Is it possible to fix a minimum alignment of 2 characters?
It could prevent from such alignment problem:

Core 11 [9, 33]         [21, 45] 
Core 12 [10, 34]        [22, 46] 

Thanks
-- 
Thomas

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [dpdk-dev] [PATCH] cpu_layout.py: adjust output format to align
  2014-05-27 10:30 ` Thomas Monjalon
@ 2014-05-28  3:02   ` Shannon Zhao
  2014-05-28  9:23     ` Thomas Monjalon
  0 siblings, 1 reply; 4+ messages in thread
From: Shannon Zhao @ 2014-05-28  3:02 UTC (permalink / raw)
  To: Thomas Monjalon; +Cc: dev

Hi Thomas,

Thanks for your reply.

I have checked my patch. It doesn't apply correctly when "core id" is greater than 2 characters.

Following is my revised patch. It's based on the maximum length of the "core id" and "processor" to adjust the alignment length.


Bug: when "core id" is greater than 9, the cpu_layout.py output doesn't align.

        Socket 0        Socket 1
        ---------       ---------
Core 9  [4, 16]         [10, 22]

Core 10         [5, 17]         [11, 23]

Solution: adjust output format to align

        Socket 0        Socket 1
        ---------       ---------
Core 9  [4, 16]         [10, 22]

Core 10 [5, 17]         [11, 23]

Signed-off-by: Shannon Zhao <zhaoshenglong@huawei.com>
---
 tools/cpu_layout.py |   16 ++++++++++++----
 1 files changed, 12 insertions(+), 4 deletions(-)

diff --git a/tools/cpu_layout.py b/tools/cpu_layout.py
index 9eff9d7..eeda17e 100755
--- a/tools/cpu_layout.py
+++ b/tools/cpu_layout.py
@@ -75,15 +75,23 @@ print "cores = ",cores
 print "sockets = ", sockets
 print ""

+max_processor_len=len(str(len(cores)*len(sockets)*2-1))
+max_core_map_len = max_processor_len*2+4
+if max_core_map_len < 12:
+        max_core_map_len = 12
+max_core_id_len=len(str(max(cores)))
+
+print " ".ljust(max_core_id_len+5),
 for s in sockets:
-       print "\tSocket %s" % s,
+       print "Socket %s" % str(s).ljust(max_core_map_len-7),
 print ""
+print " ".ljust(max_core_id_len+5),
 for s in sockets:
-       print "\t---------",
+       print "---------".ljust(max_core_map_len),
 print ""

 for c in cores:
-       print "Core %s" % c,
+       print "Core %s" % str(c).ljust(max_core_id_len),
        for s in sockets:
-               print "\t", core_map[(s,c)],
+               print str(core_map[(s,c)]).ljust(max_core_map_len),
        print "\n"
--
1.7.1


On 2014/5/27 18:30, Thomas Monjalon wrote:
> Hi,
> 
> Your patch doesn't apply correctly.
> Could you check it, please?
> 
> I have also a comment inlined:
> 
> 2014-05-27 17:41, Shannon Zhao:
>> -               print "\t", core_map[(s,c)],
>> +               print core_map[(s,c)],"\t",
> 
> Is it possible to fix a minimum alignment of 2 characters?
> It could prevent from such alignment problem:
> 
> Core 11 [9, 33]         [21, 45] 
> Core 12 [10, 34]        [22, 46] 
> 
> Thanks
> 

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [dpdk-dev] [PATCH] cpu_layout.py: adjust output format to align
  2014-05-28  3:02   ` Shannon Zhao
@ 2014-05-28  9:23     ` Thomas Monjalon
  0 siblings, 0 replies; 4+ messages in thread
From: Thomas Monjalon @ 2014-05-28  9:23 UTC (permalink / raw)
  To: Shannon Zhao; +Cc: dev

Hi,

2014-05-28 11:02, Shannon Zhao:
> I have checked my patch. It doesn't apply correctly when "core id" is
> greater than 2 characters.
> 
> Following is my revised patch. It's based on the maximum length of the "core
> id" and "processor" to adjust the alignment length.

Thank you for reworking your patch.

Please, could you send your patch as v2 with "git send-email"?
There are some guidelines here:
	http://dpdk.org/dev#send

Thanks
-- 
Thomas

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2014-05-28  9:23 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-05-27  9:41 [dpdk-dev] [PATCH] cpu_layout.py: adjust output format to align Shannon Zhao
2014-05-27 10:30 ` Thomas Monjalon
2014-05-28  3:02   ` Shannon Zhao
2014-05-28  9:23     ` Thomas Monjalon

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).