FPGA Accelerator Virtualization in an OpenPOWER cloud Fei Chen, - - PowerPoint PPT Presentation
FPGA Accelerator Virtualization in an OpenPOWER cloud Fei Chen, - - PowerPoint PPT Presentation
FPGA Accelerator Virtualization in an OpenPOWER cloud Fei Chen, Yonghua Lin IBM China Research Lab Trend of Acceleration Technology
Trend of Acceleration Technology
2
- Used FPGA to accelerate
Bing search on 1632 servers
- A 6*8 2D-torus design for
high throughput network topology
- Storage >2000PB,
processing 10~100PB/day, log 100TB~1PB/day
- Using FPGA for storage
controller
- Used GPU for Deep
Learning
- Scalable acceleration fabric
- Open framework for accelerator integration and sharing
- Accelerator resource abstraction, re-configuration and
scheduling in cloud
- Modeling & advisory tool for dynamic acceleration system
composition
- Acceleration programming becomes
hot topics TB scale problem PB scale problem Acceleration architecture for single node Architecture for thousands of nodes Dedicate acceleration resource Shared acceleration resources Proprietary accelerator framework Open framework to enable accelerator sharing & integration Close innovation model Open innovation model through eco-system
- OpenCL, Sumatra (Oracle), LiMe (IBM), …
Resources on FPGA are huge
3
- Resources on FPGA
- Programmable resources
Logic cells (LCs) DSP slices: Fixed/floating-point On-chip memory blocks Clock resources
- Miscellaneous periphrals
(Xilinx Virtex as an example) DDR3 controllers PCIe Gen3 interfaces 10G Ethernet controllers ...
- Hard processor core
PowerPC: Xilinx Virtex-5 FXT ARM: Xilinx Zynq-7000 Atom: Intel + Altera E600C
!!"#$%&'( #$%')*"+!& ,'! ,-./0 ''&)1*2" 3 4&2*" 560
FPGA on Cloud – Double Win
4
- Cloud benefits from FPGA
- Performance
- Power consumption
- FPGA benefits from cloud
- Lower the cost
- Tenants need not purchase and maintain FPGAs.
- Tenants pay for accelerators only when using them.
- More applications
- High FPGA utilization
- Ecosystem
- Grow with the cloud ecosystem
Motivation of Accelerator/FPGA as Service in Cloud
2
#$%-/1, 7
8&&( & ,&0
5 5 5
- 9)4,''' #$%
,&5&7
- 9)' #$%:
)'5&)4& '7
31',14 4, 4,,4
5
- '
- ;)
<''
)) 7
FPGA Ecosystem in Cloud
- ,
;)
- #$%
- !"##
!
- $4'&
''') %'( )4 '93' '')4, )'&')' ,&)&0 ) 14'=> , ' 4 #$%& ' ,
- '
'',
- 00
$?3/ , )'4 &'' '4 )' , '& ,&& )1 ,)40
- #
!$ %& " ' $# "#( $ #
Accelerator as Service on SuperVessel
7
- Accelerator MarketPlace for developers to
upload and compile the accelerators for SuperVessel POWER cloud
- Allow user to request different size of cluster
Fig.1 Accelerator MarketPlace for SuperVessel Cloud Fig.2 Cloud users could apply accelerator when creating VM
FPGA Implementation
8
- <
- 8
.
"
- #
- "
! )
- $
- *
- "
! )
- 14@ '#$%
14@A1B& )'&… $, 14@85&$&$&…
#$%'
85 )' A1 ' A1B 4 853
- <
- 8
3'
- 9'<)':
$:$
……
- Hardware
OS Apps Computer The FPGA subsystem is designed as a computer system.
System Implementation
9
Control Iode Compute Iode Compiler
Control Iode: Iova, Glance, Horizon, Ieutron, Swift Compute Iode: Iova Compute Compiler: FPGA incremental compiler environment
- 1. Accelerator source
code package
- 2. image_file
Dashboard Compiler Glance Scheduler Compute
- 3. VM request
(with accelerator)
- 4. acc_file
- 5. Launch VM
Evaluation
10
(1) Accelerator Sharing Evaluation
900 1000 1100 1200 1300 1 2 3 4 5 6 7 8 Total Bandwidth(MB/s)
Number of Processes
Host One VM
(1)
- Host: All processes run in host environment
- One VM: All processes run in one VM
- VMs : Each process runs in one VM
- AESs: Each VM uses one independent AES accelerator
400 800 1200 1600 1 5 9 13 17 21 25 29 33 37 41 45 49 53 57 61 , <)'-<5:/ $" $+
- (2) Management – Bandwidth Control
"C *"C !"C D"C E"C + ++ *+ F+ !+ 2+ D+ ,-/
- "
+ * F ! + ++ *+ F+ !+ 2+ D+ ,-/ .4-,/ + +" +"" +""" +"""" + ++ *+ F+ !+ 2+ D+ ,-/ <)'-5<:/ $" $+ $+1 $4 ++G!5<: *25<: "0*+, "0**, *0F,
(3) Management – Priority Control
(3)
- Process 0 : 256KB payload, 100 times per second
- Process 1 : 4MB payload, best effort use.
- Same priority during second 1 ~ 38.
- Raise process 0 priority at second 38.
FPGA accelerator as Services online on SuperVessel Cloud
11
SuperVessel Cloud Infrastructure
SuperVessel Cloud Service SuperVessel Big Data and HPC Service Super Class Service OpenPOWER Enablement Service Super Project Team Service Super Marketplace
1.VM and container service 2.Storage service 3.Ietwork service
4.Accelerator as service
5.Image service 1.Big Data: MapReduce (Symphony), SPARK 2.Performance tuning service 1.X-to-P migration 2.AutoPort Tool 3.OpenPOWER new system test service 1.On-line video courses 2.Teacher course management 3.User contribution management 1.Project management service 2.DevOps automation
Storage IBM POWER servers OpenPOWER server FPGA/GPU Docker (Online) (Online) (Preparing) (Preparing)
You could try it here in two week: www.ptopenlab.com
Thanks!
12