Generic Linux architectural discussions
 help / color / mirror / Atom feed
From: Robert Jarzmik <robert.jarzmik-GANU6spQydw@public.gmane.org>
To: Geert Uytterhoeven <geert-Td1EMuHUCqxL1ZNQvxDV9g@public.gmane.org>
Cc: Arnd Bergmann <arnd-r2nGTMty4D4@public.gmane.org>,
	Russell King - ARM Linux
	<linux-I+IVW8TIWO2tmTQ+vhA3Yw@public.gmane.org>,
	linux-arch <linux-arch-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	linux-api <linux-api-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org>
Subject: Re: [PATCH 2/3] ARM: convert to generated system call tables
Date: Wed, 26 Oct 2016 22:14:46 +0200	[thread overview]
Message-ID: <87vawe27gp.fsf@belgarion.home> (raw)
In-Reply-To: <CAMuHMdVy_h6Uss9bwVK5hGD42bXeEBcBsBDwCpx_eYnT9r+=Lw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> (Geert Uytterhoeven's message of "Mon, 24 Oct 2016 11:25:03 +0200")

Geert Uytterhoeven <geert-Td1EMuHUCqxL1ZNQvxDV9g@public.gmane.org> writes:

> On Sat, Oct 22, 2016 at 10:23 PM, Robert Jarzmik <robert.jarzmik-GANU6spQydw@public.gmane.org> wrote:
>> Arnd Bergmann <arnd-r2nGTMty4D4@public.gmane.org> writes:
>>
>>> On Friday, October 21, 2016 4:48:56 PM CEST Russell King - ARM Linux wrote:
>>>> What's the point of the x32 mode?
>>>
>>> On x86, the motivation is faster code for most use cases that
>>> don't need a lot of memory, as the 64-bit opcodes have 16 registers
>>> rather than 8 in 32-bit mode but 32-bit pointers have lower
>>> cache footprint than 64-bit pointers.
>>
>> For completness, the second point of x32 AFAIU is the IP-relative addressing
>> which is not available in standard 32 bit mode, which improves PIC code. For
>> simple not algorithmic code (think Android HAL for example) with many shared
>> libraries, it's better in the Hardware Abstraction Layer Libraries, instead of
>> the push-to-stack and pop register.
>
> But that's not an advantage compared to full am64 mode, right?
Nope, the amd64 (that's what you have in mind with am64, not aarch64 right ?)
mode has the IP-relative has well, so x32 has no advantage over amd64 in this
area.

x32 over amd64 advantage is cache and memory footprint AFAICT, I don't see other
benefits. There doesn't seem to be any ISA differences, or I didn't really
notice in my daily system performance analysis job.

There was a nice presentation made by Peter Anvin at a Plumber conference, here
: http://linuxplumbersconf.org/2011/ocw/sessions/531

Cheers.

-- 
Robert

WARNING: multiple messages have this Message-ID (diff)
From: Robert Jarzmik <robert.jarzmik@free.fr>
To: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: Arnd Bergmann <arnd@arndb.de>,
	Russell King - ARM Linux <linux@armlinux.org.uk>,
	linux-arch <linux-arch@vger.kernel.org>,
	linux-api <linux-api@vger.kernel.org>,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH 2/3] ARM: convert to generated system call tables
Date: Wed, 26 Oct 2016 22:14:46 +0200	[thread overview]
Message-ID: <87vawe27gp.fsf@belgarion.home> (raw)
Message-ID: <20161026201446.5PnPVShiyIzQVVio2Q27bRYK-u4a5arhg_ZNWZjJLCc@z> (raw)
In-Reply-To: <CAMuHMdVy_h6Uss9bwVK5hGD42bXeEBcBsBDwCpx_eYnT9r+=Lw@mail.gmail.com> (Geert Uytterhoeven's message of "Mon, 24 Oct 2016 11:25:03 +0200")

Geert Uytterhoeven <geert@linux-m68k.org> writes:

> On Sat, Oct 22, 2016 at 10:23 PM, Robert Jarzmik <robert.jarzmik@free.fr> wrote:
>> Arnd Bergmann <arnd@arndb.de> writes:
>>
>>> On Friday, October 21, 2016 4:48:56 PM CEST Russell King - ARM Linux wrote:
>>>> What's the point of the x32 mode?
>>>
>>> On x86, the motivation is faster code for most use cases that
>>> don't need a lot of memory, as the 64-bit opcodes have 16 registers
>>> rather than 8 in 32-bit mode but 32-bit pointers have lower
>>> cache footprint than 64-bit pointers.
>>
>> For completness, the second point of x32 AFAIU is the IP-relative addressing
>> which is not available in standard 32 bit mode, which improves PIC code. For
>> simple not algorithmic code (think Android HAL for example) with many shared
>> libraries, it's better in the Hardware Abstraction Layer Libraries, instead of
>> the push-to-stack and pop register.
>
> But that's not an advantage compared to full am64 mode, right?
Nope, the amd64 (that's what you have in mind with am64, not aarch64 right ?)
mode has the IP-relative has well, so x32 has no advantage over amd64 in this
area.

x32 over amd64 advantage is cache and memory footprint AFAICT, I don't see other
benefits. There doesn't seem to be any ISA differences, or I didn't really
notice in my daily system performance analysis job.

There was a nice presentation made by Peter Anvin at a Plumber conference, here
: http://linuxplumbersconf.org/2011/ocw/sessions/531

Cheers.

-- 
Robert

  parent reply	other threads:[~2016-10-26 20:14 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <E1bwa6s-0004ZY-4k@rmk-PC.armlinux.org.uk>
     [not found] ` <13702107.LdHY4HTXyY@wuerfel>
     [not found]   ` <20161019155325.GR1041@n2100.armlinux.org.uk>
2016-10-21 13:06     ` [PATCH 2/3] ARM: convert to generated system call tables Arnd Bergmann
2016-10-21 13:37       ` Russell King - ARM Linux
2016-10-21 13:37         ` Russell King - ARM Linux
     [not found]         ` <20161021133708.GA1041-l+eeeJia6m9URfEZ8mYm6t73F7V6hmMc@public.gmane.org>
2016-10-21 15:18           ` Arnd Bergmann
2016-10-21 15:18             ` Arnd Bergmann
2016-10-21 15:48             ` Russell King - ARM Linux
2016-10-21 15:48               ` Russell King - ARM Linux
     [not found]               ` <20161021154856.GC1041-l+eeeJia6m9URfEZ8mYm6t73F7V6hmMc@public.gmane.org>
2016-10-21 16:48                 ` Joseph Myers
2016-10-21 16:48                   ` Joseph Myers
     [not found]                   ` <alpine.DEB.2.20.1610211641430.27636-9YEB1lltEqivcGRMvF24k2I39yigxGEX@public.gmane.org>
2016-10-21 16:57                     ` Russell King - ARM Linux
2016-10-21 16:57                       ` Russell King - ARM Linux
2016-10-21 20:35               ` Arnd Bergmann
2016-10-22 20:23                 ` Robert Jarzmik
2016-10-22 20:23                   ` Robert Jarzmik
2016-10-24  9:25                   ` Geert Uytterhoeven
     [not found]                     ` <CAMuHMdVy_h6Uss9bwVK5hGD42bXeEBcBsBDwCpx_eYnT9r+=Lw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-10-26 20:14                       ` Robert Jarzmik [this message]
2016-10-26 20:14                         ` Robert Jarzmik
2016-10-24  9:29       ` Geert Uytterhoeven
2016-10-24  9:29         ` Geert Uytterhoeven
2016-10-25  9:12       ` Michael Cree
2016-10-25  9:12         ` Michael Cree
2016-10-25 10:28         ` Arnd Bergmann
2016-10-25 10:28           ` Arnd Bergmann
2016-10-25 17:03           ` Richard Henderson
2016-10-25 17:03             ` Richard Henderson
2016-10-25 17:09           ` Geert Uytterhoeven
2016-10-25 17:09             ` Geert Uytterhoeven
2016-10-26  7:04           ` Michael Cree
2016-10-26  7:04             ` Michael Cree
2016-10-26  9:12             ` bpf on Alpha [was Re: [PATCH 2/3] ARM: convert to generated system call tables] Michael Cree
2016-10-26  9:12               ` Michael Cree

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=87vawe27gp.fsf@belgarion.home \
    --to=robert.jarzmik-ganu6spqydw@public.gmane.org \
    --cc=arnd-r2nGTMty4D4@public.gmane.org \
    --cc=geert-Td1EMuHUCqxL1ZNQvxDV9g@public.gmane.org \
    --cc=linux-I+IVW8TIWO2tmTQ+vhA3Yw@public.gmane.org \
    --cc=linux-api-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-arch-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox