Upload
others
View
0
Download
0
Embed Size (px)
Citation preview
1
Building a Diverse Ecosystem
Nigel PaverFellow & VP Engineering
ARM Research
March 2016
2
ARM is the world's leading semiconductor intellectual property supplier.§ License technology to partners, who use it to create
their own system-on-chip (SoC) products.§ We license an ISA (e.g. “ARMv8-A”) or a specific
microarchitectural implementation (e.g. “Cortex-A72”)
§ Upfront license fee § Covers the development cost
§ Ongoing royalties§ Typically based on a percentage of chip price§ Vested interest in success of customers
An introduction to ARM
Business Development
Licence fee
IPProvider
SemiCoPartner
IP Provider Licenses technology to Partner
Partner develops chips
OEMCustomer
OEM sells consumerproducts
Royalty
Approximately 1250 licensesGrows by ~100 every year
More than 350 potential royalty payers
14bn+ ARM-powered chips in 2015>25% CAGR over last 5 years
3
Goal – Create a Diverse and Vibrant Ecosystem
ARMHigh Performance Computing
Software Partners Architecture Partners
uArchitcturePartners
SystemIntegrators
?? ?
4
§ Have a viable business model§ Understand how everyone in the value chain can be successful§ Long term sustainability
§ Design once and reuse is fundamental§ Technology reused across multiple applications/segments§ Creates market for ecosystem to target§ Re-use is also fundamental to the ecosystem
§ Provide a standard way of plugging IP building blocks together§ Create open and free standard interconnects such as AMBA
§ Provide essential building blocks that drive the Ecosystem§ CPU, Interconnect, memory interfaces
Creating The Ecosystem Playing Field
5
§ One size does not fit all§ A diverse partner base drives diverse solutions to the same problems
§ Standardize the common features leave room for innovation elsewhere§ Allow partners to differentiate from each other§ Price alone is not sustainable§ Changes over time - successful novel features eventually become standards § Know when to standardize§ E.g. OS timer interfaces, power management
§ Instruction set architecture is the envelope for innovation within the ecosystem§ Critical to enforce standardization to prevent fragmentation of software base
Walking The Fine Line – Differentiation v Standardization
6
§ Provide multiple implementation options§ Different Power, Performance, Area optimization points§ Control v data plane§ E.g. A57, A53….... M0
§ Enable partners to offer different implementations§ Micro-architecture choice, architecture v microarchitecture§ Maintain SW compatibility
§ Nobody can do everything any more§ Encourage third party IP providers§ Don’t be paranoid about competition
Provide a Rich Portfolio of IP
7
ARM Performance Libraries
§ Commercially supported 64-bit ARMv8 vendor math libraries for scientific computing
§ Built and validated using technology from NAG§ Enable ARM partners’ computational kernels tuned
for their SOC implementation.§ Cortex-A57, Xgene and Cavium® ThunderX
optimizations available at launch, others to follow.§ Development model allows for the production of
ARM Performance Libraries that are highly tuned for specific system configurations.
§ Specific tuning work available under services contract
§ All implementations hosted on arm.com
00010010010110010010001001000011100011110001000100011100010010000
1010100010000101010100001001001011001001000100100001110001111000100
010001110001001000010101000100001010101011101010010110010101a000100
1001011001001000100100001110001111000100010001110001001000010101000
1000010101010111010100101100101010000101010001000010000101010001000
0100001001001000100010001000010001000100010110011010101101101101101
0000100100101100100100010010000111000111100010001000111000100100001
0101000100001010101011101010010110010101a00010010010110010010001001
0000111000111100010001000111000100100001010100010000101010101110101
0010110010101a00010010010110010010001001000011100011110001000100011
10001001000010101000100001010101011101010010110010101a0001001001011
0010010001001000011100011110001000100011100010010000101010001000010
10101011101010010110010101a0001001001011001001000100100001110001111
000100010001110001001000010101000100001010101011101010010110010101a
0001001001011001001000100100001110001111000100010001110001001000010
101000100001010101011101010010110010101a111010100101100110010001000
8
ARM actively working with the community for increased support and performance
§ OpenBLAS§ ARMv8 kernels included in development branch§ Target is Xgene by default, but can be changed to other architectures
§ BLIS§ BLIS developers have close relationship with ARM @ Austin§ BLIS supports various ARM processors by default (e.g. A53, A57)§ Also currently conducting big.LITTLE development @ ARM Cambridge
§ ATLAS§ Work ongoing in ARM Research team§ A57/A53 patches went into ATLAS on August 26th, now reaching 90-95% of theoretical peak
§ FFTW§ Just works. NEON options built in§ Better timing can be done on particular systems for better performance of kernels
Open-source Library AArch64 inbuilt tuning work
9
Parallelism to enable optimal HPC performance• OpenMP
• ARM Performance Libraries are parallelized using OpenMP by default• ARM are active members of the OpenMP Standards Committee
• OpenACC• Pathscale and PGI are strong supporters of OpenACC
• supported for ARM within EKOPath
• Auto-vectorization• ARM actively works on vectorization in GCC and LLVM, and encourages work with
vectorization support in the compiler community. • Pathscale’s compiler has vectorization support built in
• MPI parallelism is configured into many of the open source libraries we offer• Libraries compiled with a choice of MPI libraries
10
Key packages for HPC - identified from customer feedback§ In order to help early adopters of ARM HPC get the best experience of adopting a new
architecture we have pre-compiled key libraries § RPMs / DEBs for easy installation. No compiling needed
§ Optimizations for each silicon vendor and appropriate set-up for many Linux distros§ Compilers : GCC, LLVM§ MPI : OpenMPI, MPICH§ PGAS: PGAS libraries and languages§ Maths libraries : ARPACK, ATLAS, BLIS, FFTW, FLAME, EIGEN, GNU Scientific Library,
OpenBLAS, SuperLU§ MPI maths libs : Elemental, FEAST, Hypre, PETSc, ScaLAPACK+BLACS, SUNDIALS, SLEPc, Trilinos§ Utility libraries : HDF5, NetCDF, METIS§ Profiling : PAPI, Perf, Score-P, Scalasca, Cube, MPE, TAU§ Prebuilt Python : + NumPy, +SciPy
§ Anything you think we’ve missed, let us know!§ We will be pushing porting patches, etc, back as needed
11
Developer website : arm.com/hpcARM are launching an HPC-specific microsite This will be a home to our HPC ecosystem offering:• technical reference material• how-to guides• latest news and updates from partners• downloads of HPC libraries• third-party software recommendations• web forum for community discussion and help
Participate and help drive the community
12
Summary
§ Opportunity to bring more of the ARM ecosystem to HPC
§ Momentum building in SW ecosystem
§ Partnership, collaboration and co-design are key to enabling a diverse ecosystem
§ Open to feedback from HPC community§ Leverage adjacent market segments
§ Nobody can do everything any more§ Outsourcing gives way to Partnership § Requires a different approach
ARM RESEARCH13
Thank You