Libre RISC-V Mailing list Archives (accessible via public-inbox)
 help / color / Atom feed
From: Luke Kenneth Casson Leighton <lkcl@lkcl.net>
To: Libre-RISCV General Development <libre-riscv-dev@lists.libre-riscv.org>
Subject: Re: [libre-riscv-dev]  Request for input and technical expertise for Systèmes Libres Amazon Alexa IOT Pitch 10-JUN-2020
Date: Mon, 8 Jun 2020 16:27:46 +0100
Message-ID: <CAPweEDw5_fU-y3rewKuL+A0C5seEFXy4MVVy2bryrZfBh24vqQ@mail.gmail.com> (raw)
In-Reply-To: <20200608135554.54lyyd5wd3xlzi4m@topoi.pooq.com>

(btw thank you staf for the insights)

On Mon, Jun 8, 2020 at 2:56 PM Hendrik Boom <hendrik@topoi.pooq.com> wrote:
>
> On Mon, Jun 08, 2020 at 12:13:48PM +0100, Luke Kenneth Casson Leighton wrote:
> >
> > all of these things are at the architectural level.  we are not doing
> > anything fancy at the gate level.  it is a matter of making
> > *architectural* decisions that reduce power consumption, operating
> > within the exact same gate-level power consumption constraints as
> > every other ASIC out there.
>
> You point out that the CPU and GPU share cache, being the same processor.

yes.  or: the CPU instructions and GPU instructions, by being in the
same ISA, the GPU *workload* will push CPU workload(s) out of the
(same) L1 Cache.

>
> But we are designing a four-core chip?

yes.  therefore there will be 1x L1 Data and 1x L1 Instruction Cache
per each of those four cores.

>  To what extent to the four cores share cache?

L1?  not at all - ever.

> And on avoiding data copying between CPU ad GPU:
>
> I believe the OpenGL API involves copying data from CPU buffers to GPU
> buffers, with the understanding that the CPU copies can be discarded
> while the GPU goes on with its copy.

... because the assumption is that the GPU is a completely and utterly
separate processor, the "command" to perform that copy is expected to
involve the excruciatingly-painful process previously mentioned, from
which i excluded the userspace-kernelspace context-switching so as not
to have people run away screaming in terror.

in our case: it would simply be... a memcpy.

> Having the same storage for both sets of buffers could obviously obviate
> these copies, except that software that uses this API will likely rely
> on being able to overwrite the CPU-side buffers with impunity.  So the
> copy will still have to be done.

sounds reasonable to me.  actually now that i think about it, if the
buffer is placed into a shmem segment with copy-on-write semantics,
the memcpy will not be needed, and the "overwriting", because of the
CoW semantics, would only be done on-demand.

this however would be an optimisation.

the *only reason* that we can even remotely consider such an
optimisation is precisely because of the hybrid architecture.

> Do I misunderstand OpenGL?  Is Vulcan different?

don't know.

> Will users want to bypass these libraries and use the graphics instructios directly?

only if they want to become an assembly-level expert, with all the
inherent implications and performance-complexity tradeoffs that always
come with doing assembly programming.

> Or is there some other sublety I'm missing?

no idea :)

l.

_______________________________________________
libre-riscv-dev mailing list
libre-riscv-dev@lists.libre-riscv.org
http://lists.libre-riscv.org/mailman/listinfo/libre-riscv-dev

  parent reply index

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-06-07 23:42 Cole Poirier
2020-06-07 23:55 ` Luke Kenneth Casson Leighton
2020-06-08  0:29   ` Jacob Lifshay
2020-06-08 10:17     ` Staf Verhaegen
2020-06-08 11:13       ` Luke Kenneth Casson Leighton
2020-06-08 12:37         ` Staf Verhaegen
2020-06-08 13:55         ` Hendrik Boom
2020-06-08 14:15           ` Lauri Kasanen
2020-06-08 15:27           ` Luke Kenneth Casson Leighton [this message]
2020-06-09  1:17             ` Cole Poirier
2020-06-09 10:34               ` Luke Kenneth Casson Leighton
2020-06-09 19:01                 ` Cole Poirier
2020-06-09 22:01               ` Hendrik Boom
2020-06-10  0:43                 ` Cole Poirier
2020-06-10  0:44                   ` Yehowshua
2020-06-10  2:46                     ` Hendrik Boom

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=CAPweEDw5_fU-y3rewKuL+A0C5seEFXy4MVVy2bryrZfBh24vqQ@mail.gmail.com \
    --to=lkcl@lkcl.net \
    --cc=libre-riscv-dev@lists.libre-riscv.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

Libre RISC-V Mailing list Archives (accessible via public-inbox)

Archives are clonable: git clone --mirror https://inbox.libre-soc.org/libre-riscv-dev

Example config snippet for mirrors


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git