All of lore.kernel.org
 help / color / mirror / Atom feed
From: cotulla@yandex.ua
To: linux-hexagon@vger.kernel.org
Subject: Re: [DISCUSSION] Hexagon code inside kernel
Date: Sun, 24 Feb 2013 21:29:27 +0400	[thread overview]
Message-ID: <2140201361726967@web5h.yandex.ru> (raw)
In-Reply-To: <CAHrUA34oWaQvVwWk7cCcYmh188pv=vNCZnXWvn4sDJN0k-QEaA@mail.gmail.com>


> šWell.... you are using memb to copy one byte at a time, instead of
> šmemd which will copy 8 bytes at a time. ššSo that change alone should
> šmultiply performance by 8.
>
> šYou can almost surely be more clever, and move the if statement and
> šthe increment into a packet, so that they execute in parallel. šIts a
> švliw, its very parallel, that needs to be exploited. šFor example, (if
> šI remember correctly (?)) you can set and read r2 in the same packet,
> šthe read will get the old value, the set will write the new value.
> šYou can move the jumpr into the next packet, if you don't mind copying
> šone extra byte. ššSo there are many tricks like this.
>
> šI don't remember the details any longer, but there are cases where the
> šcompiler would inline some fairly efficient memcpy code. ššAlso .. the
> šcompiler is smart, in general -- šyou should try writing the loop in C
> š(and using 64-bit words) and seeing what it generates.
>
> šAnd finally, aren't there some optimized memcpy assembly routines in
> šthe kernel? I know we kept talking about these...
>
> š--linas

Yes, there is an optimized memcpy version.
But my goal was to "compare" ARM performance with QDSP6 to know what to wait from it.
So I made a simple C code and tested it on both processors.

And there is a difference between them. My question was in general: do you think it's normal or QDSP6 should work faster/slower? 
Did you test performance inside Linux on Hexagon?


-Cotulla

  reply	other threads:[~2013-02-24 17:29 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-02-15 14:28 [DISCUSSION] Hexagon code inside kernel cotulla
     [not found] ` <CAHrUA364XES66kXhr0Gg1dh_MQBAS0+R8Q4x+EY3dgz6s=QRww@mail.gmail.com>
2013-02-15 22:33   ` Linas Vepstas
2013-02-16  1:35     ` cotulla
2013-02-16  2:34       ` Linas Vepstas
2013-02-16 12:39         ` cotulla
2013-02-16 17:33           ` Linas Vepstas
2013-02-16 19:21             ` cotulla
2013-02-19  4:36           ` rkuo
2013-02-19 14:29             ` Linas Vepstas
2013-02-20  1:07               ` cotulla
2013-02-20  1:17             ` cotulla
2013-02-23  4:24           ` Rob Landley
2013-02-24 12:00             ` cotulla
2013-02-24 16:32               ` Linas Vepstas
2013-02-24 17:29                 ` cotulla [this message]
2013-02-24 21:03                   ` Linas Vepstas
2013-02-25 17:26                     ` Rob Landley
2013-02-26 18:54                       ` cotulla
2013-02-27  0:58                         ` Rob Landley
2013-02-27 12:39                           ` cotulla
2013-02-24 12:23             ` cotulla
2013-02-26  6:55               ` Rob Landley
2013-02-26 19:30                 ` cotulla
2013-02-26 19:32                 ` cotulla
2013-02-26 19:59                   ` Linas Vepstas
2013-02-26 20:25                     ` cotulla
2013-02-26 20:57                       ` Linas Vepstas
2013-02-27  1:06                   ` Rob Landley
2013-02-27  1:30                     ` Linas Vepstas
2013-02-27  3:03                       ` Rob Landley
2013-02-27 12:35                         ` cotulla
  -- strict thread matches above, loose matches on Subject: below --
2013-02-24  0:24 Linas Vepstas

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=2140201361726967@web5h.yandex.ru \
    --to=cotulla@yandex.ua \
    --cc=linux-hexagon@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.