3 ms·
https://conferences.computer.org/isca/pdfs/ISCA2020-4QlDegUf3fKiwUXfV0KdCm/466100a052/466100a052.pdf https://conferences.computer.org/isca/pdfs/ISCA2020-4QlDegU
by acidbaseextract 5y ago
https://conferences.computer.org/isca/pdfs/ISCA2020-4QlDegUf3fKiwUXfV0KdCm/466100a052/466100a052.pdf https://conferences.computer.org/isca/pdfs/ISCA2020-4QlDegUf...
"Xuantie-910: A Commercial Multi-Core 12-Stage Pipeline Out-of-Order 64-bit High Performance RISC-V Processor with Vector Extension"
From "VIII. NON-STANDARD INSTRUCTION SET EXTENSION"
Targeting at various industrial applications, XT-910 enables
a set of custom non-standard instructions, additional to the
standard RISC-V instructions. The non-standard instruction
extension can be categorized into two groups based on the
purposes - memory access enhancement, and basic arithmetic
operation enhancement.
A. Memory access enhancement
Memory access instructions usually account for a high
proportion in the total number of instructions, so enhancing
memory access instructions can directly benefit the overall
performance. By analyzing the mainstream applications running
on RISC-V, we observed that for the basic RISC-V instructions
there is still quite some room for improvement in memory
access related instructions.
First, we support register + register addressing mode, and
support indexed load and store instructions. This type of
instruction extension reduces the usage of the registers for
calculation and reduces the number of instructions for address
generation, thereby effectively accelerating the data access
of a loop body. Second, unsigned extension during address
generation is supported. Otherwise, the basic instruction set
does not support direct unsigned extension from 32-bit data
to 64-bit data, resulting in too many shift instructions.
I'm not certain if they break out the results by individual optimization, but in Fig. 20 in the paper it looks like all their tweaks add up to a 20% boost over the standard RISC-V ISA. Pretty huge.
- snvzz 5y ago>in Fig. 20 in the paper it looks like all their tweaks add up to a 20% boost over the standard RISC-V ISA. Pretty huge. >I'm not certain if they break out the results by individual optimization They don't, so it's not clear where the 20% comes from. They're using a compiler that optimizes for their microarchitecture, which might account for a lot of that. As for the mention of "extensions", it's not even clear to me whether they mean official RISC-V extensions such as IMAFD or custom extensions.