3 ms·
Talking about the ISA needing to spend so much time addressing memory, I'm reminded of the really interesting Streaming Semantic Registers (SSRs) in Occamy, the
by jauntywundrkind 2y ago
Talking about the ISA needing to spend so much time addressing memory, I'm reminded of the really interesting Streaming Semantic Registers (SSRs) in Occamy, the excellent PULP group's 4096-core RISC-V research multichip design. https://arxiv.org/abs/1911.08356 https://arxiv.org/abs/1911.08356
Just like the instruction pointer which implicitly increments as code executes, there are some dedicated data-pointer registers. There's a dedicated ALU for advancing/incrementing, so you can have interesting access patterns for your data.
Rather than loops needing to load data, compute, store data, and loop, you can just compute and loop. The SSRs give the cores a DSP like level of performance. So so so neat. Ship it!
(Also, what was the name of the x86 architecture some linux distros were shipp8ng with 32 bit instructions & address space, but using the new x86-64 registers?)
- tzot 2y agoRe your parenthesized question: x32, as discussed in the article, is an ABI using the full x86-64 instruction set and registers, but pointers are 32-bit. I believe you are talking about the same thing, because any “32-bit instructions” (assumably x86/i686 instructions) cannot use “new x86-64 registers” (either in full count of registers or their 64-bit width).