FlexTiles is a FP7 Project with the goal of designing a tool-chain for the design of a 3D SoC and prototype on a FPGA Development Platform. This presentation covers the "why, how, when and where" of the Project that will complete in Year 2015
Some examples : The Tilera processor: 100 cores. Already a manycore!
40nm, 1.5GHz, 55W, C/C++
Can be programmed through C and C++ thanks to an IDE (Integrated Development Environment)MDE (multicore development environment) based on a SMP (symetric multiprocessor)
Bare Metal Environment
Standard Debugging Tools (gdb 7)
---
Fermi from Nvidia 512 cores organised in 16 Streaming Multiprocessor
Programmability:
CUDA parallel programming model: multi-threading
Programming languages: C/C++, openCL, …
---
MPPA from Kalray: 256 cores organised in 16 clusters
Programmability:
specific data flow language: sigmaC
Tools to automatically map the application
---
These homogeneous chips are “easy” to program and offers tools to help programmers to fine tune.
But the tools are only giving performance for static applications.
Manycore is a main issue for industrials.
For industrials, programmability means: time to market by reducing software development costs thanks to reuse of legacy software.
But what about manycores? What about homogeneous manycores? What about heterogeneous manycores
Industrials think it is not necessary to bring complex architecture that are not programmable.
They want to keep development as simple as possible.
Performance is not coming from frequency anymore, but who cares? It must be kept as easy as possible.
The nature does it, all the time…
This is a town, north east of Madrid.
You can notice the regularity from far, but looking closer, you notice the customisation of each square, and you can even notice a square being reconfigured.
An application is a set of cluster groups. The behaviour of the cluster groups is defined at the runtime. The behaviour of the cluster is defined at compiled time.
A complete platform to ensure programming efficiency and self adaptive behaviour