Startup to Open-Source Parallel CPU
eetimes.com
Startup to Open-Source Parallel CPU
1–10 of 58 posts
Re: Startup to Open-Source Parallel CPU
#2Re: Startup to Open-Source Parallel CPU
#3I'm the founder and CEO of REX... Check out our website for a brief overview ( http://rexcomputing.com ) and feel free to ask questions here!
Apologies for being critical, I wish you the best.
Re: Startup to Open-Source Parallel CPU
#4How big chunks of computation you need to do in a node for this to be effective?
Re: Startup to Open-Source Parallel CPU
#5I'm the founder and CEO of REX... Check out our website for a brief overview ( http://rexcomputing.com ) and feel free to ask questions here!
How much is the scratchpad memory in each of the processors?
Re: Startup to Open-Source Parallel CPU
#6How much scratch memory is there? Is it SRAM?
Are they licensing anyone's IP for the interconnect, or CPU? What's the bandwidth of the interconnect? Is is packet-oriented? How does fair-routing work?
Re: Startup to Open-Source Parallel CPU
#7I'm the founder and CEO of REX... Check out our website for a brief overview ( http://rexcomputing.com ) and feel free to ask questions here!
Impressive for your age. But how is this any different from the millions of identical proposals that never got anywhere? Packing plenty of alus with some sort of basic network hasn't really worked out in real life. The first block diagram in the article is so basic it's concerning. Apologies for being critical, I wish you the best.
In comparison to other architectures, we have chose to stick to RISC, instead of some crazy VLIW or very long pipeline scheme. In doing this, we limit compiler complexity while still having very simple/efficient core design, and thus hopefully keeping every core's pipeline full and without hazards. The idea is that we just want to have a bunch of very simple and focused SPMD cores, so that we can have a MIMD/MPMD chip.
We are currently fixing the bugs on our single core FPGA demo, and hope to have our full 256 core cycle accurate simulator done by ~January/February. We want to release that (and our currently very early compilers) to the public ASAP.
Re: Startup to Open-Source Parallel CPU
#8Does anyone know what the actual CPUs are? It mentions it has 64 registers? My guess is ARM / MIPS, based upon: http://en.wikipedia.org/wiki/Processor_register How much scratch memory is there? Is it SRAM? Are they licensing anyone's IP for the interconnect, or CPU? What's the bandwidth of the interconnect? Is is packet-oriented? How does fair-routing work?
We currently have 128KByte dual-ported SRAM per core (which is physically part of the core, and not a giant array somewhere else on die). It has single cycle latency to the core's registers and to the Network on Chip router.
The on chip mesh network is custom 128 bit wide going core to core. The router can do a read or write to SRAM per cycle AND allows a passthrough to another core in the same cycle.
Our chip-to-chip interconnect is a custom 64 bit (72 lane) parallel interface allowing 48GB/s. There are two of these (unidirectional) interfaces per side, giving you a total of 8 of these interfaces per chip.
Re: Startup to Open-Source Parallel CPU
#9I'm the founder and CEO of REX... Check out our website for a brief overview ( http://rexcomputing.com ) and feel free to ask questions here!
This looks pretty exciting. How much is the scratchpad memory in each of the processors?
If we can go to 14/16nm in the future, we are planning 512 and 1024 core versions with different amounts of memory depending on if you are memory or compute bound.
Re: Startup to Open-Source Parallel CPU
#10I'm the founder and CEO of REX... Check out our website for a brief overview ( http://rexcomputing.com ) and feel free to ask questions here!
>Local scratchpad memories are physically addressed as part of a flat global address space.
So from the programmers perspective each core will have a block of the address space, I.E.: 0-255, 256-511, 512-767, 768-1023 etc.?
Or is there address translation between units? Or if a thread is just built to arbitrarily execute on a unit, it'll have to pre-process its position for name space translation?
Also is there a memory locking in local scratchpad? (I maybe reaching).